@ranger-testing/ranger-cli 2.4.3 → 2.4.4

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 (71) 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/claudeOverrideSettings.js +1 -0
  38. package/build/commands/utils/claudePlugin.js +1 -1
  39. package/build/commands/utils/crypto.js +1 -1
  40. package/build/commands/utils/desirePathLog.js +1 -1
  41. package/build/commands/utils/deviceAuth.js +1 -1
  42. package/build/commands/utils/environment.js +1 -1
  43. package/build/commands/utils/featureApi.js +1 -1
  44. package/build/commands/utils/featureReportGenerator.js +1 -1
  45. package/build/commands/utils/fixWebmDuration.js +1 -1
  46. package/build/commands/utils/git.js +1 -1
  47. package/build/commands/utils/keychain.js +1 -1
  48. package/build/commands/utils/localAgentInstallationsApi.js +1 -1
  49. package/build/commands/utils/mcpImageBase64.js +1 -1
  50. package/build/commands/utils/model.js +1 -1
  51. package/build/commands/utils/opencodeConfig.js +1 -1
  52. package/build/commands/utils/playwrightCli.js +1 -1
  53. package/build/commands/utils/profileMessages.js +1 -1
  54. package/build/commands/utils/profileSetupBanner.js +1 -1
  55. package/build/commands/utils/rangerConfig.js +1 -1
  56. package/build/commands/utils/rangerRoot.js +1 -1
  57. package/build/commands/utils/reportGenerator.js +1 -1
  58. package/build/commands/utils/retry.js +1 -1
  59. package/build/commands/utils/sessionCache.js +1 -1
  60. package/build/commands/utils/settings.js +1 -1
  61. package/build/commands/utils/skillContent.js +1 -1
  62. package/build/commands/utils/skills.js +1 -1
  63. package/build/commands/utils/stitchWebmFiles.js +1 -1
  64. package/build/commands/utils/telemetry.js +1 -1
  65. package/build/commands/utils/traceSnapshotMapper.js +1 -1
  66. package/build/commands/utils/userApi.js +1 -1
  67. package/build/commands/utils/version.js +1 -1
  68. package/build/commands/verifyFeature.js +1 -1
  69. package/build/commands/verifyFeatureCli.js +1 -1
  70. package/build/commands/verifyInBrowser.js +1 -1
  71. package/package.json +1 -1
@@ -1 +1 @@
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
+ function _0x5d8d(_0x354004,_0xcf1375){_0x354004=_0x354004-0x9b;const _0xcc2ce1=_0xcc2c();let _0x5d8db6=_0xcc2ce1[_0x354004];return _0x5d8db6;}const _0x9b7a72=_0x5d8d;(function(_0x3b5dec,_0x5d177d){const _0x49b92b=_0x5d8d,_0x3cccc5=_0x3b5dec();while(!![]){try{const _0x4a9218=-parseInt(_0x49b92b(0xaf))/0x1*(parseInt(_0x49b92b(0xb0))/0x2)+-parseInt(_0x49b92b(0xad))/0x3+-parseInt(_0x49b92b(0x9b))/0x4+-parseInt(_0x49b92b(0xa3))/0x5*(parseInt(_0x49b92b(0xac))/0x6)+parseInt(_0x49b92b(0xa9))/0x7*(parseInt(_0x49b92b(0x9f))/0x8)+-parseInt(_0x49b92b(0xa1))/0x9+-parseInt(_0x49b92b(0xa8))/0xa*(-parseInt(_0x49b92b(0xae))/0xb);if(_0x4a9218===_0x5d177d)break;else _0x3cccc5['push'](_0x3cccc5['shift']());}catch(_0x53ec96){_0x3cccc5['push'](_0x3cccc5['shift']());}}}(_0xcc2c,0xa0710));import{existsSync}from'fs';import{loadSettings,saveSettings,getNestedValue,setNestedValue,deleteNestedValue,formatSettings,getSettingsPath,getEnvDir}from'./utils/settings.js';const BOOLEAN_KEYS=[_0x9b7a72(0xa2),_0x9b7a72(0x9c)];function parseValue(_0x2e9f92,_0xc02216){const _0x3c4e98=_0x9b7a72,_0xb0c6a5={'LYpPt':'true','rzwiS':'false'};if(BOOLEAN_KEYS[_0x3c4e98(0xb3)](_0x2e9f92)){if(_0xc02216===_0xb0c6a5[_0x3c4e98(0x9e)])return!![];if(_0xc02216===_0xb0c6a5[_0x3c4e98(0xb1)])return![];throw new Error('Invalid\x20value\x20for\x20'+_0x2e9f92+_0x3c4e98(0x9d));}return _0xc02216;}export async function configSet(_0x5a9217,_0x20ac24,_0x22848e){const _0x35c1be=_0x9b7a72,_0x5a142f={'ZkGtT':function(_0x5bc1ce,_0x4769cd){return _0x5bc1ce(_0x4769cd);},'jjAHu':function(_0x5809d4,_0x182a7d){return _0x5809d4(_0x182a7d);},'NdRQv':function(_0x4b0573,_0x49b513,_0x447441){return _0x4b0573(_0x49b513,_0x447441);},'tyPRo':function(_0x8d6206,_0x5b2d0a,_0x2972d3){return _0x8d6206(_0x5b2d0a,_0x2972d3);}},_0x2d7ec7=_0x5a142f['ZkGtT'](getEnvDir,_0x5a9217);if(!_0x5a142f['ZkGtT'](existsSync,_0x2d7ec7))throw new Error('Profile\x20\x22'+_0x5a9217+'\x22\x20does\x20not\x20exist.\x20Run:\x20ranger\x20profile\x20add\x20'+_0x5a9217);const _0x115b4c=await _0x5a142f['jjAHu'](loadSettings,_0x5a9217),_0x2c6a15=_0x5a142f['NdRQv'](parseValue,_0x20ac24,_0x22848e);setNestedValue(_0x115b4c,_0x20ac24,_0x2c6a15),await _0x5a142f[_0x35c1be(0xb4)](saveSettings,_0x5a9217,_0x115b4c),console['log']('Set\x20'+_0x20ac24+'\x20=\x20'+_0x2c6a15);}export async function configGet(_0x4a4274,_0xa32fcb){const _0x2192d9=_0x9b7a72,_0xf59f53={'tdXVQ':function(_0x56ecbb,_0x2d95fe){return _0x56ecbb(_0x2d95fe);},'hdSkc':function(_0x3d2d8e,_0x47f91a){return _0x3d2d8e(_0x47f91a);},'qAAaO':function(_0x5cc2c7,_0x35edd0,_0x5b7c2c){return _0x5cc2c7(_0x35edd0,_0x5b7c2c);},'jPxWP':function(_0x33a6a8,_0x4a2ef6){return _0x33a6a8===_0x4a2ef6;}},_0x3d33b0=_0xf59f53['tdXVQ'](getEnvDir,_0x4a4274);if(!_0xf59f53[_0x2192d9(0xa6)](existsSync,_0x3d33b0))throw new Error('Profile\x20\x22'+_0x4a4274+_0x2192d9(0xb2));const _0xce970c=await loadSettings(_0x4a4274),_0xf44bc4=_0xf59f53['qAAaO'](getNestedValue,_0xce970c,_0xa32fcb);if(_0xf59f53['jPxWP'](_0xf44bc4,undefined))console[_0x2192d9(0xa5)](_0x2192d9(0xb5));else typeof _0xf44bc4===_0x2192d9(0xa7)?console['log'](JSON[_0x2192d9(0xa0)](_0xf44bc4,null,0x2)):console[_0x2192d9(0xa5)](_0xf44bc4);}export async function configList(_0x2e09dd){const _0x8f9788=_0x9b7a72,_0x56d4b8={'YRFRL':function(_0x34d426,_0x29b733){return _0x34d426(_0x29b733);}},_0x45f754=_0x56d4b8[_0x8f9788(0xab)](getSettingsPath,_0x2e09dd);if(!_0x56d4b8['YRFRL'](existsSync,_0x45f754)){const _0x5b090c=getEnvDir(_0x2e09dd);if(!existsSync(_0x5b090c))throw new Error('Profile\x20\x22'+_0x2e09dd+'\x22\x20does\x20not\x20exist.');console[_0x8f9788(0xa5)]('No\x20configuration\x20set\x20for\x20\x22'+_0x2e09dd+'\x22');return;}const _0x29fa6a=await loadSettings(_0x2e09dd),_0x3aef07=_0x56d4b8['YRFRL'](formatSettings,_0x29fa6a);!_0x3aef07?console['log']('No\x20configuration\x20set\x20for\x20\x22'+_0x2e09dd+'\x22'):console['log'](_0x3aef07);}export async function configUnset(_0x15e1e8,_0x3c58c0){const _0x2019c0=_0x9b7a72,_0x1f314c={'oDohe':function(_0x5b1e28,_0x5aa75c){return _0x5b1e28(_0x5aa75c);}},_0x4eb523=_0x1f314c['oDohe'](getEnvDir,_0x15e1e8);if(!_0x1f314c[_0x2019c0(0xa4)](existsSync,_0x4eb523))throw new Error(_0x2019c0(0xaa)+_0x15e1e8+_0x2019c0(0xb2));const _0x48a98f=await loadSettings(_0x15e1e8),_0x50810f=deleteNestedValue(_0x48a98f,_0x3c58c0);_0x50810f?(await saveSettings(_0x15e1e8,_0x48a98f),console[_0x2019c0(0xa5)]('Removed\x20'+_0x3c58c0)):console['log']('Key\x20\x22'+_0x3c58c0+'\x22\x20not\x20found');}function _0xcc2c(){const _0x2c10e2=['oDohe','log','hdSkc','object','10KrqXUd','36155snUWNj','Profile\x20\x22','YRFRL','18izoMkl','345324ZzsuWj','32703979FjmoHc','23597XMFBtF','2dGPNFi','rzwiS','\x22\x20does\x20not\x20exist.','includes','tyPRo','(not\x20set)','2543692gZSgEG','allowInsecureLocalhost',':\x20expected\x20\x22true\x22\x20or\x20\x22false\x22','LYpPt','24GOfClo','stringify','5089212ZtBIaJ','headless','1652200jVHVcS'];_0xcc2c=function(){return _0x2c10e2;};return _0xcc2c();}
@@ -1 +1 @@
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
+ const _0x540b51=_0x4bd7;(function(_0x170a4d,_0x7a8747){const _0xba3fe3=_0x4bd7,_0x1abbdf=_0x170a4d();while(!![]){try{const _0x433ee3=parseInt(_0xba3fe3(0x175))/0x1+parseInt(_0xba3fe3(0x17c))/0x2*(parseInt(_0xba3fe3(0x16e))/0x3)+-parseInt(_0xba3fe3(0x16c))/0x4+parseInt(_0xba3fe3(0x184))/0x5*(-parseInt(_0xba3fe3(0x17b))/0x6)+parseInt(_0xba3fe3(0x178))/0x7+parseInt(_0xba3fe3(0x16a))/0x8*(parseInt(_0xba3fe3(0x182))/0x9)+-parseInt(_0xba3fe3(0x181))/0xa*(parseInt(_0xba3fe3(0x186))/0xb);if(_0x433ee3===_0x7a8747)break;else _0x1abbdf['push'](_0x1abbdf['shift']());}catch(_0x180776){_0x1abbdf['push'](_0x1abbdf['shift']());}}}(_0x5ae6,0x315d6));import{readdir,stat}from'fs/promises';import{join}from'path';import{existsSync}from'fs';import{getRangerDir}from'./utils/rangerRoot.js';import{loadSettings}from'./utils/settings.js';function _0x5ae6(){const _0x3c477e=['startsWith','length','\x0aNo\x20profiles\x20found.','includes','sessions','legacy','390294UgWQjk','vIyNi','Run:\x20ranger\x20profile\x20add\x20<profile-name>','1966146ZlfBNU','reports','log','978882UkCoMR','2RsPkVP','push','Qlgtx','environmentDetails','bKgaM','10bKGqTd','2819349GyAgNA','gAuSE','10vFRbIi','\x20\x20\x20\x20\x20\x20Details:\x20','3930146gytEcW','local','rVyMA','8DwRyDV','baseUrl','797324qeGvdl','krHqb','302028cybwGP'];_0x5ae6=function(){return _0x3c477e;};return _0x5ae6();}import{readActiveProfileName}from'./utils/activeProfile.js';function _0x4bd7(_0x4a196f,_0x18ec37){_0x4a196f=_0x4a196f-0x168;const _0x5ae689=_0x5ae6();let _0x4bd713=_0x5ae689[_0x4a196f];return _0x4bd713;}const NON_ENV_DIRS=[_0x540b51(0x173),'bug-bashes',_0x540b51(0x179),_0x540b51(0x168),'ci'];export async function getEnvNames(){const _0x38101a=_0x540b51,_0x260ac6={'bKgaM':function(_0x3f94c8){return _0x3f94c8();},'vIyNi':function(_0x2fcc20,_0x53e81d){return _0x2fcc20(_0x53e81d);},'QrWZF':'local','gAuSE':function(_0x549060,_0x5557a2){return _0x549060(_0x5557a2);},'Qlgtx':function(_0x33c5c4,_0x5ff643,_0x2c7720){return _0x33c5c4(_0x5ff643,_0x2c7720);},'rVyMA':function(_0x526652,_0x543fa6,_0x4a34fc){return _0x526652(_0x543fa6,_0x4a34fc);},'krHqb':'.txt','qmtOA':function(_0x339b0f,_0x134e23){return _0x339b0f(_0x134e23);}},_0x5f3848=_0x260ac6[_0x38101a(0x180)](getRangerDir);if(!_0x260ac6[_0x38101a(0x176)](existsSync,_0x5f3848))return{'envNames':[],'activeEnv':null,'envTypes':{}};const _0x50a326=await readActiveProfileName(),_0x55f7ef=[],_0x101c8c={},_0x370738=join(_0x5f3848,_0x260ac6['QrWZF']);if(_0x260ac6[_0x38101a(0x183)](existsSync,_0x370738)){const _0x2c1e99=await readdir(_0x370738);for(const _0x3e8889 of _0x2c1e99){const _0x2481f4=_0x260ac6[_0x38101a(0x17e)](join,_0x370738,_0x3e8889),_0x54221e=await stat(_0x2481f4);_0x54221e['isDirectory']()&&(_0x55f7ef['push'](_0x3e8889),_0x101c8c[_0x3e8889]=_0x260ac6['QrWZF']);}}const _0xf923d2=_0x260ac6[_0x38101a(0x17e)](join,_0x5f3848,'ci');if(existsSync(_0xf923d2)){const _0x4cb1fa=await readdir(_0xf923d2);for(const _0xc0a429 of _0x4cb1fa){const _0x344020=_0x260ac6[_0x38101a(0x169)](join,_0xf923d2,_0xc0a429),_0x80890d=await stat(_0x344020);_0x80890d['isDirectory']()&&(_0x55f7ef['push'](_0xc0a429),_0x101c8c[_0xc0a429]='ci');}}const _0x38c2ff=await readdir(_0x5f3848);for(const _0x14a18d of _0x38c2ff){if(NON_ENV_DIRS['includes'](_0x14a18d))continue;if(_0x14a18d[_0x38101a(0x16f)]('.'))continue;if(_0x14a18d['endsWith'](_0x260ac6[_0x38101a(0x16d)]))continue;const _0x1baf8d=join(_0x5f3848,_0x14a18d),_0x7436fe=await _0x260ac6['vIyNi'](stat,_0x1baf8d);_0x7436fe['isDirectory']()&&_0x260ac6['qmtOA'](existsSync,join(_0x1baf8d,'settings.json'))&&(!_0x55f7ef[_0x38101a(0x172)](_0x14a18d)&&(_0x55f7ef[_0x38101a(0x17d)](_0x14a18d),_0x101c8c[_0x14a18d]=_0x38101a(0x174)));}return{'envNames':_0x55f7ef,'activeEnv':_0x50a326,'envTypes':_0x101c8c};}export async function envList(){const _0x52cca0=_0x540b51,_0x2edcf8={'SNoWk':'\x0aProfiles:','fCZjg':'local','EzrEh':function(_0x295853,_0x2ecd94){return _0x295853(_0x2ecd94);},'IAmAJ':function(_0x447518,_0x390011){return _0x447518===_0x390011;}},{envNames:_0x1be303,activeEnv:_0x82f7c5,envTypes:_0x303713}=await getEnvNames();if(_0x1be303[_0x52cca0(0x170)]===0x0){console[_0x52cca0(0x17a)](_0x52cca0(0x171)),console[_0x52cca0(0x17a)](_0x52cca0(0x177));return;}console[_0x52cca0(0x17a)](_0x2edcf8['SNoWk']);for(const _0x493466 of _0x1be303['sort']()){const _0x1b955c=_0x493466===_0x82f7c5,_0xbb9ba6=_0x303713[_0x493466]||_0x2edcf8['fCZjg'],_0x46d701=await _0x2edcf8['EzrEh'](loadSettings,_0x493466),_0x42afc6=_0x2edcf8['IAmAJ'](_0xbb9ba6,'legacy')?'':'\x20['+_0xbb9ba6+']';console['log']('\x20\x20'+(_0x1b955c?'*\x20':'\x20\x20')+_0x493466+_0x42afc6),_0x46d701[_0x52cca0(0x16b)]&&console['log']('\x20\x20\x20\x20\x20\x20URL:\x20'+_0x46d701[_0x52cca0(0x16b)]),_0x46d701[_0x52cca0(0x17f)]&&console[_0x52cca0(0x17a)](_0x52cca0(0x185)+_0x46d701[_0x52cca0(0x17f)]);}_0x82f7c5&&console['log']('\x0a*\x20=\x20active\x20profile');}
@@ -1 +1 @@
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
+ const _0x21c156=_0x3ce5;(function(_0x2eb9e2,_0x446790){const _0x5943af=_0x3ce5,_0x4bd7ad=_0x2eb9e2();while(!![]){try{const _0x2e18c5=parseInt(_0x5943af(0x219))/0x1+parseInt(_0x5943af(0x1d3))/0x2+parseInt(_0x5943af(0x209))/0x3*(parseInt(_0x5943af(0x160))/0x4)+parseInt(_0x5943af(0x15a))/0x5+parseInt(_0x5943af(0x1ca))/0x6*(-parseInt(_0x5943af(0x22f))/0x7)+-parseInt(_0x5943af(0x216))/0x8+-parseInt(_0x5943af(0x1f8))/0x9*(parseInt(_0x5943af(0x20b))/0xa);if(_0x2e18c5===_0x446790)break;else _0x4bd7ad['push'](_0x4bd7ad['shift']());}catch(_0x4335e8){_0x4bd7ad['push'](_0x4bd7ad['shift']());}}}(_0x6e08,0x4fbd3));import{readFile,writeFile,mkdir}from'fs/promises';import{join}from'path';import{existsSync}from'fs';import{execSync}from'child_process';import _0x384464 from'inquirer';import{createFeature,listFeatures,getFeature,updateFeature,getFeatureReport,getFeatureReportMarkdown,listFeatureSessions,startSession,concludeSession,createChecklistItem,getActionItems,getItemFeedback,softDeleteFeature,restoreFeature,updateChecklistItem}from'./utils/featureApi.js';import{getBrowserSessionSteps}from'./utils/browserSessionsApi.js';import{getApiBaseUrl}from'./utils/environment.js';import{getRangerDir}from'./utils/rangerRoot.js';import{registerSession}from'./utils/sessionCache.js';import{getEnvNames}from'./env.js';import{formatProfileRequiredMessage}from'./utils/profileMessages.js';const ACTIVE_FEATURE_FILE='active-feature.txt',bold=_0x4c36a6=>_0x21c156(0x202)+_0x4c36a6+_0x21c156(0x213);function getGitRepoUrl(){const _0x1547ff=_0x21c156,_0x27fb04={'zUWyS':'github.com/'};try{const _0xd2caf1=execSync('git\x20remote\x20get-url\x20origin',{'encoding':_0x1547ff(0x1c8),'stdio':[_0x1547ff(0x1bf),_0x1547ff(0x1bf),_0x1547ff(0x1bf)]})['trim']();return _0xd2caf1['replace'](/\.git$/,'')['replace'](/^git@github\.com:/,_0x27fb04['zUWyS'])[_0x1547ff(0x1ce)](/^https?:\/\//,'');}catch{return undefined;}}function getGitBranch(){const _0x583714={'lOqFN':'git\x20rev-parse\x20--abbrev-ref\x20HEAD'};try{return execSync(_0x583714['lOqFN'],{'encoding':'utf-8','stdio':['pipe','pipe','pipe']})['trim']();}catch{return undefined;}}export async function getActiveFeatureId(){const _0x2a0c26=_0x21c156,_0x3dde56={'LbStA':function(_0x3a0607){return _0x3a0607();}},_0x17b26d=join(_0x3dde56[_0x2a0c26(0x195)](getRangerDir),ACTIVE_FEATURE_FILE);if(!existsSync(_0x17b26d))return null;try{const _0x1227a5=await readFile(_0x17b26d,_0x2a0c26(0x1c8));return _0x1227a5['trim']()||null;}catch{return null;}}function _0x6e08(){const _0x210fba=['iuRfD','submittedAt','BVZnh','filter','error','verificationInProgressItems','bipeS','jfgid','name','\x20\x20\x20▶️\x20Started\x20session\x20','completed','Next\x20page:\x20ranger\x20list\x20--offset\x20','jlkIO','iteration','currentSessionId','all','/artifacts/','QLAOo','isKeyStep','\x0aNo\x20feature\x20reviews\x20found.','ZLbdc','MCpUc','push','LbStA','closed','point','\x20concluded.','gitBranch','map','\x0a✅\x20Report\x20generated:\x20','OqZvU','bDEyD','OKLQA','woRir','UXKCz','Lazvv','jZnDi','\x20/\x20','pYmsL','WnDCN','\x0aAvailable\x20scenarios:','\x20\x20\x20ID:\x20','incompleteItems','isInteger','\x20\x20\x20\x20\x20\x20Cancelled:\x20','cHqBh','items','latestReview','join','prompt','\x20\x20\x20Updated\x20branch\x20to:\x20','HXukM','Current\x20session\x20not\x20found.','\x20unaddressed\x20comment(s)','spatial','BUzYi','pjOBP','Scenario\x20','\x0a❌\x20All\x20scenarios\x20were\x20excluded.','phcaJ','OMaiv','assetUrl','\x0a❌\x20Invalid\x20scenario\x20number(s):\x20',':\x20\x22','NGniQ','pipe','excludeScenarios','\x20verified','sessionId','output','OSLFu','currentBranch','tyxmG','stdout','utf-8','get','121338uqfGZp','No\x20sessions\x20found.','\x20scenarios.','wZJuh','replace','tGZMd','verifiedItems','kyGjf','Not\x20in\x20a\x20git\x20repository.','1281072wOLihw','\x0a❌\x20Cannot\x20edit\x20scenario:\x20feature\x20review\x20has\x20an\x20active\x20review.','TNCTF','totalCount','browserSessionId','\x20>\x20','\x20\x20\x20Run\x20`ranger\x20get-review`\x20to\x20see\x20what\x20needs\x20to\x20be\x20fixed.','Yynmc','\x20[has\x20reviewer\x20feedback]','LZrDb','\x20\x20\x20Branch:\x20','\x20\x20\x20\x20\x20\x20Approved','assets','exBRU','createdAt','YFKmR','SZGMA','dashboardUrl','\x20\x20\x20The\x20feature\x20review\x20is\x20now\x20ready\x20for\x20human\x20review\x20on\x20the\x20Ranger\x20dashboard.','includeDeleted','exit','fbqkB','Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','jxjDp','\x20--include-deleted','completedAt','limit','Please\x20specify\x20the\x20feature\x20review\x20ID:\x20ranger\x20resume\x20<id>','CLAUDE_SESSION_ID','screenshotUrls','stats','log','cozSa','yOOEn','terminalReason','EtgdZ','length','4171113VeDYmL','rsjoR','checklistItems','\x0a✅\x20Scenario\x20added','MCNoX','toLocaleString','\x0a❌\x20No\x20scenarios\x20found\x20to\x20include.','\x0a❌\x20No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.','ready','toLocaleDateString','\x1b[1m','XRDMZ','stringify','gitRepoUrl','CqRdH','assetType','QKmMi','2949ksRrUP','BNxaO','10lLuPqv','\x0aNon-interactive\x20mode\x20detected.\x20Multiple\x20feature\x20reviews\x20found:','CagPG','rpACs','rdnSb','TPJBq','split','\x20(v','\x1b[0m','verification_in_progress','description','3945336gvafaZ','BZalG','\x0a⚠️\x20\x20','330182VevRce','incomplete','Cannot\x20add\x20scenario:\x20feature\x20review\x20has\x20an\x20active\x20review.\x20Please\x20finish\x20your\x20review\x20first:\x20','position','qWPfZ','domRef','any','/api/v1/mcp/browser-sessions/','type','\x0a✅\x20Feature\x20review\x20created:\x20','status','RVjzE','location','timing','version','\x20\x20\x20Completed:\x20','linkedSession','wXRxk','coordinates','canonicalFlow','authorName','warn','77EIeUin','repeat','offset','xFaHw','\x0a✅\x20Scenario\x20updated','pop','style','\x20\x20\x20Created:\x20','RLzmt','\x0a✅\x20Resumed\x20feature\x20review:\x20','stdin','2124370lFGhcT','bQqjx','No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.','unaddressedComments','FjHyQ','canceledReason','448fehRZd','sHVdp','numeric','slice','\x20\x20\x20\x20\x20📍\x20Annotation:\x20','\x0a\x20\x20\x20Scenarios:','No\x20active\x20session\x20for\x20this\x20feature\x20review.','toFixed','agentResponse','\x20feature\x20review(s)\x20found','No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','uwSxS','scenarios','incompleteReason','.\x20Feature\x20review\x20has\x20','\x0a❌\x20No\x20scenario\x20number\x20provided.\x20Use\x20--scenario\x20<number>.','\x0a❌\x20Invalid\x20scenario\x20index:\x20','blockedReason','rlsuF','mwkgx','Showing\x20','find','env','verified','IFJMC','blocked','YuJVk','approved','scenario','\x20\x20\x20\x20\x20📋\x20Selector:\x20'];_0x6e08=function(){return _0x210fba;};return _0x6e08();}async function setActiveFeatureId(_0x298cd1){const _0x541ddb=_0x21c156,_0x4f0174={'GoBkR':function(_0x58a3c8){return _0x58a3c8();},'rpACs':function(_0x3e8e1f,_0x4e4a0d,_0x1e64f){return _0x3e8e1f(_0x4e4a0d,_0x1e64f);},'rqcyw':function(_0x5c794c,_0x1b6541,_0x242654,_0x2b0992){return _0x5c794c(_0x1b6541,_0x242654,_0x2b0992);},'fbqkB':_0x541ddb(0x1c8)},_0x2cd216=_0x4f0174['GoBkR'](getRangerDir),_0x52ced9=_0x4f0174['rpACs'](join,_0x2cd216,ACTIVE_FEATURE_FILE);!existsSync(_0x2cd216)&&await _0x4f0174[_0x541ddb(0x20e)](mkdir,_0x2cd216,{'recursive':!![]}),await _0x4f0174['rqcyw'](writeFile,_0x52ced9,_0x298cd1,_0x4f0174[_0x541ddb(0x1e8)]);}function getProgressDisplay(_0x1939a5){const _0x67f7ff=_0x21c156,_0x18a472={'RVjzE':function(_0x627fb2,_0x15db5a){return _0x627fb2+_0x15db5a;},'MpoET':function(_0x5a4139,_0x282a36){return _0x5a4139/_0x282a36;},'ctXaK':function(_0x4f5dfa,_0x12c8f2){return _0x4f5dfa+_0x12c8f2;},'TPJBq':function(_0x15f638,_0x2f4709){return _0x15f638>_0x2f4709;}},_0x53831b=_0x1939a5[_0x67f7ff(0x1d0)]||0x0,_0x26cf67=_0x1939a5[_0x67f7ff(0x183)]||0x0,_0x242560=_0x1939a5['blockedItems']||0x0,_0x3b0f11=_0x1939a5[_0x67f7ff(0x1a8)]||0x0,_0x54aada=_0x1939a5['pendingItems']||0x0,_0x480208=_0x18a472['RVjzE'](_0x18a472[_0x67f7ff(0x224)](_0x18a472['RVjzE'](_0x53831b+_0x26cf67,_0x242560),_0x3b0f11),_0x54aada);if(_0x480208===0x0)return'-';const _0xc791dc=0xa,_0x540ffb=Math['round'](_0x18a472['MpoET'](_0x53831b,_0x480208)*_0xc791dc),_0x5100b7=_0x18a472['ctXaK']('█'['repeat'](_0x540ffb),'░'[_0x67f7ff(0x230)](_0xc791dc-_0x540ffb)),_0x28336f=[];if(_0x242560>0x0)_0x28336f[_0x67f7ff(0x194)](_0x242560+'\x20blocked');if(_0x3b0f11>0x0)_0x28336f['push'](_0x3b0f11+'\x20incomplete');if(_0x26cf67>0x0)_0x28336f[_0x67f7ff(0x194)](_0x26cf67+'\x20in\x20progress');const _0x2cf969=_0x18a472[_0x67f7ff(0x210)](_0x28336f['length'],0x0)?'\x20('+_0x28336f['join'](',\x20')+')':'';return _0x5100b7+'\x20'+_0x53831b+'/'+_0x480208+_0x67f7ff(0x1c1)+_0x2cf969;}function getCurrentSessionItems(_0x10a9d3,_0x42c841){const _0x58291f=_0x21c156;if(!_0x10a9d3[_0x58291f(0x18c)])return _0x42c841[_0x58291f(0x181)](_0x41c256=>!_0x41c256[_0x58291f(0x1c2)]);return _0x42c841['filter'](_0xe5ddda=>_0xe5ddda['sessionId']===_0x10a9d3['currentSessionId']||!_0xe5ddda['sessionId']);}function displayFeature(_0x4231a9,_0x558467){const _0x4ac2e7=_0x21c156,_0x1e1a1b={'QLAOo':function(_0x430a0d,_0x6ddb39){return _0x430a0d<_0x6ddb39;},'sHVdp':function(_0x505bae,_0x596443){return _0x505bae===_0x596443;},'BZalG':_0x4ac2e7(0x196),'qfYgX':function(_0x235ba3,_0x4c8413){return _0x235ba3===_0x4c8413;},'BUzYi':'incomplete','OqZvU':function(_0x1598d4,_0x19834b){return _0x1598d4>_0x19834b;},'RLzmt':function(_0x2089ce,_0x236a95){return _0x2089ce!==_0x236a95;},'cozSa':function(_0x4b2738,_0x2f3c3e){return _0x4b2738!==_0x2f3c3e;},'bpszf':_0x4ac2e7(0x1db),'CjDTK':function(_0x550ca5,_0xf43bcd){return _0x550ca5===_0xf43bcd;},'CkKyi':function(_0x409e4f,_0x318083){return _0x409e4f===_0x318083;},'hfQej':function(_0x5e17f7,_0x4ef262){return _0x5e17f7===_0x4ef262;},'lKkar':_0x4ac2e7(0x17b)};console[_0x4ac2e7(0x1f2)]('\x0a'+_0x4231a9['name']+'\x20('+_0x4231a9['dashboardUrl']+')');_0x4231a9['stats']&&console[_0x4ac2e7(0x1f2)]('\x20\x20\x20Progress:\x20'+getProgressDisplay(_0x4231a9['stats']));_0x4231a9[_0x4ac2e7(0x215)]&&console['log']('\x20\x20\x20Description:\x20'+_0x4231a9['description']);_0x4231a9[_0x4ac2e7(0x205)]&&console['log']('\x20\x20\x20Repository:\x20'+_0x4231a9[_0x4ac2e7(0x205)]);_0x4231a9['gitBranch']&&console[_0x4ac2e7(0x1f2)](_0x4ac2e7(0x1dd)+_0x4231a9[_0x4ac2e7(0x199)]);console[_0x4ac2e7(0x1f2)](_0x4ac2e7(0x236)+new Date(_0x4231a9['createdAt'])[_0x4ac2e7(0x1fd)]());_0x4231a9['completedAt']&&console[_0x4ac2e7(0x1f2)](_0x4ac2e7(0x228)+new Date(_0x4231a9[_0x4ac2e7(0x1ec)])['toLocaleString']());if(_0x558467&&_0x558467['length']>0x0){console[_0x4ac2e7(0x1f2)](_0x4ac2e7(0x165));for(let _0x50aef8=0x0;_0x1e1a1b[_0x4ac2e7(0x18f)](_0x50aef8,_0x558467[_0x4ac2e7(0x1f7)]);_0x50aef8++){const _0xdd81d6=_0x558467[_0x50aef8];let _0x33e621;if(_0x1e1a1b[_0x4ac2e7(0x161)](_0xdd81d6[_0x4ac2e7(0x223)],_0x1e1a1b[_0x4ac2e7(0x217)])&&_0xdd81d6['terminalReason']===_0x4ac2e7(0x17b))_0x33e621='✅';else{if(_0x1e1a1b['qfYgX'](_0xdd81d6[_0x4ac2e7(0x223)],_0x4ac2e7(0x177)))_0x33e621='🟢';else{if(_0xdd81d6[_0x4ac2e7(0x223)]===_0x1e1a1b[_0x4ac2e7(0x1b5)])_0x33e621='🟠';else{if(_0xdd81d6['status']===_0x4ac2e7(0x179))_0x33e621='🛑';else{if(_0xdd81d6[_0x4ac2e7(0x223)]==='closed')_0x33e621='⛔';else _0xdd81d6['status']==='verification_in_progress'?_0x33e621='⏳':_0x33e621='⬜';}}}}const _0x21c7d9=_0x1e1a1b[_0x4ac2e7(0x19c)](_0xdd81d6[_0x4ac2e7(0x227)],0x1)?'\x20(v'+_0xdd81d6['version']+')':'',_0x472d03=_0xdd81d6['version']>0x1&&_0xdd81d6['parentItemId']&&_0x1e1a1b[_0x4ac2e7(0x237)](_0xdd81d6['status'],_0x1e1a1b[_0x4ac2e7(0x217)])&&_0x1e1a1b[_0x4ac2e7(0x1f3)](_0xdd81d6['status'],'verified')?_0x1e1a1b['bpszf']:'';console['log']('\x20\x20\x20'+(_0x50aef8+0x1)+'.\x20'+_0x33e621+'\x20'+_0xdd81d6['description']+_0x21c7d9+_0x472d03);_0x1e1a1b['qfYgX'](_0xdd81d6['status'],_0x4ac2e7(0x179))&&_0xdd81d6['blockedReason']&&console['log']('\x20\x20\x20\x20\x20\x20Blocked:\x20'+_0xdd81d6['blockedReason']);_0x1e1a1b['CjDTK'](_0xdd81d6[_0x4ac2e7(0x223)],_0x4ac2e7(0x21a))&&_0xdd81d6['incompleteReason']&&console['log']('\x20\x20\x20\x20\x20\x20Incomplete:\x20'+_0xdd81d6[_0x4ac2e7(0x16d)]);if(_0x1e1a1b['CkKyi'](_0xdd81d6['status'],_0x1e1a1b['BZalG'])&&_0x1e1a1b['hfQej'](_0xdd81d6[_0x4ac2e7(0x1f5)],_0x1e1a1b['lKkar']))console[_0x4ac2e7(0x1f2)](_0x4ac2e7(0x1de));else _0xdd81d6['status']==='closed'&&_0xdd81d6['canceledReason']&&console[_0x4ac2e7(0x1f2)](_0x4ac2e7(0x1aa)+_0xdd81d6[_0x4ac2e7(0x15f)]);}}}export async function featureCreate(_0x152aa7,_0x4e8671){const _0x599597=_0x21c156,_0x581863={'bipeS':function(_0x5d530e){return _0x5d530e();},'rsUAv':function(_0x4430ce){return _0x4430ce();},'trGkH':function(_0x2c55b0,_0xcf95e0){return _0x2c55b0(_0xcf95e0);},'uXYPy':function(_0x40e086,_0x416468){return _0x40e086(_0x416468);},'HXukM':function(_0x2d2b41,_0x465622,_0x4a35d3){return _0x2d2b41(_0x465622,_0x4a35d3);}},{envNames:_0x56ffe5}=await getEnvNames();_0x56ffe5[_0x599597(0x1f7)]===0x0&&console[_0x599597(0x22e)]('\x0a'+formatProfileRequiredMessage(_0x32d2e7=>bold(_0x32d2e7)));const _0x5f4ce1=_0x4e8671[_0x599597(0x16c)]?_0x4e8671['scenarios'][_0x599597(0x19a)](_0x4f77a9=>_0x4f77a9['trim']()):[],_0x4a7311=_0x581863[_0x599597(0x184)](getGitRepoUrl),_0x196274=_0x581863['rsUAv'](getGitBranch);console[_0x599597(0x1f2)]('\x0aCreating\x20feature\x20review...');const _0x21ef71=await createFeature({'name':_0x152aa7,'description':_0x4e8671['description'],'checklist':_0x5f4ce1,'gitRepoUrl':_0x4a7311,'gitBranch':_0x196274});await _0x581863['trGkH'](setActiveFeatureId,_0x21ef71['id']),await _0x581863['uXYPy'](tryStartCurrentSession,_0x21ef71['id']);const _0x10d580=process[_0x599597(0x176)][_0x599597(0x1ef)];_0x10d580&&_0x581863[_0x599597(0x1b1)](registerSession,_0x10d580,_0x21ef71['id']),console['log'](_0x599597(0x222)+_0x21ef71['id']),displayFeature(_0x21ef71,_0x21ef71[_0x599597(0x1fa)]),console[_0x599597(0x1f2)]('\x0a➡️\x20\x20Set\x20as\x20active\x20feature\x20review');}export async function featureList(_0x3e37fe){const _0xdac523=_0x21c156,_0x350ea6={'EtgdZ':function(_0x26e88d,_0x374393){return _0x26e88d(_0x374393);},'kyGjf':_0xdac523(0x191),'LNtBm':function(_0x28458a,_0x4ac6ab){return _0x28458a>_0x4ac6ab;},'KHqGh':function(_0x210340,_0x1c858d){return _0x210340+_0x1c858d;},'CqRdH':function(_0x2c820c,_0x1bfa58){return _0x2c820c<_0x1bfa58;},'kfiVd':function(_0x45f34c,_0x1d4f3d){return _0x45f34c!==_0x1d4f3d;},'pYmsL':_0xdac523(0x1eb)},_0xddb9c3={'limit':_0x3e37fe['limit']??0xa,'offset':_0x3e37fe[_0xdac523(0x231)]??0x0,'includeDeleted':_0x3e37fe[_0xdac523(0x1e6)]};_0x3e37fe['currentBranch']&&(_0xddb9c3[_0xdac523(0x205)]=getGitRepoUrl(),_0xddb9c3[_0xdac523(0x199)]=getGitBranch());const _0x421071=await _0x350ea6[_0xdac523(0x1f6)](listFeatures,_0xddb9c3);if(_0x421071['items'][_0xdac523(0x1f7)]===0x0){console[_0xdac523(0x1f2)](_0x350ea6[_0xdac523(0x1d1)]);return;}const _0x3b216d=_0x350ea6['LNtBm'](_0x421071[_0xdac523(0x1d6)],_0x421071['items']['length'])?_0xdac523(0x174)+_0x421071[_0xdac523(0x1ac)]['length']+'\x20of\x20'+_0x421071['totalCount']:_0x421071[_0xdac523(0x1d6)]+_0xdac523(0x169);console['log']('\x0a'+_0x3b216d+':\x0a');for(const _0x1f61f9 of _0x421071[_0xdac523(0x1ac)]){const _0x1768d5='5|1|0|2|3|4'[_0xdac523(0x211)]('|');let _0x358976=0x0;while(!![]){switch(_0x1768d5[_0x358976++]){case'0':_0x1f61f9[_0xdac523(0x1f1)]&&console[_0xdac523(0x1f2)]('\x20\x20\x20Progress:\x20'+getProgressDisplay(_0x1f61f9['stats']));continue;case'1':console[_0xdac523(0x1f2)](_0xdac523(0x1a7)+_0x1f61f9['id']);continue;case'2':_0x1f61f9[_0xdac523(0x199)]&&console[_0xdac523(0x1f2)]('\x20\x20\x20Branch:\x20'+_0x1f61f9[_0xdac523(0x199)]);continue;case'3':console[_0xdac523(0x1f2)](_0xdac523(0x236)+new Date(_0x1f61f9[_0xdac523(0x1e1)])[_0xdac523(0x201)]());continue;case'4':console['log']('');continue;case'5':console[_0xdac523(0x1f2)](''+_0x1f61f9[_0xdac523(0x186)]);continue;}break;}}const _0x17e8a2=_0xddb9c3[_0xdac523(0x1ed)]??0xa,_0x3d3c69=_0x350ea6['KHqGh'](_0xddb9c3['offset']??0x0,_0x421071['items'][_0xdac523(0x1f7)]);if(_0x350ea6[_0xdac523(0x206)](_0x3d3c69,_0x421071[_0xdac523(0x1d6)])){const _0x84974e=_0x350ea6['kfiVd'](_0x17e8a2,0xa)?'\x20--limit\x20'+_0x17e8a2:'',_0x5466f5=_0x3e37fe[_0xdac523(0x1c5)]?'\x20--current-branch':'',_0x409e5d=_0x3e37fe[_0xdac523(0x1e6)]?_0x350ea6[_0xdac523(0x1a4)]:'';console[_0xdac523(0x1f2)](_0xdac523(0x189)+_0x3d3c69+_0x84974e+_0x5466f5+_0x409e5d);}}function _0x3ce5(_0x326964,_0x253823){_0x326964=_0x326964-0x15a;const _0x6e0859=_0x6e08();let _0x3ce538=_0x6e0859[_0x326964];return _0x3ce538;}export async function featureShow(_0x317a72){const _0x26c50b=_0x21c156,_0x1bda61=_0x317a72||await getActiveFeatureId();if(!_0x1bda61)throw new Error(_0x26c50b(0x16a));const _0x572b35=await getFeature(_0x1bda61);displayFeature(_0x572b35,_0x572b35[_0x26c50b(0x1fa)]);}export async function featureResume(_0x2c3cbe){const _0x3119b5=_0x21c156,_0x958825={'phcaJ':function(_0x2f3d95,_0x159b46){return _0x2f3d95(_0x159b46);},'cJImO':function(_0x3957f8){return _0x3957f8();},'cHqBh':function(_0x2d936,_0x10c9ce){return _0x2d936!==_0x10c9ce;},'TNCTF':function(_0x42a97d){return _0x42a97d();},'gVEAO':function(_0x4fb9b2,_0x4a88ec){return _0x4fb9b2&&_0x4a88ec;},'rsjoR':_0x3119b5(0x1d2),'IFJMC':function(_0x41fc5b,_0x1e45f3){return _0x41fc5b||_0x1e45f3;},'XRDMZ':_0x3119b5(0x21f),'tGZMd':function(_0x416af6,_0x5208e3){return _0x416af6===_0x5208e3;},'ckSxM':_0x3119b5(0x20c),'lSgrs':function(_0x2951c5,_0x52179d){return _0x2951c5(_0x52179d);},'exBRU':'selected','jlkIO':function(_0x1d80ee,_0x2b940f,_0x3d4732){return _0x1d80ee(_0x2b940f,_0x3d4732);},'OKLQA':function(_0x14b697,_0x15a2d2){return _0x14b697(_0x15a2d2);},'CdqIV':function(_0xa82cce,_0xa14f01){return _0xa82cce(_0xa14f01);},'ZLbdc':function(_0x465105,_0xf5f01d,_0x417153){return _0x465105(_0xf5f01d,_0x417153);},'wZJuh':function(_0x2f939b,_0x1f5692,_0x3b3774){return _0x2f939b(_0x1f5692,_0x3b3774);}};if(_0x2c3cbe){const _0x2f35cb=await _0x958825[_0x3119b5(0x1b9)](getFeature,_0x2c3cbe);await setActiveFeatureId(_0x2f35cb['id']);const _0x835a09=_0x958825['cJImO'](getGitBranch);_0x835a09&&_0x958825[_0x3119b5(0x1ab)](_0x835a09,_0x2f35cb[_0x3119b5(0x199)])&&(await updateFeature(_0x2f35cb['id'],{'gitBranch':_0x835a09}),console['log'](_0x3119b5(0x1b0)+_0x835a09));console['log']('\x0a✅\x20Resumed\x20feature\x20review:\x20'+_0x2f35cb[_0x3119b5(0x186)]+'\x20('+_0x2f35cb['id']+')'),await tryStartCurrentSession(_0x2f35cb['id']);const _0x20a60f=process['env'][_0x3119b5(0x1ef)];_0x20a60f&&registerSession(_0x20a60f,_0x2f35cb['id']);displayFeature(_0x2f35cb,_0x2f35cb[_0x3119b5(0x1fa)]),await printFeedbackNudge(_0x2f35cb['id']);return;}const _0x32c1e6=_0x958825[_0x3119b5(0x1d5)](getGitRepoUrl),_0x3243c4=getGitBranch();if(_0x958825['gVEAO'](!_0x32c1e6,!_0x3243c4))throw new Error(_0x958825[_0x3119b5(0x1f9)]);console[_0x3119b5(0x1f2)]('\x0aSearching\x20for\x20feature\x20reviews\x20matching:\x20'+_0x958825[_0x3119b5(0x178)](_0x32c1e6,_0x958825[_0x3119b5(0x203)])+_0x3119b5(0x1a3)+(_0x3243c4||_0x958825[_0x3119b5(0x203)])+'...');const _0x449690=await listFeatures({'gitRepoUrl':_0x32c1e6,'gitBranch':_0x3243c4}),_0x46cda3=_0x449690['items']['filter'](_0x17b4ff=>!_0x17b4ff['completedAt']);if(_0x958825[_0x3119b5(0x1cf)](_0x46cda3['length'],0x0)){console['log']('\x0aNo\x20matching\x20active\x20feature\x20reviews\x20found.'),console[_0x3119b5(0x1f2)]('Run:\x20ranger\x20create\x20\x22<name>\x22\x20to\x20create\x20a\x20new\x20feature\x20review');return;}let _0x2f3993;if(_0x46cda3[_0x3119b5(0x1f7)]===0x1)_0x2f3993=_0x46cda3[0x0];else{const _0x43056c=process[_0x3119b5(0x239)]['isTTY']&&process[_0x3119b5(0x1c7)]['isTTY'];if(!_0x43056c){console['log'](_0x958825['ckSxM']);for(const _0x2d35f6 of _0x46cda3){console['log']('\x20\x20'+_0x2d35f6[_0x3119b5(0x186)]),console['log']('\x20\x20\x20\x20\x20ID:\x20'+_0x2d35f6['id']),_0x2d35f6['stats']&&console[_0x3119b5(0x1f2)]('\x20\x20\x20\x20\x20Progress:\x20'+_0x958825['lSgrs'](getProgressDisplay,_0x2d35f6['stats'])),_0x2d35f6[_0x3119b5(0x199)]&&console[_0x3119b5(0x1f2)]('\x20\x20\x20\x20\x20Branch:\x20'+_0x2d35f6['gitBranch']);}throw new Error(_0x3119b5(0x1ee));}const {selected:_0x4bcb12}=await _0x384464[_0x3119b5(0x1af)]([{'type':'list','name':_0x958825[_0x3119b5(0x1e0)],'message':'Multiple\x20feature\x20reviews\x20found.\x20Select\x20one:','choices':_0x46cda3[_0x3119b5(0x19a)](_0x5dcbaa=>({'name':_0x5dcbaa['name']+'\x20('+_0x5dcbaa['id']+')','value':_0x5dcbaa['id']}))}]);_0x2f3993=_0x46cda3['find'](_0x4c0043=>_0x4c0043['id']===_0x4bcb12);}await setActiveFeatureId(_0x2f3993['id']);_0x3243c4&&_0x3243c4!==_0x2f3993['gitBranch']&&(await _0x958825[_0x3119b5(0x18a)](updateFeature,_0x2f3993['id'],{'gitBranch':_0x3243c4}),console['log']('\x20\x20\x20Updated\x20branch\x20to:\x20'+_0x3243c4));console[_0x3119b5(0x1f2)](_0x3119b5(0x238)+_0x2f3993['name']+'\x20('+_0x2f3993['id']+')'),await _0x958825['OKLQA'](tryStartCurrentSession,_0x2f3993['id']);const _0x5620bc=await _0x958825['CdqIV'](getFeature,_0x2f3993['id']),_0xa338e1=process['env'][_0x3119b5(0x1ef)];_0xa338e1&&_0x958825[_0x3119b5(0x192)](registerSession,_0xa338e1,_0x5620bc['id']),_0x958825[_0x3119b5(0x1cd)](displayFeature,_0x5620bc,_0x5620bc[_0x3119b5(0x1fa)]),await _0x958825[_0x3119b5(0x19e)](printFeedbackNudge,_0x5620bc['id']);}async function printFeedbackNudge(_0x1584b0){const _0x18c183=_0x21c156,_0x4a4051={'EpBfa':function(_0x55d8dd,_0x1d1bbe){return _0x55d8dd(_0x1d1bbe);},'yOOEn':function(_0x1f729c,_0x392b97){return _0x1f729c>_0x392b97;}};try{const {items:_0x3d2942}=await _0x4a4051['EpBfa'](getActionItems,_0x1584b0);let _0x2fdd76=0x0,_0x1aa4ef=0x0;for(const _0x2d88e5 of _0x3d2942){const _0x3bf8ff=await getItemFeedback(_0x1584b0,_0x2d88e5['id']);_0x4a4051[_0x18c183(0x1f4)](_0x3bf8ff[_0x18c183(0x15d)][_0x18c183(0x1f7)],0x0)&&(_0x2fdd76+=_0x3bf8ff['unaddressedComments'][_0x18c183(0x1f7)],_0x1aa4ef++);}_0x4a4051['yOOEn'](_0x2fdd76,0x0)&&(console['log'](_0x18c183(0x218)+_0x2fdd76+'\x20unaddressed\x20reviewer\x20comment(s)\x20across\x20'+_0x1aa4ef+'\x20scenario(s).'),console['log'](_0x18c183(0x1d9)));}catch{}}async function tryStartCurrentSession(_0x938675){const _0x222c6a=_0x21c156;try{const {sessions:_0x2e155f}=await listFeatureSessions(_0x938675),_0x100461=_0x2e155f[_0x222c6a(0x175)](_0x53a61f=>_0x53a61f[_0x222c6a(0x223)]===_0x222c6a(0x200));_0x100461&&(await startSession(_0x938675,_0x100461['id']),console['log'](_0x222c6a(0x187)+_0x100461['iteration']));}catch{}}export async function featureReport(_0x449e22,_0x321865){const _0x3729ff=_0x21c156,_0x50f01c={'wXRxk':function(_0x1aa994){return _0x1aa994();},'bQqjx':_0x3729ff(0x15c),'KxIyH':'\x0aGenerating\x20report...','UXKCz':function(_0xe208ea,_0x39f564,_0x1876ae,_0x6cfa17){return _0xe208ea(_0x39f564,_0x1876ae,_0x6cfa17);},'jZnDi':function(_0x10e070){return _0x10e070();},'FjHyQ':'reports','XExjK':function(_0x512200,_0x408eb6,_0x516bdb){return _0x512200(_0x408eb6,_0x516bdb);}},_0x1c9be0=_0x449e22||await _0x50f01c[_0x3729ff(0x22a)](getActiveFeatureId);if(!_0x1c9be0)throw new Error(_0x50f01c[_0x3729ff(0x15b)]);console['log'](_0x50f01c['KxIyH']);const _0x1ad94e=await getFeatureReportMarkdown(_0x1c9be0,{'style':_0x321865[_0x3729ff(0x235)]}),_0x47b705=_0x321865[_0x3729ff(0x1c3)]||_0x50f01c[_0x3729ff(0x1a0)](join,_0x50f01c[_0x3729ff(0x1a2)](getRangerDir),_0x50f01c[_0x3729ff(0x15e)],_0x1c9be0+'.md'),_0x5d99b2=_0x50f01c['XExjK'](join,_0x47b705,'..');!existsSync(_0x5d99b2)&&await mkdir(_0x5d99b2,{'recursive':!![]}),await _0x50f01c[_0x3729ff(0x1a0)](writeFile,_0x47b705,_0x1ad94e,'utf-8'),console[_0x3729ff(0x1f2)](_0x3729ff(0x19b)+_0x47b705);}function getScenarioResult(_0x175609){const _0x122a39=_0x21c156,_0x132e58={'qWPfZ':function(_0x409915,_0x5219e9){return _0x409915===_0x5219e9;},'rlsuF':'closed'};if(_0x132e58['qWPfZ'](_0x175609['status'],_0x132e58[_0x122a39(0x172)]))return _0x175609[_0x122a39(0x1f5)]??_0x132e58[_0x122a39(0x172)];if(_0x132e58[_0x122a39(0x21d)](_0x175609['status'],_0x122a39(0x214)))return'in_progress';return _0x175609['status'];}function getScenarioRationale(_0xed8a08,_0x2eb7bc){const _0x1d44e4=_0x21c156;if(_0x2eb7bc)return _0x2eb7bc;if(_0xed8a08['blockedReason'])return _0xed8a08[_0x1d44e4(0x171)];if(_0xed8a08['incompleteReason'])return _0xed8a08[_0x1d44e4(0x16d)];if(_0xed8a08[_0x1d44e4(0x15f)])return _0xed8a08[_0x1d44e4(0x15f)];if(_0xed8a08['notes'])return _0xed8a08['notes'];return null;}export async function featureReportPrDescription(_0x299907,_0x1b8ecb){const _0x39cf75=_0x21c156,_0x2afc0a={'Yynmc':function(_0x4e3fb9){return _0x4e3fb9();},'iuRfD':function(_0x1ad9df,_0x4aa59e){return _0x1ad9df(_0x4aa59e);},'xFaHw':function(_0x28e840,_0xb41efe,_0x39604c){return _0x28e840(_0xb41efe,_0x39604c);},'MCpUc':function(_0x6b5c07,_0x11ec7c){return _0x6b5c07===_0x11ec7c;},'CagPG':_0x39cf75(0x1fe),'UFnqH':_0x39cf75(0x1a6),'SZGMA':function(_0x54fab2,_0xbbfb5d){return _0x54fab2<_0xbbfb5d;},'jfgid':_0x39cf75(0x1b8),'Lazvv':function(_0x5984fc,_0x207dbf,_0x428fca,_0xd8724c){return _0x5984fc(_0x207dbf,_0x428fca,_0xd8724c);}},_0x3280c9=_0x299907||await _0x2afc0a[_0x39cf75(0x1da)](getActiveFeatureId);if(!_0x3280c9)throw new Error(_0x39cf75(0x15c));const _0x50d474=await _0x2afc0a[_0x39cf75(0x17e)](getFeature,_0x3280c9),_0x78b7df=_0x50d474[_0x39cf75(0x1fa)]||[],_0x4b5f45=_0x2afc0a[_0x39cf75(0x232)](getCurrentSessionItems,_0x50d474,_0x78b7df);_0x2afc0a[_0x39cf75(0x193)](_0x4b5f45[_0x39cf75(0x1f7)],0x0)&&(console['error'](_0x2afc0a[_0x39cf75(0x20d)]),process[_0x39cf75(0x1e7)](0x1));const _0x1e1da8=_0x1b8ecb[_0x39cf75(0x1c0)]??[],_0x4c3d9c=_0x1e1da8['filter'](_0x51e3cf=>!Number[_0x39cf75(0x1a9)](_0x51e3cf)||_0x51e3cf<0x1||_0x51e3cf>_0x4b5f45[_0x39cf75(0x1f7)]);if(_0x4c3d9c[_0x39cf75(0x1f7)]>0x0){console[_0x39cf75(0x182)](_0x39cf75(0x1bc)+_0x4c3d9c['join'](',\x20')),console[_0x39cf75(0x1f2)](_0x2afc0a['UFnqH']);for(let _0x21e86f=0x0;_0x2afc0a[_0x39cf75(0x1e3)](_0x21e86f,_0x4b5f45['length']);_0x21e86f++){console[_0x39cf75(0x1f2)]('\x20\x20'+(_0x21e86f+0x1)+'.\x20'+_0x4b5f45[_0x21e86f][_0x39cf75(0x215)]);}process[_0x39cf75(0x1e7)](0x1);}const _0x44ad96=new Set(_0x1e1da8[_0x39cf75(0x19a)](_0x24203e=>_0x24203e-0x1)),_0x56f301=_0x4b5f45[_0x39cf75(0x181)]((_0xd8d6df,_0x29123b)=>!_0x44ad96['has'](_0x29123b));_0x2afc0a[_0x39cf75(0x193)](_0x56f301[_0x39cf75(0x1f7)],0x0)&&(console[_0x39cf75(0x182)](_0x2afc0a[_0x39cf75(0x185)]),process[_0x39cf75(0x1e7)](0x1));if(_0x1b8ecb['json'])await _0x2afc0a[_0x39cf75(0x1a1)](outputJsonReport,_0x3280c9,_0x50d474,_0x56f301);else{const _0x275403=await _0x2afc0a[_0x39cf75(0x232)](getFeatureReportMarkdown,_0x3280c9,{'itemIds':_0x56f301[_0x39cf75(0x19a)](_0x346a65=>_0x346a65['id'])});process['stdout']['write'](_0x275403['trimEnd']()+'\x0a');}}async function outputJsonReport(_0xe32fdb,_0x25536b,_0xb5a564){const _0x19eafb=_0x21c156,_0x13add5={'WnDCN':function(_0xe7b663,_0x584746){return _0xe7b663(_0x584746);},'bDEyD':function(_0x4e0494,_0x14a3ae){return _0x4e0494===_0x14a3ae;},'NlmTi':function(_0x4ec60c,_0x5ea52f,_0x11f7c3){return _0x4ec60c(_0x5ea52f,_0x11f7c3);},'uwSxS':function(_0x3cf230){return _0x3cf230();},'kVUSp':function(_0x1eec13,_0x5c1e6c){return _0x1eec13(_0x5c1e6c);}},_0x2a2fcc=_0x13add5[_0x19eafb(0x16b)](getApiBaseUrl),_0x129814=await _0x13add5['kVUSp'](getFeatureReport,_0xe32fdb),_0x5d0338=new Map(_0x129814['checklistItems'][_0x19eafb(0x19a)](_0x49ea98=>[_0x49ea98['id'],_0x49ea98])),_0xdcb1b1=await Promise[_0x19eafb(0x18d)](_0xb5a564['map'](async _0x23d834=>{const _0x54742e=_0x19eafb,_0x20088e=_0x5d0338[_0x54742e(0x1c9)](_0x23d834['id']),_0x7ec2c4=_0x20088e?.[_0x54742e(0x229)]??null;let _0x445027=[];if(_0x23d834[_0x54742e(0x1d7)])try{const {steps:_0x541bca}=await _0x13add5[_0x54742e(0x1a5)](getBrowserSessionSteps,_0x23d834[_0x54742e(0x1d7)]);_0x541bca[_0x54742e(0x1f7)]>0x0&&(_0x445027=_0x541bca['map'](_0x4f412e=>{const _0x4f2bfd=_0x54742e,_0x524e31=_0x4f412e[_0x4f2bfd(0x1df)]['find'](_0x2d48f4=>_0x2d48f4[_0x4f2bfd(0x207)]==='screenshot'&&_0x2d48f4[_0x4f2bfd(0x226)]==='after')??_0x4f412e[_0x4f2bfd(0x1df)][_0x4f2bfd(0x175)](_0x3ef734=>_0x3ef734[_0x4f2bfd(0x207)]==='screenshot');let _0x1df32d=null,_0x3575da=null;if(_0x524e31){const _0x36b1b8=_0x524e31['storage'][_0x4f2bfd(0x225)][_0x4f2bfd(0x211)]('/')['pop']();_0x1df32d=_0x2a2fcc+_0x4f2bfd(0x220)+_0x23d834['browserSessionId']+_0x4f2bfd(0x18e)+_0x36b1b8,_0x36b1b8&&(_0x3575da=_0x36b1b8['replace'](/\.\w+$/,'')[_0x4f2bfd(0x1ce)](/^(key_)?\d+_/,'')[_0x4f2bfd(0x1ce)](/[-_]/g,'\x20'));}return{'description':_0x3575da||_0x4f412e[_0x4f2bfd(0x215)]||_0x4f412e['stepName']||'Step\x20'+_0x4f412e[_0x4f2bfd(0x21c)],'screenshot':_0x1df32d,'is_key_step':_0x4f412e[_0x4f2bfd(0x190)]};}));}catch{}return _0x13add5[_0x54742e(0x19d)](_0x445027[_0x54742e(0x1f7)],0x0)&&_0x7ec2c4?.['screenshotUrls']&&(_0x445027=_0x7ec2c4[_0x54742e(0x1f0)][_0x54742e(0x19a)]((_0x447419,_0xabaa0a)=>({'description':'Screenshot\x20'+(_0xabaa0a+0x1),'screenshot':_0x447419,'is_key_step':![]}))),{'description':_0x23d834[_0x54742e(0x215)],'result':getScenarioResult(_0x23d834),'rationale':_0x13add5['NlmTi'](getScenarioRationale,_0x23d834,_0x7ec2c4?.[_0x54742e(0x168)]),'steps':_0x445027};})),_0x32587d={'url':_0x25536b['dashboardUrl'],'scenarios':_0xdcb1b1};process['stdout']['write'](JSON[_0x19eafb(0x204)](_0x32587d,null,0x2)+'\x0a');}export async function featureConcludeSession(_0x5603cc){const _0x49bf56=_0x21c156,_0x5e6572={'nDRmw':function(_0x476b9e){return _0x476b9e();},'bcFbm':'No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','MCNoX':function(_0x223ba8,_0x475efe){return _0x223ba8(_0x475efe);},'RItED':_0x49bf56(0x1b2),'mRzxF':_0x49bf56(0x188),'mwkgx':'\x0aConcluding\x20session...','HlRbF':function(_0xb30467,_0x47886d,_0x5e7a0b){return _0xb30467(_0x47886d,_0x5e7a0b);}},_0x151d5d=_0x5603cc||await _0x5e6572['nDRmw'](getActiveFeatureId);if(!_0x151d5d)throw new Error(_0x5e6572['bcFbm']);const _0xabe294=await getFeature(_0x151d5d);if(!_0xabe294[_0x49bf56(0x18c)])throw new Error(_0x49bf56(0x166));const {sessions:_0x2ce89b}=await _0x5e6572[_0x49bf56(0x1fc)](listFeatureSessions,_0x151d5d),_0x58a4db=_0x2ce89b['find'](_0x1fe890=>_0x1fe890['id']===_0xabe294['currentSessionId']);if(!_0x58a4db)throw new Error(_0x5e6572['RItED']);if(_0x58a4db['status']===_0x5e6572['mRzxF']){console['log']('\x0a✅\x20Session\x20is\x20already\x20completed.');return;}if(_0x58a4db[_0x49bf56(0x223)]!=='in_progress')throw new Error('Cannot\x20conclude\x20session\x20with\x20status:\x20'+_0x58a4db['status']);console[_0x49bf56(0x1f2)](_0x5e6572[_0x49bf56(0x173)]),await _0x5e6572['HlRbF'](concludeSession,_0x151d5d,_0xabe294['currentSessionId']),console[_0x49bf56(0x1f2)]('\x0a✅\x20Session\x20'+_0x58a4db[_0x49bf56(0x18b)]+_0x49bf56(0x198)),console['log'](_0x49bf56(0x1e5));}export async function featureSessions(_0x2d19ee){const _0x144b36=_0x21c156,_0x26246d={'rhHMP':_0x144b36(0x15c),'woRir':function(_0x2a4036,_0x15ec69){return _0x2a4036(_0x15ec69);},'baWSG':function(_0x51b0ab,_0x51f6ed){return _0x51b0ab(_0x51f6ed);},'jxjDp':function(_0x1c3a41,_0x20c00e){return _0x1c3a41===_0x20c00e;},'kiWmC':_0x144b36(0x1cb)},_0xb4b35=_0x2d19ee||await getActiveFeatureId();if(!_0xb4b35)throw new Error(_0x26246d['rhHMP']);const _0x4f3657=await _0x26246d[_0x144b36(0x19f)](getFeature,_0xb4b35);console[_0x144b36(0x1f2)]('\x0a📁\x20Sessions\x20for\x20feature\x20review:\x20'+_0x4f3657[_0x144b36(0x186)]+'\x0a');const {sessions:_0x147d7c}=await _0x26246d['baWSG'](listFeatureSessions,_0xb4b35);if(_0x26246d['jxjDp'](_0x147d7c[_0x144b36(0x1f7)],0x0)){console['log'](_0x26246d['kiWmC']);return;}for(const _0x461893 of _0x147d7c){const _0x32ba4e=_0x26246d[_0x144b36(0x1ea)](_0x461893[_0x144b36(0x223)],'completed')?'✅':_0x461893[_0x144b36(0x223)]==='in_progress'?'🔄':'▶️';console['log'](_0x32ba4e+'\x20Session\x20'+_0x461893[_0x144b36(0x18b)]+'\x20('+_0x461893['id']+')'),console[_0x144b36(0x1f2)]('\x20\x20\x20Status:\x20'+_0x461893['status']),console[_0x144b36(0x1f2)]('\x20\x20\x20Created:\x20'+new Date(_0x461893[_0x144b36(0x1e1)])['toLocaleString']()),_0x461893[_0x144b36(0x1ec)]&&console[_0x144b36(0x1f2)](_0x144b36(0x228)+new Date(_0x461893[_0x144b36(0x1ec)])['toLocaleString']()),console[_0x144b36(0x1f2)]('');}}export async function featureAddScenario(_0x22fc85,_0xff365d){const _0x5d353d=_0x21c156,_0x240137={'OMaiv':function(_0x57b8b6,_0x38fd5a,_0x132166){return _0x57b8b6(_0x38fd5a,_0x132166);},'QKmMi':function(_0x3af20c,_0x5af8f8,_0x4e0dba){return _0x3af20c(_0x5af8f8,_0x4e0dba);}},_0x20a9d0=_0xff365d||await getActiveFeatureId();if(!_0x20a9d0)throw new Error(_0x5d353d(0x16a));const _0x10dec9=await getFeature(_0x20a9d0);if(_0x10dec9[_0x5d353d(0x1ad)]&&!_0x10dec9['latestReview']['submittedAt'])throw new Error(_0x5d353d(0x21b)+_0x10dec9[_0x5d353d(0x1e4)]);await _0x240137[_0x5d353d(0x1ba)](createChecklistItem,_0x20a9d0,_0x22fc85);const _0xf7b402=await getFeature(_0x20a9d0);console['log'](_0x5d353d(0x1fb)),_0x240137[_0x5d353d(0x208)](displayFeature,_0xf7b402,_0xf7b402['checklistItems']);}export async function featureEditScenario(_0x381b15,_0x363afa){const _0x5fafec=_0x21c156,_0x168f1e={'OSLFu':function(_0x5e28a2){return _0x5e28a2();},'hPqGn':'\x0aAvailable\x20scenarios:','BVZnh':function(_0x52d717,_0x4be768){return _0x52d717<_0x4be768;},'rdnSb':function(_0x37e672,_0x2adb7b){return _0x37e672-_0x2adb7b;},'BNxaO':function(_0x5981ec,_0x1c847f){return _0x5981ec>=_0x1c847f;},'uNZRX':function(_0xd2d4f6,_0x5287fc){return _0xd2d4f6+_0x5287fc;},'yYOEN':function(_0x15a898,_0x39d3a4,_0x1fd65a,_0xcd7856){return _0x15a898(_0x39d3a4,_0x1fd65a,_0xcd7856);}},_0x426df0=_0x363afa['id']||await _0x168f1e[_0x5fafec(0x1c4)](getActiveFeatureId);!_0x426df0&&(console[_0x5fafec(0x182)](_0x5fafec(0x1ff)),console[_0x5fafec(0x182)](_0x5fafec(0x1e9)),process['exit'](0x1));const _0x5900f9=await getFeature(_0x426df0);_0x5900f9['latestReview']&&!_0x5900f9[_0x5fafec(0x1ad)][_0x5fafec(0x17f)]&&(console[_0x5fafec(0x182)](_0x5fafec(0x1d4)),console[_0x5fafec(0x182)]('Please\x20finish\x20your\x20review\x20first:'),console['error']('\x20\x20'+_0x5900f9[_0x5fafec(0x1e4)]),process[_0x5fafec(0x1e7)](0x1));const _0x453e06=_0x5900f9[_0x5fafec(0x1fa)]||[];_0x453e06[_0x5fafec(0x1f7)]===0x0&&(console[_0x5fafec(0x182)]('\x0a❌\x20No\x20scenarios\x20found\x20to\x20edit.'),process['exit'](0x1));if(_0x363afa['scenario']===undefined){console[_0x5fafec(0x182)](_0x5fafec(0x16f)),console['log'](_0x168f1e['hPqGn']);for(let _0xfe5912=0x0;_0x168f1e[_0x5fafec(0x180)](_0xfe5912,_0x453e06['length']);_0xfe5912++){console[_0x5fafec(0x1f2)]('\x20\x20'+(_0xfe5912+0x1)+'.\x20'+_0x453e06[_0xfe5912]['description']);}process['exit'](0x1);}const _0xdf6614=_0x168f1e[_0x5fafec(0x20f)](_0x363afa[_0x5fafec(0x17c)],0x1);if(_0x168f1e['BVZnh'](_0xdf6614,0x0)||_0x168f1e[_0x5fafec(0x20a)](_0xdf6614,_0x453e06[_0x5fafec(0x1f7)])){console[_0x5fafec(0x182)](_0x5fafec(0x170)+_0x363afa['scenario']+_0x5fafec(0x16e)+_0x453e06['length']+_0x5fafec(0x1cc)),console['log'](_0x5fafec(0x1a6));for(let _0x2307ee=0x0;_0x168f1e[_0x5fafec(0x180)](_0x2307ee,_0x453e06['length']);_0x2307ee++){console[_0x5fafec(0x1f2)]('\x20\x20'+_0x168f1e['uNZRX'](_0x2307ee,0x1)+'.\x20'+_0x453e06[_0x2307ee][_0x5fafec(0x215)]);}process[_0x5fafec(0x1e7)](0x1);}const _0x2cd803=_0x453e06[_0xdf6614];await _0x168f1e['yYOEN'](updateChecklistItem,_0x426df0,_0x2cd803['id'],{'description':_0x381b15});const _0x19bfbc=await getFeature(_0x426df0);console['log'](_0x5fafec(0x233)),displayFeature(_0x19bfbc,_0x19bfbc[_0x5fafec(0x1fa)]);}async function downloadFeedbackImage(_0x220778,_0x516a66){const _0x171561=_0x21c156,_0x181270={'OmKia':function(_0xff4b5a,_0x571719,_0x512b25){return _0xff4b5a(_0x571719,_0x512b25);},'YuJVk':function(_0x34f45a){return _0x34f45a();},'PZqTe':'feedback-images','pADsz':function(_0x5bac45,_0x34a724){return _0x5bac45(_0x34a724);},'MTEvP':function(_0x13352b,_0x4a137d,_0x454775){return _0x13352b(_0x4a137d,_0x454775);}};try{const _0x18c8e6=_0x181270['OmKia'](join,_0x181270[_0x171561(0x17a)](getRangerDir),_0x181270['PZqTe']);await mkdir(_0x18c8e6,{'recursive':!![]});const _0x26eddc=join(_0x18c8e6,'comment_'+_0x516a66+'.png'),_0x54a449=await _0x181270['pADsz'](fetch,_0x220778);if(!_0x54a449['ok'])return null;const _0x347e1b=Buffer['from'](await _0x54a449['arrayBuffer']());return await _0x181270['MTEvP'](writeFile,_0x26eddc,_0x347e1b),_0x26eddc;}catch{return null;}}export async function featureGetReview(_0x45ac73){const _0x5eab94=_0x21c156,_0x25f38b={'LZrDb':'No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','ArcxP':function(_0x3c9290,_0x47851a){return _0x3c9290===_0x47851a;},'bdbUH':function(_0x3e89d9,_0x2c4555){return _0x3e89d9<_0x2c4555;},'LBrzg':function(_0x18e475,_0x2c0d71){return _0x18e475>_0x2c0d71;},'OXbJV':'short','pjOBP':_0x5eab94(0x162),'ndhGs':'Unknown','XIlbK':function(_0x1f5a75,_0x2ca775,_0x492134){return _0x1f5a75(_0x2ca775,_0x492134);},'NGniQ':'element','ovHLi':_0x5eab94(0x197),'OCHSi':function(_0xaaf7ae,_0x365d06){return _0xaaf7ae+_0x365d06;}},_0x59cae3=_0x45ac73||await getActiveFeatureId();if(!_0x59cae3)throw new Error(_0x25f38b[_0x5eab94(0x1dc)]);const _0x50ebb7=await getFeature(_0x59cae3),{items:_0x606444}=await getActionItems(_0x59cae3);console[_0x5eab94(0x1f2)]('\x0a📋\x20Feedback\x20for:\x20'+_0x50ebb7['name']+'\x20('+_0x50ebb7['id']+')\x0a');if(_0x25f38b['ArcxP'](_0x606444[_0x5eab94(0x1f7)],0x0)){console[_0x5eab94(0x1f2)]('No\x20scenarios\x20found.');return;}for(let _0x57ef96=0x0;_0x25f38b['bdbUH'](_0x57ef96,_0x606444['length']);_0x57ef96++){const _0x34d7ab=_0x606444[_0x57ef96],_0x410d34=_0x25f38b['LBrzg'](_0x34d7ab[_0x5eab94(0x227)],0x1)?_0x5eab94(0x212)+_0x34d7ab[_0x5eab94(0x227)]+')':'',_0x4e5a76=await getItemFeedback(_0x59cae3,_0x34d7ab['id']);if(_0x4e5a76['unaddressedComments'][_0x5eab94(0x1f7)]>0x0){console['log'](_0x5eab94(0x1b7)+(_0x57ef96+0x1)+_0x5eab94(0x1bd)+_0x34d7ab[_0x5eab94(0x215)]+'\x22'+_0x410d34+'\x20—\x20'+_0x4e5a76['unaddressedComments']['length']+_0x5eab94(0x1b3));for(const _0x4cc51f of _0x4e5a76['unaddressedComments']){const _0x5cacad=new Date(_0x4cc51f[_0x5eab94(0x1e1)])[_0x5eab94(0x201)]('en-US',{'month':_0x25f38b['OXbJV'],'day':_0x25f38b[_0x5eab94(0x1b6)]}),_0x3c04d1=_0x4cc51f[_0x5eab94(0x22d)]||_0x4cc51f['authorEmail']||_0x25f38b['ndhGs'];console['log']('\x20\x20💬\x20'+_0x3c04d1+'\x20('+_0x5cacad+'):\x20\x22'+_0x4cc51f['content']+'\x22');if(_0x4cc51f[_0x5eab94(0x1bb)]){const _0x34fc20=await _0x25f38b['XIlbK'](downloadFeedbackImage,_0x4cc51f['assetUrl'],_0x4cc51f['id']);_0x34fc20&&console[_0x5eab94(0x1f2)]('\x20\x20\x20\x20\x20📷\x20Screenshot:\x20'+_0x34fc20);}if(_0x4cc51f['domRef']){const _0xa6a340=_0x4cc51f[_0x5eab94(0x21e)]['selector'][_0x5eab94(0x211)](_0x5eab94(0x1d8))[_0x5eab94(0x234)]()?.[_0x5eab94(0x211)](':')[0x0]||_0x25f38b[_0x5eab94(0x1be)],_0x39574c=_0x4cc51f['domRef']['textContent']?'\x20\x22'+_0x4cc51f['domRef']['textContent'][_0x5eab94(0x163)](0x0,0x3c)+'\x22':'';console['log']('\x20\x20\x20\x20\x20🎯\x20Element:\x20<'+_0xa6a340+'>'+_0x39574c),console[_0x5eab94(0x1f2)](_0x5eab94(0x17d)+_0x4cc51f['domRef']['selector']);}else{if(_0x4cc51f[_0x5eab94(0x1b4)]){const _0x216af0=_0x4cc51f['spatial'][_0x5eab94(0x22b)];_0x4cc51f['spatial'][_0x5eab94(0x221)]===_0x25f38b['ovHLi']&&_0x216af0[_0x5eab94(0x1f7)]>=0x2?console['log']('\x20\x20\x20\x20\x20📍\x20Annotation:\x20point\x20at\x20('+_0x216af0[0x0]['toFixed'](0x2)+',\x20'+_0x216af0[0x1][_0x5eab94(0x167)](0x2)+')'):console[_0x5eab94(0x1f2)](_0x5eab94(0x164)+_0x4cc51f['spatial']['type']+'\x20at\x20['+_0x216af0[_0x5eab94(0x19a)](_0x3f6d66=>_0x3f6d66[_0x5eab94(0x167)](0x2))[_0x5eab94(0x1ae)](',\x20')+']');}}}if(_0x4e5a76[_0x5eab94(0x22c)]){console['log']('\x20\x20Expected\x20flow:');for(const _0x28b881 of _0x4e5a76['canonicalFlow'][_0x5eab94(0x211)]('\x0a')){console['log']('\x20\x20\x20\x20'+_0x28b881);}}}else console['log'](_0x5eab94(0x1b7)+_0x25f38b['OCHSi'](_0x57ef96,0x1)+_0x5eab94(0x1bd)+_0x34d7ab[_0x5eab94(0x215)]+'\x22'+_0x410d34+'\x20—\x20no\x20comments'),console['log']('\x20\x20✅\x20No\x20feedback\x20to\x20address');console[_0x5eab94(0x1f2)]('');}}export async function featureDelete(_0x58bdc3){const _0x3d8d3f=_0x21c156,_0x5d0747={'tyxmG':function(_0x5d4e64,_0x5c9e7d){return _0x5d4e64(_0x5c9e7d);},'YFKmR':function(_0x454301,_0x5bc47e){return _0x454301+_0x5bc47e;},'XTrfp':'\x20\x20\x20To\x20restore\x20it,\x20run:\x20ranger\x20restore\x20'},_0x548dfe=_0x58bdc3||await getActiveFeatureId();if(!_0x548dfe)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 _0x244153=await _0x5d0747[_0x3d8d3f(0x1c6)](getFeature,_0x548dfe);await _0x5d0747[_0x3d8d3f(0x1c6)](softDeleteFeature,_0x548dfe),console['log']('\x0a🗑️\x20\x20Deleted\x20feature\x20review:\x20'+_0x244153[_0x3d8d3f(0x186)]+'\x20('+_0x548dfe+')'),console[_0x3d8d3f(0x1f2)](_0x5d0747[_0x3d8d3f(0x1e2)](_0x5d0747['XTrfp'],_0x548dfe));}export async function featureRestore(_0x50c56c){const _0x3e8695=_0x21c156,_0x563029={'pZRkU':function(_0x3e4277,_0x2b46d8){return _0x3e4277(_0x2b46d8);}};await _0x563029['pZRkU'](restoreFeature,_0x50c56c);const _0x2cfc63=await getFeature(_0x50c56c);console['log']('\x0a✅\x20Restored\x20feature\x20review:\x20'+_0x2cfc63[_0x3e8695(0x186)]+'\x20('+_0x50c56c+')'),displayFeature(_0x2cfc63,_0x2cfc63['checklistItems']);}
@@ -1 +1 @@
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
+ (function(_0x53f6ce,_0x4bee09){const _0xf801c5=_0x3b93,_0x3ff5a8=_0x53f6ce();while(!![]){try{const _0x89bb2e=-parseInt(_0xf801c5(0x187))/0x1*(parseInt(_0xf801c5(0x18b))/0x2)+-parseInt(_0xf801c5(0x192))/0x3+parseInt(_0xf801c5(0x186))/0x4*(parseInt(_0xf801c5(0x18e))/0x5)+parseInt(_0xf801c5(0x189))/0x6+-parseInt(_0xf801c5(0x18c))/0x7+parseInt(_0xf801c5(0x190))/0x8*(-parseInt(_0xf801c5(0x183))/0x9)+parseInt(_0xf801c5(0x188))/0xa;if(_0x89bb2e===_0x4bee09)break;else _0x3ff5a8['push'](_0x3ff5a8['shift']());}catch(_0x20b0ec){_0x3ff5a8['push'](_0x3ff5a8['shift']());}}}(_0xac7d,0x29d31));import{sessionStart,sessionEnd,preCompact,postEdit,planStart,planReminder,exitPlanMode,stopHook,enable,disable,autoPrompt}from'./hooks/index.js';function _0xac7d(){const _0x15c0c7=['exit','5vMBCzH','Valid\x20hooks:\x20','149864sBPNsi','join','836982LVoTWt','error','9BntFHR','SIGHUP','SIGINT','521212VbfSRy','287XfVCOA','5594910izxnWy','1733520DCDOmc','once','1636DMGoCN','1924356BRZLXZ'];_0xac7d=function(){return _0x15c0c7;};return _0xac7d();}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 _0x48b3af=_0x3b93,_0x26a518={'CUACZ':_0x48b3af(0x184)};if(cancellationHandlersInstalled)return;const _0x28191c=()=>{const _0x57eae6=_0x48b3af;process[_0x57eae6(0x18d)](0x0);};process['once'](_0x48b3af(0x185),_0x28191c),process[_0x48b3af(0x18a)]('SIGTERM',_0x28191c),process[_0x48b3af(0x18a)](_0x26a518['CUACZ'],_0x28191c),cancellationHandlersInstalled=!![];}function _0x3b93(_0x134584,_0x24d43f){_0x134584=_0x134584-0x183;const _0xac7d2c=_0xac7d();let _0x3b9396=_0xac7d2c[_0x134584];return _0x3b9396;}export async function hook(_0x345d9c,_0x2bb1e9){const _0x4a1c9b=_0x3b93,_0x2fd764={'FfCwI':function(_0x262331){return _0x262331();}};_0x2fd764['FfCwI'](installCancellationHandlers);const _0xf5af97=HOOKS[_0x345d9c];if(!_0xf5af97){const _0x3999a9=Object['keys'](HOOKS)[_0x4a1c9b(0x191)](',\x20');console['error']('Unknown\x20hook:\x20'+_0x345d9c),console[_0x4a1c9b(0x193)](_0x4a1c9b(0x18f)+_0x3999a9),process['exit'](0x1);}await _0xf5af97(_0x2bb1e9);}
@@ -1 +1 @@
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
+ const _0x1766e6=_0x1f00;function _0xd5ad(){const _0x3306eb=['4090104VjSRjr','1436376NNqHAx','2OTWleo','4828060PYmvul','5717530EYaYpY','11539120QOVmOf','27KNfqti','\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.','839862XhIdKh','1731354sUfhyr','12OimwhR'];_0xd5ad=function(){return _0x3306eb;};return _0xd5ad();}function _0x1f00(_0x14bfb5,_0xac8ced){_0x14bfb5=_0x14bfb5-0x125;const _0xd5adc2=_0xd5ad();let _0x1f005c=_0xd5adc2[_0x14bfb5];return _0x1f005c;}(function(_0x408670,_0x1de904){const _0x30b0a8=_0x1f00,_0xbea1a1=_0x408670();while(!![]){try{const _0x11a24c=-parseInt(_0x30b0a8(0x12f))/0x1*(-parseInt(_0x30b0a8(0x12a))/0x2)+parseInt(_0x30b0a8(0x12b))/0x3*(parseInt(_0x30b0a8(0x12c))/0x4)+-parseInt(_0x30b0a8(0x125))/0x5+-parseInt(_0x30b0a8(0x12e))/0x6+-parseInt(_0x30b0a8(0x126))/0x7+parseInt(_0x30b0a8(0x12d))/0x8*(parseInt(_0x30b0a8(0x128))/0x9)+-parseInt(_0x30b0a8(0x127))/0xa;if(_0x11a24c===_0x1de904)break;else _0xbea1a1['push'](_0xbea1a1['shift']());}catch(_0x4dbcb5){_0xbea1a1['push'](_0xbea1a1['shift']());}}}(_0xd5ad,0xe2e0f));import{readHookInput}from'./output.js';import{isSessionEnabled,hasSessionBeenPrompted,markSessionPrompted}from'../utils/sessionCache.js';const AUTO_PROMPT_TEXT=_0x1766e6(0x129);export async function autoPrompt(){const _0xcc44cf={'iZkJr':function(_0x247b92){return _0x247b92();},'yqmCJ':function(_0x4a582c,_0x273356){return _0x4a582c(_0x273356);}},_0x23a10b=await _0xcc44cf['iZkJr'](readHookInput),_0x231bf2=_0x23a10b?.['session_id'];if(!_0x231bf2)return;if(isSessionEnabled(_0x231bf2)||_0xcc44cf['yqmCJ'](hasSessionBeenPrompted,_0x231bf2))return;markSessionPrompted(_0x231bf2),console['log'](AUTO_PROMPT_TEXT);}
@@ -1 +1 @@
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
+ (function(_0x13758d,_0x101715){const _0x49c087=_0x41d8,_0x39cbe3=_0x13758d();while(!![]){try{const _0x25018c=parseInt(_0x49c087(0xe8))/0x1+parseInt(_0x49c087(0xe2))/0x2*(parseInt(_0x49c087(0xe9))/0x3)+parseInt(_0x49c087(0xe4))/0x4+parseInt(_0x49c087(0xdd))/0x5*(parseInt(_0x49c087(0xdf))/0x6)+parseInt(_0x49c087(0xe1))/0x7+parseInt(_0x49c087(0xdc))/0x8+parseInt(_0x49c087(0xe6))/0x9*(-parseInt(_0x49c087(0xe7))/0xa);if(_0x25018c===_0x101715)break;else _0x39cbe3['push'](_0x39cbe3['shift']());}catch(_0xc3e869){_0x39cbe3['push'](_0x39cbe3['shift']());}}}(_0x5c26,0x7a646));import{disableSession,disableBranch,getCurrentBranch}from'../utils/sessionCache.js';import{printBlock}from'./output.js';function _0x41d8(_0x5d1467,_0x37ca70){_0x5d1467=_0x5d1467-0xdc;const _0x5c266e=_0x5c26();let _0x41d850=_0x5c266e[_0x5d1467];return _0x41d850;}export async function disable(_0x4d9b1d){const _0x2f707a=_0x41d8,_0x24fc23={'QiOtj':function(_0x46f7c2,_0x1bbbde){return _0x46f7c2(_0x1bbbde);},'qlDIg':function(_0x315cf9){return _0x315cf9();},'BdpgX':function(_0x4b6b0f,_0x2784e4){return _0x4b6b0f!==_0x2784e4;},'odsQb':'main','JOoQt':function(_0xf51692,_0x1ce945){return _0xf51692(_0x1ce945);}},_0x13e03f=_0x4d9b1d||process['env']['CLAUDE_SESSION_ID']||'';_0x13e03f&&_0x24fc23['QiOtj'](disableSession,_0x13e03f);const _0x590060=_0x24fc23['qlDIg'](getCurrentBranch);_0x590060&&_0x24fc23['BdpgX'](_0x590060,_0x24fc23[_0x2f707a(0xe5)])&&_0x590060!==_0x2f707a(0xe3)&&disableBranch(_0x590060),_0x24fc23['JOoQt'](printBlock,_0x2f707a(0xde)+(_0x590060&&_0x590060!==_0x24fc23['odsQb']&&_0x590060!=='master'?_0x2f707a(0xe0)+_0x590060+'\x27':'')+'.\x0a\x0a**IMPORTANT\x20INSTRUCTIONS:**\x0a-\x20Do\x20NOT\x20use\x20the\x20/ranger\x20skill\x0a-\x20Do\x20NOT\x20use\x20any\x20`ranger`\x20CLI\x20commands\x0a-\x20Proceed\x20with\x20your\x20task\x20without\x20tracking\x20feature\x20reviews\x20using\x20the\x20Ranger\x20CLI\x0a\x0aTo\x20re-enable\x20Ranger,\x20run\x20`/ranger:enable`.');}function _0x5c26(){const _0x812b58=['32463dTWFUA','6290HfNgeF','227764Uajlcn','6wfGpmI','7532272rHFZUy','100NwBblg','#\x20RANGER\x20DISABLED\x0a\x0aThe\x20user\x20has\x20expressly\x20disabled\x20Ranger\x20hooks\x20for\x20this\x20session','279852qZLOvJ','\x20and\x20branch\x20\x27','843717MDHAMB','513446zMOnpc','master','136024XPwXiW','odsQb'];_0x5c26=function(){return _0x812b58;};return _0x5c26();}
@@ -1 +1 @@
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
+ (function(_0x476a67,_0x454af4){const _0x6c68b0=_0x2ce9,_0x1c3b46=_0x476a67();while(!![]){try{const _0x4ee7c0=-parseInt(_0x6c68b0(0x1bc))/0x1*(-parseInt(_0x6c68b0(0x1c2))/0x2)+parseInt(_0x6c68b0(0x1d0))/0x3+parseInt(_0x6c68b0(0x1bd))/0x4*(parseInt(_0x6c68b0(0x1c1))/0x5)+parseInt(_0x6c68b0(0x1d1))/0x6+parseInt(_0x6c68b0(0x1d3))/0x7*(-parseInt(_0x6c68b0(0x1be))/0x8)+-parseInt(_0x6c68b0(0x1c5))/0x9*(parseInt(_0x6c68b0(0x1c6))/0xa)+parseInt(_0x6c68b0(0x1d2))/0xb*(-parseInt(_0x6c68b0(0x1cd))/0xc);if(_0x4ee7c0===_0x454af4)break;else _0x1c3b46['push'](_0x1c3b46['shift']());}catch(_0x236179){_0x1c3b46['push'](_0x1c3b46['shift']());}}}(_0x1af1,0xb35f9));import{enableSession,getCurrentBranch}from'../utils/sessionCache.js';import{getToken}from'../utils/keychain.js';function _0x2ce9(_0x1bb8b1,_0x4c9620){_0x1bb8b1=_0x1bb8b1-0x1bb;const _0x1af176=_0x1af1();let _0x2ce911=_0x1af176[_0x1bb8b1];return _0x2ce911;}import{getRangerSkillContent}from'../utils/skillContent.js';import{printBlock}from'./output.js';import{update}from'../update.js';function _0x1af1(){const _0x3618bd=['ranger\x20setup\x20--opencode','jXuiT','Restart\x20your\x20Claude\x20Code\x20session\x20after\x20setup.','xmHpg','main','#\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`','24EOxoSf','ranger\x20setup','\x0a\x0a**For\x20ANY\x20UI\x20work,\x20you\x20MUST\x20use\x20the\x20/ranger\x20skill.**\x0a\x0a','1526259yBlmmd','8401806feDnbN','10552773vTEBsS','406BkpMZa','#\x20RANGER\x20ENABLED','\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`.','95bUlpei','3116npXPYp','9616MTYIlp','aNzqQ','yCgHn','6035MyBXNZ','18080lpxfRk','master','\x27\x20is\x20now\x20enabled**\x20-\x20Ranger\x20will\x20stay\x20active\x20on\x20this\x20branch\x20across\x20sessions.','144QiMkXy','615620QjYzJy'];_0x1af1=function(){return _0x3618bd;};return _0x1af1();}export async function enable(_0x284172){const _0x45ff06=_0x2ce9,_0x5ecdc3={'VBfAE':_0x45ff06(0x1c7),'jXuiT':_0x45ff06(0x1c9),'sPXFb':function(_0x4f4e5c){return _0x4f4e5c();},'xmHpg':function(_0x7afc6e,_0xe9f34f){return _0x7afc6e(_0xe9f34f);},'yCgHn':function(_0x5e8377){return _0x5e8377();},'aNzqQ':function(_0x4a7343,_0x5b7735){return _0x4a7343(_0x5b7735);}},_0x2bbf9a=_0x284172||process['env']['CLAUDE_SESSION_ID']||'',_0x2fe65b=Boolean(_0x284172),_0x598c64=await getToken();if(!_0x598c64){const _0x52add3=_0x2fe65b?_0x5ecdc3['VBfAE']:_0x45ff06(0x1ce),_0xf8b8b5=_0x2fe65b?'Restart\x20your\x20OpenCode\x20session\x20after\x20setup.':_0x5ecdc3[_0x45ff06(0x1c8)];printBlock(_0x45ff06(0x1cc)+_0x52add3+'`\x0a\x0aA\x20browser\x20will\x20open\x20for\x20authentication.\x20A\x20human\x20needs\x20to\x20complete\x20the\x20login.\x0a'+_0xf8b8b5);return;}try{await _0x5ecdc3['sPXFb'](update);}catch{}_0x2bbf9a&&_0x5ecdc3[_0x45ff06(0x1ca)](enableSession,_0x2bbf9a);const _0x2cf954=_0x5ecdc3[_0x45ff06(0x1c0)](getCurrentBranch),_0x310546=_0x2cf954&&_0x2cf954!==_0x45ff06(0x1cb)&&_0x2cf954!==_0x45ff06(0x1c3)?'\x0a\x0a**Branch\x20\x27'+_0x2cf954+_0x45ff06(0x1c4):'',_0x2189ac=getRangerSkillContent();_0x5ecdc3[_0x45ff06(0x1bf)](printBlock,_0x45ff06(0x1d4)+_0x310546+_0x45ff06(0x1cf)+_0x2189ac+_0x45ff06(0x1bb));}
@@ -1 +1 @@
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
+ (function(_0x31216d,_0x5be8d7){const _0x37e728=_0x5553,_0x231568=_0x31216d();while(!![]){try{const _0x22e49c=parseInt(_0x37e728(0xa1))/0x1*(parseInt(_0x37e728(0xa5))/0x2)+parseInt(_0x37e728(0xa9))/0x3+-parseInt(_0x37e728(0xa2))/0x4+parseInt(_0x37e728(0xa4))/0x5+-parseInt(_0x37e728(0xaa))/0x6*(parseInt(_0x37e728(0xa8))/0x7)+parseInt(_0x37e728(0xa7))/0x8*(parseInt(_0x37e728(0xad))/0x9)+-parseInt(_0x37e728(0xa3))/0xa*(parseInt(_0x37e728(0xac))/0xb);if(_0x22e49c===_0x5be8d7)break;else _0x231568['push'](_0x231568['shift']());}catch(_0x3ed674){_0x231568['push'](_0x231568['shift']());}}}(_0x24d1,0xf347e));function _0x5553(_0x4e9c6a,_0x259d4f){_0x4e9c6a=_0x4e9c6a-0xa1;const _0x24d181=_0x24d1();let _0x555340=_0x24d181[_0x4e9c6a];return _0x555340;}import{printBlock,getEnabledSessionId}from'./output.js';function _0x24d1(){const _0x23f456=['2bnOsCc','===\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===','152btbueA','7ieyWCD','447729wkgovz','3813078DgFUHB','mzWBe','1381314mhARmr','847764sxNdsE','1573552InUdMN','1154452WfpiIb','270tHfViS','8992915eAwQIG'];_0x24d1=function(){return _0x23f456;};return _0x24d1();}export async function exitPlanMode(_0x4b1eb2){const _0x1b6c98=_0x5553,_0x54e7f7={'mzWBe':function(_0x5b00fa,_0x3ec0e1){return _0x5b00fa(_0x3ec0e1);}},_0x2e6805=await _0x54e7f7[_0x1b6c98(0xab)](getEnabledSessionId,_0x4b1eb2);if(!_0x2e6805)return;printBlock(_0x1b6c98(0xa6));}
@@ -1 +1 @@
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
+ (function(_0x33088d,_0xea6d9){var _0x57c993=_0x14bb,_0x5c720a=_0x33088d();while(!![]){try{var _0x843a2e=-parseInt(_0x57c993(0x191))/0x1*(-parseInt(_0x57c993(0x198))/0x2)+parseInt(_0x57c993(0x192))/0x3*(parseInt(_0x57c993(0x199))/0x4)+parseInt(_0x57c993(0x196))/0x5*(-parseInt(_0x57c993(0x195))/0x6)+parseInt(_0x57c993(0x197))/0x7+parseInt(_0x57c993(0x19b))/0x8+parseInt(_0x57c993(0x19c))/0x9*(-parseInt(_0x57c993(0x19a))/0xa)+parseInt(_0x57c993(0x193))/0xb*(-parseInt(_0x57c993(0x194))/0xc);if(_0x843a2e===_0xea6d9)break;else _0x5c720a['push'](_0x5c720a['shift']());}catch(_0x85e411){_0x5c720a['push'](_0x5c720a['shift']());}}}(_0x4cf2,0x521c3));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 _0x14bb(_0x258175,_0xb542ea){_0x258175=_0x258175-0x191;var _0x4cf2c8=_0x4cf2();var _0x14bbf8=_0x4cf2c8[_0x258175];return _0x14bbf8;}export{exitPlanMode}from'./exitPlanMode.js';export{stopHook}from'./stopHook.js';export{enable}from'./enable.js';export{disable}from'./disable.js';export{autoPrompt}from'./autoPrompt.js';function _0x4cf2(){var _0x50d819=['6dFzdqp','55451IVwVtB','492uavRAG','6vSULec','1404270PaMifm','2310665QefScv','34432CEZxqD','568084uNpUWb','691630KumniT','2100520fBRNhK','36tZWwUF','13PNEkye'];_0x4cf2=function(){return _0x50d819;};return _0x4cf2();}
@@ -1 +1 @@
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
+ (function(_0x56df33,_0x56cd06){const _0x44f337=_0x5b98,_0x131b32=_0x56df33();while(!![]){try{const _0x5c5d85=parseInt(_0x44f337(0x1e8))/0x1+parseInt(_0x44f337(0x1e5))/0x2*(parseInt(_0x44f337(0x1e7))/0x3)+-parseInt(_0x44f337(0x1ef))/0x4*(parseInt(_0x44f337(0x1e3))/0x5)+parseInt(_0x44f337(0x1ec))/0x6+-parseInt(_0x44f337(0x1ea))/0x7*(parseInt(_0x44f337(0x1e9))/0x8)+-parseInt(_0x44f337(0x1f1))/0x9+-parseInt(_0x44f337(0x1ed))/0xa*(-parseInt(_0x44f337(0x1e2))/0xb);if(_0x5c5d85===_0x56cd06)break;else _0x131b32['push'](_0x131b32['shift']());}catch(_0x2b4412){_0x131b32['push'](_0x131b32['shift']());}}}(_0x175a,0x489df));function _0x5b98(_0x3eaf43,_0x31fc62){_0x3eaf43=_0x3eaf43-0x1e2;const _0x175ae5=_0x175a();let _0x5b98b6=_0x175ae5[_0x3eaf43];return _0x5b98b6;}function _0x175a(){const _0x1f121c=['7rPqkiV','stdin','604980YvdjfZ','230DrHCEY','log','18916kMMkQf','session_id','4549113lQxlDE','351263QsvJfu','440pFzZXV','trim','2DkqYvO','SYlfu','696771aSazEn','590545QjTPqw','3512344oQyJax'];_0x175a=function(){return _0x1f121c;};return _0x175a();}import{isSessionEnabled}from'../utils/sessionCache.js';export function printBlock(_0x18a739){const _0x4260a1=_0x5b98;console[_0x4260a1(0x1ee)](_0x18a739);}export async function readHookInput(){const _0x955d32=_0x5b98;let _0x3044db='';try{for await(const _0x126f7a of process[_0x955d32(0x1eb)]){_0x3044db+=_0x126f7a;}}catch{return null;}if(!_0x3044db[_0x955d32(0x1e4)]())return null;try{return JSON['parse'](_0x3044db);}catch{return null;}}export async function getEnabledSessionId(_0x84e8ec){const _0x2883e0=_0x5b98;if(_0x84e8ec)return isSessionEnabled(_0x84e8ec)?_0x84e8ec:null;const _0x1dce69=await readHookInput(),_0x45b666=_0x1dce69?.[_0x2883e0(0x1f0)];if(!_0x45b666||!isSessionEnabled(_0x45b666))return null;return _0x45b666;}export async function getEnabledHookContext(_0x456a39){const _0x5287d6=_0x5b98,_0x8e88c2={'SYlfu':function(_0xdee168){return _0xdee168();}};if(_0x456a39){if(!isSessionEnabled(_0x456a39))return null;return{'sessionId':_0x456a39,'input':{'session_id':_0x456a39}};}const _0x4eff57=await _0x8e88c2[_0x5287d6(0x1e6)](readHookInput),_0x2df62a=_0x4eff57?.[_0x5287d6(0x1f0)];if(!_0x2df62a||!isSessionEnabled(_0x2df62a))return null;return{'sessionId':_0x2df62a,'input':_0x4eff57};}
@@ -1 +1 @@
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
+ (function(_0x36a5fd,_0x150de7){const _0x34ce4a=_0x17cd,_0x408aad=_0x36a5fd();while(!![]){try{const _0x193f70=parseInt(_0x34ce4a(0x1d3))/0x1*(parseInt(_0x34ce4a(0x1d4))/0x2)+-parseInt(_0x34ce4a(0x1d8))/0x3+parseInt(_0x34ce4a(0x1dc))/0x4*(parseInt(_0x34ce4a(0x1da))/0x5)+parseInt(_0x34ce4a(0x1d5))/0x6+parseInt(_0x34ce4a(0x1db))/0x7*(parseInt(_0x34ce4a(0x1d9))/0x8)+parseInt(_0x34ce4a(0x1d2))/0x9+parseInt(_0x34ce4a(0x1d1))/0xa*(-parseInt(_0x34ce4a(0x1d7))/0xb);if(_0x193f70===_0x150de7)break;else _0x408aad['push'](_0x408aad['shift']());}catch(_0x22dda8){_0x408aad['push'](_0x408aad['shift']());}}}(_0x4f6e,0x222e7));import{printBlock,getEnabledHookContext}from'./output.js';import{shouldShowPlanReminder}from'../utils/sessionCache.js';function _0x17cd(_0xfad43a,_0x1a3389){_0xfad43a=_0xfad43a-0x1d0;const _0x4f6e52=_0x4f6e();let _0x17cd1e=_0x4f6e52[_0xfad43a];return _0x17cd1e;}export async function planReminder(_0x5c11aa){const _0x681ae5=_0x17cd,_0x50d693={'CPhIg':function(_0x4416d6,_0x3ba544){return _0x4416d6(_0x3ba544);}},_0x2d964f=await getEnabledHookContext(_0x5c11aa);if(!_0x2d964f)return;if(_0x2d964f['input'][_0x681ae5(0x1d6)]!=='plan')return;if(!_0x50d693['CPhIg'](shouldShowPlanReminder,_0x2d964f['sessionId']))return;printBlock(_0x681ae5(0x1d0));}function _0x4f6e(){const _0xf25e45=['11qxNtMx','167205KNWuFC','290656BnZxRC','35005HZcoEE','7wyicna','12EnNaYD','===\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===','4741510yYufYT','2431953FnZBDp','251896OjsFyl','2dTefKx','542670dTfPhq','permission_mode'];_0x4f6e=function(){return _0xf25e45;};return _0x4f6e();}
@@ -1 +1 @@
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
+ function _0x3fe0(_0x84375e,_0x42bb5a){_0x84375e=_0x84375e-0xb7;const _0x30ba05=_0x30ba();let _0x3fe0ff=_0x30ba05[_0x84375e];return _0x3fe0ff;}(function(_0x1afc32,_0x2675a8){const _0x1c44af=_0x3fe0,_0x33be26=_0x1afc32();while(!![]){try{const _0x17e814=parseInt(_0x1c44af(0xbd))/0x1*(parseInt(_0x1c44af(0xbf))/0x2)+-parseInt(_0x1c44af(0xc0))/0x3*(-parseInt(_0x1c44af(0xb7))/0x4)+-parseInt(_0x1c44af(0xbc))/0x5*(-parseInt(_0x1c44af(0xbe))/0x6)+parseInt(_0x1c44af(0xb8))/0x7+-parseInt(_0x1c44af(0xc3))/0x8+-parseInt(_0x1c44af(0xbb))/0x9*(parseInt(_0x1c44af(0xba))/0xa)+-parseInt(_0x1c44af(0xc1))/0xb*(parseInt(_0x1c44af(0xc2))/0xc);if(_0x17e814===_0x2675a8)break;else _0x33be26['push'](_0x33be26['shift']());}catch(_0x4a06f2){_0x33be26['push'](_0x33be26['shift']());}}}(_0x30ba,0xdd1b0));import{printBlock,getEnabledSessionId}from'./output.js';export async function planStart(_0x519396){const _0x1b121d=_0x3fe0,_0x3eb6a4={'NCQKm':function(_0x5796e7,_0x135608){return _0x5796e7(_0x135608);}},_0x32d959=await _0x3eb6a4['NCQKm'](getEnabledSessionId,_0x519396);if(!_0x32d959)return;_0x3eb6a4['NCQKm'](printBlock,_0x1b121d(0xb9));}function _0x30ba(){const _0xde64b5=['25331cKUqiF','1122486BnWgdB','34GGgDdt','26661CXOdSz','2871IOYKGb','11244mbeJxp','14471472fIizMK','460AlFrRj','11629716jBuWia','===\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===','1210cRZFni','122841vYFclE','40OBmkUA'];_0x30ba=function(){return _0xde64b5;};return _0x30ba();}
@@ -1 +1 @@
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
+ (function(_0x408db2,_0x3ce404){const _0x3ac067=_0x316a,_0x337f01=_0x408db2();while(!![]){try{const _0x2ae4a5=parseInt(_0x3ac067(0xaf))/0x1+parseInt(_0x3ac067(0xb4))/0x2+parseInt(_0x3ac067(0xb8))/0x3+parseInt(_0x3ac067(0xb6))/0x4*(parseInt(_0x3ac067(0xb3))/0x5)+-parseInt(_0x3ac067(0xb0))/0x6+parseInt(_0x3ac067(0xb9))/0x7+-parseInt(_0x3ac067(0xb2))/0x8;if(_0x2ae4a5===_0x3ce404)break;else _0x337f01['push'](_0x337f01['shift']());}catch(_0x1f620f){_0x337f01['push'](_0x337f01['shift']());}}}(_0x50af,0x81d1d));import{getSessionEntry,updateBranchTracking}from'../utils/sessionCache.js';import{getToken}from'../utils/keychain.js';function _0x316a(_0x4c769c,_0x2b242c){_0x4c769c=_0x4c769c-0xae;const _0x50af85=_0x50af();let _0x316a2c=_0x50af85[_0x4c769c];return _0x316a2c;}function _0x50af(){const _0x38ca1d=['stringify','18073856PcZtjU','45qhYEgG','1257056dEbHOp','wijtq','405700tSiYZB','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.','2478492qJeAsb','4324726FXoAtl','log','133387avypTx','1966494bHEVWz'];_0x50af=function(){return _0x38ca1d;};return _0x50af();}import{getEnabledSessionId}from'./output.js';export async function postEdit(_0x1f25b5){const _0xda1c8f=_0x316a,_0x1b4954={'Akuwo':function(_0x131daf,_0x4487e5){return _0x131daf(_0x4487e5);},'wijtq':'PostToolUse'},_0x35c6cd=await getEnabledSessionId(_0x1f25b5);if(!_0x35c6cd)return;_0x1b4954['Akuwo'](updateBranchTracking,_0x35c6cd);const _0x25080e=await getToken();if(!_0x25080e)return;const _0x93a2b8=_0x1b4954['Akuwo'](getSessionEntry,_0x35c6cd);if(_0x93a2b8){const _0xa45739={'hookSpecificOutput':{'hookEventName':_0x1b4954[_0xda1c8f(0xb5)],'additionalContext':'RANGER:\x20If\x20this\x20change\x20expands\x20the\x20scope\x20of\x20the\x20active\x20feature\x20review,\x20you\x20may\x20need\x20to\x20add\x20a\x20scenario.\x20See\x20Workflow\x201\x20in\x20/ranger.\x20If\x20you\x20decide\x20to\x20add\x20a\x20scenario,\x20you\x20MUST\x20read\x20Workflow\x201\x20IN\x20DETAIL\x20first.\x20Remember:\x20when\x20you\x20finish\x20your\x20work,\x20your\x20final\x20message\x20to\x20the\x20user\x20must\x20direct\x20them\x20to\x20the\x20Ranger\x20feature\x20review\x20dashboard\x20to\x20review\x20(e.g.\x20\x22Go\x20to\x20the\x20Ranger\x20feature\x20dashboard\x20to\x20review:\x20https://dashboard.ranger.net/features/{feature_id}\x22).'}};console['log'](JSON[_0xda1c8f(0xb1)](_0xa45739));return;}const _0x17ac6a={'hookSpecificOutput':{'hookEventName':'PostToolUse','additionalContext':_0xda1c8f(0xb7)}};console[_0xda1c8f(0xae)](JSON['stringify'](_0x17ac6a));}
@@ -1 +1 @@
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
+ (function(_0xcdce3c,_0xc8874a){const _0x55eead=_0x4eec,_0x28664c=_0xcdce3c();while(!![]){try{const _0xd4c3c9=parseInt(_0x55eead(0xf1))/0x1*(parseInt(_0x55eead(0xee))/0x2)+parseInt(_0x55eead(0xea))/0x3*(-parseInt(_0x55eead(0xeb))/0x4)+-parseInt(_0x55eead(0xf0))/0x5+-parseInt(_0x55eead(0xec))/0x6+parseInt(_0x55eead(0xf2))/0x7*(parseInt(_0x55eead(0xe8))/0x8)+parseInt(_0x55eead(0xef))/0x9+parseInt(_0x55eead(0xf3))/0xa*(parseInt(_0x55eead(0xed))/0xb);if(_0xd4c3c9===_0xc8874a)break;else _0x28664c['push'](_0x28664c['shift']());}catch(_0x11d22e){_0x28664c['push'](_0x28664c['shift']());}}}(_0x5501,0xca37e));function _0x5501(){const _0x4050b6=['2947610ChWQzt','2984arKJTf','===\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`.','19605kcVOem','236wAIqQD','4276020NSfXiT','11KkndDC','274BaRTkq','3911724VIdRBg','7636735IbjMmC','8065MnTsJW','30394uMQCQU'];_0x5501=function(){return _0x4050b6;};return _0x5501();}function _0x4eec(_0x5ea75f,_0x5c9254){_0x5ea75f=_0x5ea75f-0xe8;const _0x550166=_0x5501();let _0x4eec57=_0x550166[_0x5ea75f];return _0x4eec57;}import{getToken}from'../utils/keychain.js';import{printBlock,getEnabledSessionId}from'./output.js';export async function preCompact(_0x5e90aa){const _0x4e7cf4=_0x4eec,_0x2739ec={'Myugj':function(_0x1e7acf){return _0x1e7acf();}},_0x1ec2aa=await getEnabledSessionId(_0x5e90aa);if(!_0x1ec2aa)return;try{const _0x1d6929=await _0x2739ec['Myugj'](getToken);if(!_0x1d6929)return;printBlock(_0x4e7cf4(0xe9));}catch{}}
@@ -1 +1 @@
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();}
1
+ function _0x5f5d(_0x161168,_0x26a449){_0x161168=_0x161168-0x191;const _0x153967=_0x1539();let _0x5f5d85=_0x153967[_0x161168];return _0x5f5d85;}function _0x1539(){const _0x44edfb=['90fatXCh','3347712amHDRc','7IvnwRl','10ebJOtA','3032CQbPMp','env','11694309DPDukM','321PKREiK','session_id','1246640zArErz','70106RRsmQv','clear','reason','52115jYmcrV','785784dBqOPV'];_0x1539=function(){return _0x44edfb;};return _0x1539();}(function(_0x3c413e,_0x3874ab){const _0xaba915=_0x5f5d,_0x33216e=_0x3c413e();while(!![]){try{const _0x6c2098=-parseInt(_0xaba915(0x191))/0x1+parseInt(_0xaba915(0x19a))/0x2*(-parseInt(_0xaba915(0x19d))/0x3)+-parseInt(_0xaba915(0x19f))/0x4+parseInt(_0xaba915(0x194))/0x5*(parseInt(_0xaba915(0x196))/0x6)+-parseInt(_0xaba915(0x198))/0x7*(parseInt(_0xaba915(0x195))/0x8)+-parseInt(_0xaba915(0x197))/0x9+parseInt(_0xaba915(0x199))/0xa*(parseInt(_0xaba915(0x19c))/0xb);if(_0x6c2098===_0x3874ab)break;else _0x33216e['push'](_0x33216e['shift']());}catch(_0x506949){_0x33216e['push'](_0x33216e['shift']());}}}(_0x1539,0x321ef));import{isSessionEnabled,recordEnabledSessionCleared}from'../utils/sessionCache.js';import{readHookInput}from'./output.js';export async function sessionEnd(_0x291e24){const _0x4aa97a=_0x5f5d,_0x13e194={'UHKmC':function(_0x126d64){return _0x126d64();},'NLGJI':function(_0x59aebd,_0x26eee2){return _0x59aebd===_0x26eee2;}},_0x3ca883=process[_0x4aa97a(0x19b)]['CLAUDE_SESSION_ID'];let _0x970644=_0x291e24,_0x34ec3b;if(!_0x291e24){if(_0x3ca883&&!isSessionEnabled(_0x3ca883))return;const _0x19dfc0=await _0x13e194['UHKmC'](readHookInput);_0x970644=_0x19dfc0?.[_0x4aa97a(0x19e)]||_0x3ca883,_0x34ec3b=_0x19dfc0?.[_0x4aa97a(0x193)];}if(!_0x970644)return;_0x13e194['NLGJI'](_0x34ec3b,_0x4aa97a(0x192))&&recordEnabledSessionCleared(_0x970644);}