@ranger-testing/ranger-cli 2.4.0 → 2.4.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (70) hide show
  1. package/build/cli.js +1 -1
  2. package/build/commands/addEnv.js +1 -1
  3. package/build/commands/authEncrypt.js +1 -1
  4. package/build/commands/clean.js +1 -1
  5. package/build/commands/config.js +1 -1
  6. package/build/commands/env.js +1 -1
  7. package/build/commands/feature.js +1 -1
  8. package/build/commands/hook.js +1 -1
  9. package/build/commands/hooks/autoPrompt.js +1 -1
  10. package/build/commands/hooks/disable.js +1 -1
  11. package/build/commands/hooks/enable.js +1 -1
  12. package/build/commands/hooks/exitPlanMode.js +1 -1
  13. package/build/commands/hooks/index.js +1 -1
  14. package/build/commands/hooks/output.js +1 -1
  15. package/build/commands/hooks/planReminder.js +1 -1
  16. package/build/commands/hooks/planStart.js +1 -1
  17. package/build/commands/hooks/postEdit.js +1 -1
  18. package/build/commands/hooks/preCompact.js +1 -1
  19. package/build/commands/hooks/sessionEnd.js +1 -1
  20. package/build/commands/hooks/sessionStart.js +1 -1
  21. package/build/commands/hooks/stopHook.js +1 -1
  22. package/build/commands/index.js +1 -1
  23. package/build/commands/login.js +1 -1
  24. package/build/commands/setup/claude.js +1 -1
  25. package/build/commands/setup/opencode.js +1 -1
  26. package/build/commands/setupCi.js +1 -1
  27. package/build/commands/skillup.js +1 -1
  28. package/build/commands/start.js +1 -1
  29. package/build/commands/status.js +1 -1
  30. package/build/commands/update.js +1 -1
  31. package/build/commands/updateEnv.js +1 -1
  32. package/build/commands/useEnv.js +1 -1
  33. package/build/commands/utils/activeProfile.js +1 -1
  34. package/build/commands/utils/agentEnv.js +1 -1
  35. package/build/commands/utils/browserSessionsApi.js +1 -1
  36. package/build/commands/utils/claudeConfig.js +1 -1
  37. package/build/commands/utils/claudePlugin.js +1 -1
  38. package/build/commands/utils/crypto.js +1 -1
  39. package/build/commands/utils/desirePathLog.js +1 -1
  40. package/build/commands/utils/deviceAuth.js +1 -1
  41. package/build/commands/utils/environment.js +1 -1
  42. package/build/commands/utils/featureApi.js +1 -1
  43. package/build/commands/utils/featureReportGenerator.js +1 -1
  44. package/build/commands/utils/fixWebmDuration.js +1 -1
  45. package/build/commands/utils/git.js +1 -1
  46. package/build/commands/utils/keychain.js +1 -1
  47. package/build/commands/utils/localAgentInstallationsApi.js +1 -1
  48. package/build/commands/utils/mcpImageBase64.js +1 -1
  49. package/build/commands/utils/model.js +1 -1
  50. package/build/commands/utils/opencodeConfig.js +1 -1
  51. package/build/commands/utils/playwrightCli.js +1 -1
  52. package/build/commands/utils/profileMessages.js +1 -1
  53. package/build/commands/utils/profileSetupBanner.js +1 -1
  54. package/build/commands/utils/rangerConfig.js +1 -1
  55. package/build/commands/utils/rangerRoot.js +1 -1
  56. package/build/commands/utils/reportGenerator.js +1 -1
  57. package/build/commands/utils/retry.js +1 -1
  58. package/build/commands/utils/sessionCache.js +1 -1
  59. package/build/commands/utils/settings.js +1 -1
  60. package/build/commands/utils/skillContent.js +1 -1
  61. package/build/commands/utils/skills.js +1 -1
  62. package/build/commands/utils/stitchWebmFiles.js +1 -1
  63. package/build/commands/utils/telemetry.js +1 -1
  64. package/build/commands/utils/traceSnapshotMapper.js +1 -1
  65. package/build/commands/utils/userApi.js +1 -1
  66. package/build/commands/utils/version.js +1 -1
  67. package/build/commands/verifyFeature.js +1 -1
  68. package/build/commands/verifyFeatureCli.js +1 -1
  69. package/build/commands/verifyInBrowser.js +1 -1
  70. package/package.json +1 -1
@@ -1 +1 @@
1
- const _0x481fb6=_0x1288;(function(_0x1e82de,_0x69ddc5){const _0x3c4c3f=_0x1288,_0x5eba0c=_0x1e82de();while(!![]){try{const _0x1ee55a=-parseInt(_0x3c4c3f(0x105))/0x1*(-parseInt(_0x3c4c3f(0xf9))/0x2)+parseInt(_0x3c4c3f(0xf6))/0x3+-parseInt(_0x3c4c3f(0xf7))/0x4*(-parseInt(_0x3c4c3f(0xfc))/0x5)+parseInt(_0x3c4c3f(0xee))/0x6+parseInt(_0x3c4c3f(0xfe))/0x7+-parseInt(_0x3c4c3f(0xef))/0x8*(-parseInt(_0x3c4c3f(0x101))/0x9)+-parseInt(_0x3c4c3f(0xf4))/0xa;if(_0x1ee55a===_0x69ddc5)break;else _0x5eba0c['push'](_0x5eba0c['shift']());}catch(_0x1efc13){_0x5eba0c['push'](_0x5eba0c['shift']());}}}(_0x353b,0xc2a9e));import{existsSync}from'fs';import{loadSettings,saveSettings,getNestedValue,setNestedValue,deleteNestedValue,formatSettings,getSettingsPath,getEnvDir}from'./utils/settings.js';const BOOLEAN_KEYS=['headless',_0x481fb6(0xfa)];function parseValue(_0x3cde67,_0x474ac4){const _0x23ce62=_0x481fb6,_0x24b230={'zJEkj':function(_0x2f9262,_0x1590ba){return _0x2f9262===_0x1590ba;},'AYkMX':'false'};if(BOOLEAN_KEYS[_0x23ce62(0xeb)](_0x3cde67)){if(_0x24b230[_0x23ce62(0xf5)](_0x474ac4,'true'))return!![];if(_0x474ac4===_0x24b230['AYkMX'])return![];throw new Error(_0x23ce62(0xed)+_0x3cde67+':\x20expected\x20\x22true\x22\x20or\x20\x22false\x22');}return _0x474ac4;}function _0x1288(_0xe8a91c,_0x1ab06e){_0xe8a91c=_0xe8a91c-0xeb;const _0x353b08=_0x353b();let _0x128840=_0x353b08[_0xe8a91c];return _0x128840;}export async function configSet(_0x41c412,_0x220d3e,_0x386690){const _0x4f6fdd=_0x481fb6,_0x430226={'iNvNm':function(_0x4fe17a,_0xc1e97a){return _0x4fe17a(_0xc1e97a);}},_0x58c627=_0x430226[_0x4f6fdd(0x100)](getEnvDir,_0x41c412);if(!existsSync(_0x58c627))throw new Error(_0x4f6fdd(0x103)+_0x41c412+'\x22\x20does\x20not\x20exist.\x20Run:\x20ranger\x20profile\x20add\x20'+_0x41c412);const _0x2f54d6=await loadSettings(_0x41c412),_0x3931b1=parseValue(_0x220d3e,_0x386690);setNestedValue(_0x2f54d6,_0x220d3e,_0x3931b1),await saveSettings(_0x41c412,_0x2f54d6),console[_0x4f6fdd(0xfb)]('Set\x20'+_0x220d3e+_0x4f6fdd(0xf1)+_0x3931b1);}export async function configGet(_0x42281c,_0xc97fc0){const _0xfc9b72=_0x481fb6,_0x20a73c={'hjEyj':function(_0x1c994c,_0x1c5c13){return _0x1c994c(_0x1c5c13);},'IsEJW':'object'},_0x11c43f=getEnvDir(_0x42281c);if(!_0x20a73c['hjEyj'](existsSync,_0x11c43f))throw new Error('Profile\x20\x22'+_0x42281c+'\x22\x20does\x20not\x20exist.');const _0x53a1f1=await _0x20a73c[_0xfc9b72(0xf2)](loadSettings,_0x42281c),_0x2f4eed=getNestedValue(_0x53a1f1,_0xc97fc0);if(_0x2f4eed===undefined)console[_0xfc9b72(0xfb)](_0xfc9b72(0x102));else typeof _0x2f4eed===_0x20a73c[_0xfc9b72(0xec)]?console['log'](JSON['stringify'](_0x2f4eed,null,0x2)):console['log'](_0x2f4eed);}function _0x353b(){const _0x4f4f49=['Removed\x20','10329116ZmSndA','Key\x20\x22','iNvNm','126zHXfbb','(not\x20set)','Profile\x20\x22','No\x20configuration\x20set\x20for\x20\x22','1qbvqtS','includes','IsEJW','Invalid\x20value\x20for\x20','743580CUkMbG','375112nvGSdt','\x22\x20not\x20found','\x20=\x20','hjEyj','JMRXJ','25730160WpdNbr','zJEkj','2083689CmYbUh','8FqVmFd','\x22\x20does\x20not\x20exist.','179726ZfXdWb','allowInsecureLocalhost','log','824920YfbBwx'];_0x353b=function(){return _0x4f4f49;};return _0x353b();}export async function configList(_0x193e4b){const _0x3829e1=_0x481fb6,_0x394027={'yTlIV':function(_0x435a08,_0x352b9b){return _0x435a08(_0x352b9b);}},_0x5df2db=getSettingsPath(_0x193e4b);if(!_0x394027['yTlIV'](existsSync,_0x5df2db)){const _0x2195a5=getEnvDir(_0x193e4b);if(!existsSync(_0x2195a5))throw new Error(_0x3829e1(0x103)+_0x193e4b+_0x3829e1(0xf8));console[_0x3829e1(0xfb)](_0x3829e1(0x104)+_0x193e4b+'\x22');return;}const _0x51b0c2=await loadSettings(_0x193e4b),_0x5745f3=formatSettings(_0x51b0c2);!_0x5745f3?console['log'](_0x3829e1(0x104)+_0x193e4b+'\x22'):console['log'](_0x5745f3);}export async function configUnset(_0x2bb67a,_0x3a0dfe){const _0x48126d=_0x481fb6,_0x2161ba={'JMRXJ':function(_0x51c641,_0x320c76){return _0x51c641(_0x320c76);},'OZtJn':function(_0x470cba,_0x32e54b,_0x4faebf){return _0x470cba(_0x32e54b,_0x4faebf);}},_0x482451=getEnvDir(_0x2bb67a);if(!existsSync(_0x482451))throw new Error(_0x48126d(0x103)+_0x2bb67a+_0x48126d(0xf8));const _0x238592=await _0x2161ba[_0x48126d(0xf3)](loadSettings,_0x2bb67a),_0x59c039=deleteNestedValue(_0x238592,_0x3a0dfe);_0x59c039?(await _0x2161ba['OZtJn'](saveSettings,_0x2bb67a,_0x238592),console['log'](_0x48126d(0xfd)+_0x3a0dfe)):console[_0x48126d(0xfb)](_0x48126d(0xff)+_0x3a0dfe+_0x48126d(0xf0));}
1
+ const _0x5a0d33=_0x2143;(function(_0x28d253,_0x40a3d5){const _0x47e3be=_0x2143,_0x421cac=_0x28d253();while(!![]){try{const _0x3b4ab9=parseInt(_0x47e3be(0x1dc))/0x1+-parseInt(_0x47e3be(0x1ee))/0x2+-parseInt(_0x47e3be(0x1f3))/0x3*(parseInt(_0x47e3be(0x1f4))/0x4)+parseInt(_0x47e3be(0x1ed))/0x5*(-parseInt(_0x47e3be(0x1e9))/0x6)+-parseInt(_0x47e3be(0x1e7))/0x7+-parseInt(_0x47e3be(0x1fb))/0x8*(-parseInt(_0x47e3be(0x1e1))/0x9)+-parseInt(_0x47e3be(0x1de))/0xa*(-parseInt(_0x47e3be(0x1eb))/0xb);if(_0x3b4ab9===_0x40a3d5)break;else _0x421cac['push'](_0x421cac['shift']());}catch(_0x5cbccb){_0x421cac['push'](_0x421cac['shift']());}}}(_0x2618,0xc2b35));function _0x2618(){const _0x1edfe9=['5926963qNdHkF','object','6YcifPq','madiB','22AIdlPq','false','2339485pHuofd','583316agXOnJ','No\x20configuration\x20set\x20for\x20\x22','iffNI','Bzdwy','headless','14073HwgnOT','508hJNxMd','\x22\x20not\x20found',':\x20expected\x20\x22true\x22\x20or\x20\x22false\x22','true','rJqFH','allowInsecureLocalhost','mWNVH','8FZLeOi','includes','bWzYP','1156946tEEdOY','gsRbQ','2980010cxlYYk','Profile\x20\x22','PiYKQ','11219094VRABsj','DWBqS','xXWOm','GSswR','log','OZzDl'];_0x2618=function(){return _0x1edfe9;};return _0x2618();}function _0x2143(_0x1ee52d,_0x1d3cc5){_0x1ee52d=_0x1ee52d-0x1da;const _0x261893=_0x2618();let _0x214378=_0x261893[_0x1ee52d];return _0x214378;}import{existsSync}from'fs';import{loadSettings,saveSettings,getNestedValue,setNestedValue,deleteNestedValue,formatSettings,getSettingsPath,getEnvDir}from'./utils/settings.js';const BOOLEAN_KEYS=[_0x5a0d33(0x1f2),_0x5a0d33(0x1f9)];function parseValue(_0x153e74,_0x2697df){const _0x49e294=_0x5a0d33,_0x1679bf={'QykVE':function(_0x333503,_0x52566c){return _0x333503===_0x52566c;},'mWNVH':_0x49e294(0x1f7),'gsRbQ':_0x49e294(0x1ec)};if(BOOLEAN_KEYS[_0x49e294(0x1da)](_0x153e74)){if(_0x1679bf['QykVE'](_0x2697df,_0x1679bf[_0x49e294(0x1fa)]))return!![];if(_0x2697df===_0x1679bf[_0x49e294(0x1dd)])return![];throw new Error('Invalid\x20value\x20for\x20'+_0x153e74+_0x49e294(0x1f6));}return _0x2697df;}export async function configSet(_0x533ebf,_0xa792a,_0x1b162a){const _0x16cc90=_0x5a0d33,_0x5bf705={'xXWOm':function(_0x352d9b,_0x5b7772){return _0x352d9b(_0x5b7772);},'uiqqs':function(_0x45e508,_0x23b16b){return _0x45e508(_0x23b16b);},'OZzDl':function(_0x369816,_0x1f4794,_0xaff229){return _0x369816(_0x1f4794,_0xaff229);},'madiB':function(_0x5cdc11,_0x5baa05,_0x568676,_0x5e96df){return _0x5cdc11(_0x5baa05,_0x568676,_0x5e96df);}},_0x5b9f08=getEnvDir(_0x533ebf);if(!_0x5bf705[_0x16cc90(0x1e3)](existsSync,_0x5b9f08))throw new Error(_0x16cc90(0x1df)+_0x533ebf+'\x22\x20does\x20not\x20exist.\x20Run:\x20ranger\x20profile\x20add\x20'+_0x533ebf);const _0x181a10=await _0x5bf705['uiqqs'](loadSettings,_0x533ebf),_0x4743a8=_0x5bf705[_0x16cc90(0x1e6)](parseValue,_0xa792a,_0x1b162a);_0x5bf705[_0x16cc90(0x1ea)](setNestedValue,_0x181a10,_0xa792a,_0x4743a8),await saveSettings(_0x533ebf,_0x181a10),console['log']('Set\x20'+_0xa792a+'\x20=\x20'+_0x4743a8);}export async function configGet(_0x53e392,_0x142bfe){const _0x15e838=_0x5a0d33,_0x3d38fa={'bWzYP':function(_0x1c9ffc,_0x20dba7){return _0x1c9ffc(_0x20dba7);},'iffNI':function(_0x16fe1d,_0x8f2381){return _0x16fe1d(_0x8f2381);},'YYjGZ':function(_0x48dd2f,_0x22f5eb,_0x51cf14){return _0x48dd2f(_0x22f5eb,_0x51cf14);},'PiYKQ':function(_0x18669b,_0x30464c){return _0x18669b===_0x30464c;},'UgzhM':_0x15e838(0x1e8)},_0x5abbc3=_0x3d38fa[_0x15e838(0x1db)](getEnvDir,_0x53e392);if(!existsSync(_0x5abbc3))throw new Error(_0x15e838(0x1df)+_0x53e392+'\x22\x20does\x20not\x20exist.');const _0x151f36=await _0x3d38fa[_0x15e838(0x1f0)](loadSettings,_0x53e392),_0x45067f=_0x3d38fa['YYjGZ'](getNestedValue,_0x151f36,_0x142bfe);if(_0x3d38fa[_0x15e838(0x1e0)](_0x45067f,undefined))console['log']('(not\x20set)');else typeof _0x45067f===_0x3d38fa['UgzhM']?console[_0x15e838(0x1e5)](JSON['stringify'](_0x45067f,null,0x2)):console[_0x15e838(0x1e5)](_0x45067f);}export async function configList(_0x4ca800){const _0x360d57=_0x5a0d33,_0x19b545={'GSswR':function(_0x4f0481,_0x190b58){return _0x4f0481(_0x190b58);},'Bzdwy':function(_0x1923a8,_0xd4b71d){return _0x1923a8(_0xd4b71d);},'DWBqS':function(_0xdcde7e,_0x5c0e70){return _0xdcde7e(_0x5c0e70);}},_0xedf3da=getSettingsPath(_0x4ca800);if(!existsSync(_0xedf3da)){const _0x23121e=_0x19b545[_0x360d57(0x1e4)](getEnvDir,_0x4ca800);if(!_0x19b545[_0x360d57(0x1f1)](existsSync,_0x23121e))throw new Error(_0x360d57(0x1df)+_0x4ca800+'\x22\x20does\x20not\x20exist.');console[_0x360d57(0x1e5)]('No\x20configuration\x20set\x20for\x20\x22'+_0x4ca800+'\x22');return;}const _0x1518ba=await _0x19b545[_0x360d57(0x1e2)](loadSettings,_0x4ca800),_0x1c3289=_0x19b545['GSswR'](formatSettings,_0x1518ba);!_0x1c3289?console['log'](_0x360d57(0x1ef)+_0x4ca800+'\x22'):console['log'](_0x1c3289);}export async function configUnset(_0x1a21cf,_0x1dbbb3){const _0x10a1a=_0x5a0d33,_0x213c84={'lQQNz':function(_0x565ba5,_0x51b57d,_0x2a0647){return _0x565ba5(_0x51b57d,_0x2a0647);},'rJqFH':function(_0x1406f8,_0x14276b,_0x7931ee){return _0x1406f8(_0x14276b,_0x7931ee);}},_0x2c622e=getEnvDir(_0x1a21cf);if(!existsSync(_0x2c622e))throw new Error(_0x10a1a(0x1df)+_0x1a21cf+'\x22\x20does\x20not\x20exist.');const _0x18ba85=await loadSettings(_0x1a21cf),_0x45671b=_0x213c84['lQQNz'](deleteNestedValue,_0x18ba85,_0x1dbbb3);_0x45671b?(await _0x213c84[_0x10a1a(0x1f8)](saveSettings,_0x1a21cf,_0x18ba85),console['log']('Removed\x20'+_0x1dbbb3)):console['log']('Key\x20\x22'+_0x1dbbb3+_0x10a1a(0x1f5));}
@@ -1 +1 @@
1
- const _0x21df93=_0x32ee;(function(_0x1ae23e,_0xc2b3c9){const _0x44f300=_0x32ee,_0x1762aa=_0x1ae23e();while(!![]){try{const _0x369fc4=-parseInt(_0x44f300(0xec))/0x1*(parseInt(_0x44f300(0xe2))/0x2)+parseInt(_0x44f300(0xeb))/0x3*(parseInt(_0x44f300(0xde))/0x4)+parseInt(_0x44f300(0xf0))/0x5*(-parseInt(_0x44f300(0xf8))/0x6)+parseInt(_0x44f300(0xe7))/0x7*(parseInt(_0x44f300(0xf7))/0x8)+-parseInt(_0x44f300(0xdc))/0x9*(parseInt(_0x44f300(0xf2))/0xa)+parseInt(_0x44f300(0xee))/0xb+-parseInt(_0x44f300(0xe0))/0xc*(-parseInt(_0x44f300(0xf9))/0xd);if(_0x369fc4===_0xc2b3c9)break;else _0x1762aa['push'](_0x1762aa['shift']());}catch(_0x555668){_0x1762aa['push'](_0x1762aa['shift']());}}}(_0xa731,0xe3ee3));import{readdir,stat}from'fs/promises';import{join}from'path';function _0xa731(){const _0xb8b7c9=['672078IUGvpo','push','114190JSulXJ','mNRzu','14150lINHdj','local','TdZVD','log','environmentDetails','4152yUXKHe','30aMQwzr','18642mHoeEG','sort','2466daifzc','legacy','4HEGhPt','\x20\x20\x20\x20\x20\x20URL:\x20','14268ezxTGd','Run:\x20ranger\x20profile\x20add\x20<profile-name>','57190vTEwmZ','ruIAM','includes','isDirectory','sessions','203RzAzGm','\x20\x20\x20\x20\x20\x20Details:\x20','bug-bashes','\x0a*\x20=\x20active\x20profile','4539009xwfpAt','65oCjzop','length'];_0xa731=function(){return _0xb8b7c9;};return _0xa731();}import{existsSync}from'fs';import{getRangerDir}from'./utils/rangerRoot.js';function _0x32ee(_0x9fcefc,_0x513296){_0x9fcefc=_0x9fcefc-0xdc;const _0xa73146=_0xa731();let _0x32ee05=_0xa73146[_0x9fcefc];return _0x32ee05;}import{loadSettings}from'./utils/settings.js';import{readActiveProfileName}from'./utils/activeProfile.js';const NON_ENV_DIRS=[_0x21df93(0xe6),_0x21df93(0xe9),'reports',_0x21df93(0xf3),'ci'];export async function getEnvNames(){const _0x310aa1=_0x21df93,_0x1137de={'MRqZd':function(_0x17aceb){return _0x17aceb();},'ruIAM':function(_0x4f227a,_0x403319,_0x4a914b){return _0x4f227a(_0x403319,_0x4a914b);},'WagXU':_0x310aa1(0xf3),'Fzohc':function(_0x82a94,_0x5a78e2){return _0x82a94(_0x5a78e2);},'pNqgS':function(_0x1673b9,_0x45a68f){return _0x1673b9(_0x45a68f);},'sOvxm':'.txt','JemSu':function(_0x470e86,_0x5f438d){return _0x470e86(_0x5f438d);}},_0x1be1f0=getRangerDir();if(!existsSync(_0x1be1f0))return{'envNames':[],'activeEnv':null,'envTypes':{}};const _0x5049ca=await _0x1137de['MRqZd'](readActiveProfileName),_0x3f77ab=[],_0x5310ff={},_0x2fafb4=_0x1137de[_0x310aa1(0xe3)](join,_0x1be1f0,_0x1137de['WagXU']);if(existsSync(_0x2fafb4)){const _0x573093=await _0x1137de['Fzohc'](readdir,_0x2fafb4);for(const _0x134268 of _0x573093){const _0xbd4ce8=join(_0x2fafb4,_0x134268),_0x4db331=await stat(_0xbd4ce8);_0x4db331[_0x310aa1(0xe5)]()&&(_0x3f77ab[_0x310aa1(0xef)](_0x134268),_0x5310ff[_0x134268]=_0x310aa1(0xf3));}}const _0x5b637c=join(_0x1be1f0,'ci');if(existsSync(_0x5b637c)){const _0x32134d=await readdir(_0x5b637c);for(const _0x4a23b6 of _0x32134d){const _0x576307=join(_0x5b637c,_0x4a23b6),_0x49f769=await stat(_0x576307);_0x49f769[_0x310aa1(0xe5)]()&&(_0x3f77ab['push'](_0x4a23b6),_0x5310ff[_0x4a23b6]='ci');}}const _0x2bbd17=await _0x1137de['pNqgS'](readdir,_0x1be1f0);for(const _0x35eba0 of _0x2bbd17){if(NON_ENV_DIRS['includes'](_0x35eba0))continue;if(_0x35eba0['startsWith']('.'))continue;if(_0x35eba0['endsWith'](_0x1137de['sOvxm']))continue;const _0x3fdb0f=join(_0x1be1f0,_0x35eba0),_0x4dd9e5=await stat(_0x3fdb0f);_0x4dd9e5['isDirectory']()&&_0x1137de['JemSu'](existsSync,_0x1137de[_0x310aa1(0xe3)](join,_0x3fdb0f,'settings.json'))&&(!_0x3f77ab[_0x310aa1(0xe4)](_0x35eba0)&&(_0x3f77ab[_0x310aa1(0xef)](_0x35eba0),_0x5310ff[_0x35eba0]=_0x310aa1(0xdd)));}return{'envNames':_0x3f77ab,'activeEnv':_0x5049ca,'envTypes':_0x5310ff};}export async function envList(){const _0x48a229=_0x21df93,_0xbd561d={'TdZVD':function(_0x1ecfdb){return _0x1ecfdb();},'CjRtb':'\x0aNo\x20profiles\x20found.','mNRzu':_0x48a229(0xf3)},{envNames:_0x2bbfa9,activeEnv:_0x4cc80a,envTypes:_0x3c15f9}=await _0xbd561d[_0x48a229(0xf4)](getEnvNames);if(_0x2bbfa9[_0x48a229(0xed)]===0x0){console[_0x48a229(0xf5)](_0xbd561d['CjRtb']),console[_0x48a229(0xf5)](_0x48a229(0xe1));return;}console['log']('\x0aProfiles:');for(const _0x1f20f0 of _0x2bbfa9[_0x48a229(0xfa)]()){const _0x18fff7=_0x1f20f0===_0x4cc80a,_0x1a5dc0=_0x3c15f9[_0x1f20f0]||_0xbd561d[_0x48a229(0xf1)],_0x53bb81=await loadSettings(_0x1f20f0),_0x35c737=_0x1a5dc0===_0x48a229(0xdd)?'':'\x20['+_0x1a5dc0+']';console[_0x48a229(0xf5)]('\x20\x20'+(_0x18fff7?'*\x20':'\x20\x20')+_0x1f20f0+_0x35c737),_0x53bb81['baseUrl']&&console[_0x48a229(0xf5)](_0x48a229(0xdf)+_0x53bb81['baseUrl']),_0x53bb81['environmentDetails']&&console[_0x48a229(0xf5)](_0x48a229(0xe8)+_0x53bb81[_0x48a229(0xf6)]);}_0x4cc80a&&console[_0x48a229(0xf5)](_0x48a229(0xea));}
1
+ const _0x4fbd60=_0x49f4;(function(_0x3cf334,_0x273ad9){const _0x4b03cf=_0x49f4,_0x596ced=_0x3cf334();while(!![]){try{const _0x225770=parseInt(_0x4b03cf(0x143))/0x1+-parseInt(_0x4b03cf(0x146))/0x2*(parseInt(_0x4b03cf(0x151))/0x3)+-parseInt(_0x4b03cf(0x14b))/0x4+-parseInt(_0x4b03cf(0x13d))/0x5*(-parseInt(_0x4b03cf(0x14e))/0x6)+parseInt(_0x4b03cf(0x13b))/0x7+parseInt(_0x4b03cf(0x14c))/0x8+-parseInt(_0x4b03cf(0x13c))/0x9;if(_0x225770===_0x273ad9)break;else _0x596ced['push'](_0x596ced['shift']());}catch(_0xcdf8c3){_0x596ced['push'](_0x596ced['shift']());}}}(_0x1cb6,0x3e2f1));import{readdir,stat}from'fs/promises';import{join}from'path';function _0x1cb6(){const _0x613860=['sort','log','includes','322736QtJnJw','3373432hspoZN','LlGLx','218292sXHBCv','\x20\x20\x20\x20\x20\x20Details:\x20','baseUrl','5547CREYHz','push','startsWith','436548TsucpL','4479417yJooCK','25DRinjb','isDirectory','\x20\x20\x20\x20\x20\x20URL:\x20','xKWNV','.txt','gnJvG','246656ROPgwq','sessions','length','86PbiLKB','local'];_0x1cb6=function(){return _0x613860;};return _0x1cb6();}import{existsSync}from'fs';import{getRangerDir}from'./utils/rangerRoot.js';import{loadSettings}from'./utils/settings.js';import{readActiveProfileName}from'./utils/activeProfile.js';function _0x49f4(_0x4f2f66,_0x39ea8c){_0x4f2f66=_0x4f2f66-0x13b;const _0x1cb6a8=_0x1cb6();let _0x49f457=_0x1cb6a8[_0x4f2f66];return _0x49f457;}const NON_ENV_DIRS=[_0x4fbd60(0x144),'bug-bashes','reports','local','ci'];export async function getEnvNames(){const _0x52b723=_0x4fbd60,_0x53ff07={'Ztfkw':function(_0x42b4c5){return _0x42b4c5();},'xKWNV':function(_0x1bd2dd,_0x557d14,_0x50ea30){return _0x1bd2dd(_0x557d14,_0x50ea30);},'pJjQI':function(_0x2aaacb,_0x8de35a){return _0x2aaacb(_0x8de35a);},'LlGLx':function(_0x13489c,_0x1afc62){return _0x13489c(_0x1afc62);},'CQRYZ':_0x52b723(0x147),'KcSlG':_0x52b723(0x141),'gnJvG':'legacy'},_0x418369=getRangerDir();if(!existsSync(_0x418369))return{'envNames':[],'activeEnv':null,'envTypes':{}};const _0x3554a2=await _0x53ff07['Ztfkw'](readActiveProfileName),_0x50b2f6=[],_0x587ef4={},_0x13b164=_0x53ff07[_0x52b723(0x140)](join,_0x418369,_0x52b723(0x147));if(_0x53ff07['pJjQI'](existsSync,_0x13b164)){const _0x232aa9=await _0x53ff07[_0x52b723(0x14d)](readdir,_0x13b164);for(const _0x189f02 of _0x232aa9){const _0xa06e55=join(_0x13b164,_0x189f02),_0xbeaedc=await stat(_0xa06e55);_0xbeaedc[_0x52b723(0x13e)]()&&(_0x50b2f6['push'](_0x189f02),_0x587ef4[_0x189f02]=_0x53ff07['CQRYZ']);}}const _0x3ac549=join(_0x418369,'ci');if(_0x53ff07['pJjQI'](existsSync,_0x3ac549)){const _0x5817f5=await _0x53ff07['LlGLx'](readdir,_0x3ac549);for(const _0xc87d66 of _0x5817f5){const _0x3aa39b=join(_0x3ac549,_0xc87d66),_0x580958=await stat(_0x3aa39b);_0x580958[_0x52b723(0x13e)]()&&(_0x50b2f6[_0x52b723(0x152)](_0xc87d66),_0x587ef4[_0xc87d66]='ci');}}const _0x3dcc38=await readdir(_0x418369);for(const _0x55d04a of _0x3dcc38){if(NON_ENV_DIRS['includes'](_0x55d04a))continue;if(_0x55d04a[_0x52b723(0x153)]('.'))continue;if(_0x55d04a['endsWith'](_0x53ff07['KcSlG']))continue;const _0x2b1a74=_0x53ff07[_0x52b723(0x140)](join,_0x418369,_0x55d04a),_0x4182e1=await stat(_0x2b1a74);_0x4182e1['isDirectory']()&&existsSync(join(_0x2b1a74,'settings.json'))&&(!_0x50b2f6[_0x52b723(0x14a)](_0x55d04a)&&(_0x50b2f6['push'](_0x55d04a),_0x587ef4[_0x55d04a]=_0x53ff07[_0x52b723(0x142)]));}return{'envNames':_0x50b2f6,'activeEnv':_0x3554a2,'envTypes':_0x587ef4};}export async function envList(){const _0x2861e5=_0x4fbd60,_0x46ede1={'jBfnp':'\x0aNo\x20profiles\x20found.','vbLga':'Run:\x20ranger\x20profile\x20add\x20<profile-name>','UfXcH':function(_0x35ba86,_0x172712){return _0x35ba86===_0x172712;},'cuYaJ':function(_0x1cc565,_0x5091df){return _0x1cc565===_0x5091df;}},{envNames:_0xa2f4a2,activeEnv:_0x286a1c,envTypes:_0xef44aa}=await getEnvNames();if(_0xa2f4a2[_0x2861e5(0x145)]===0x0){console['log'](_0x46ede1['jBfnp']),console['log'](_0x46ede1['vbLga']);return;}console['log']('\x0aProfiles:');for(const _0x527d94 of _0xa2f4a2[_0x2861e5(0x148)]()){const _0x20ab70=_0x46ede1['UfXcH'](_0x527d94,_0x286a1c),_0x58f3fa=_0xef44aa[_0x527d94]||'local',_0x411cfc=await loadSettings(_0x527d94),_0x2dc841=_0x46ede1['cuYaJ'](_0x58f3fa,'legacy')?'':'\x20['+_0x58f3fa+']';console[_0x2861e5(0x149)]('\x20\x20'+(_0x20ab70?'*\x20':'\x20\x20')+_0x527d94+_0x2dc841),_0x411cfc[_0x2861e5(0x150)]&&console[_0x2861e5(0x149)](_0x2861e5(0x13f)+_0x411cfc[_0x2861e5(0x150)]),_0x411cfc['environmentDetails']&&console['log'](_0x2861e5(0x14f)+_0x411cfc['environmentDetails']);}_0x286a1c&&console['log']('\x0a*\x20=\x20active\x20profile');}
@@ -1 +1 @@
1
- const _0x5bfdbb=_0x3f3d;(function(_0x4d96f4,_0x165044){const _0x3557ec=_0x3f3d,_0x4d9c1b=_0x4d96f4();while(!![]){try{const _0x43402d=-parseInt(_0x3557ec(0x298))/0x1+-parseInt(_0x3557ec(0x23a))/0x2+-parseInt(_0x3557ec(0x1ee))/0x3+parseInt(_0x3557ec(0x28e))/0x4*(parseInt(_0x3557ec(0x2ac))/0x5)+parseInt(_0x3557ec(0x27f))/0x6*(parseInt(_0x3557ec(0x24b))/0x7)+-parseInt(_0x3557ec(0x215))/0x8+-parseInt(_0x3557ec(0x20d))/0x9*(-parseInt(_0x3557ec(0x26f))/0xa);if(_0x43402d===_0x165044)break;else _0x4d9c1b['push'](_0x4d9c1b['shift']());}catch(_0x53336d){_0x4d9c1b['push'](_0x4d9c1b['shift']());}}}(_0x2968,0xa7e78));import{readFile,writeFile,mkdir}from'fs/promises';function _0x2968(){const _0x4ce036=['XbwyG','\x20\x20\x20\x20\x20\x20Incomplete:\x20','currentBranch','items','CLAUDE_SESSION_ID','\x20\x20\x20\x20','gitRepoUrl','sxmVt','type','VLQHK','24980AVjvTS','gKqDW','log','rckxv','Not\x20in\x20a\x20git\x20repository.','location','VrEnI','/artifacts/','limit','RHjnX','stdin','.md','rAlGt','gitBranch','ZcobQ','phkyv','\x20\x20\x20\x20\x20\x20Cancelled:\x20','\x0a✅\x20Restored\x20feature\x20review:\x20','stepName','canonicalFlow','feedback-images','iteration','\x0a📋\x20Feedback\x20for:\x20','blockedReason','createdAt','SgegZ','kIIby','\x20unaddressed\x20reviewer\x20comment(s)\x20across\x20','\x20\x20\x20Updated\x20branch\x20to:\x20','VGmmE','dashboardUrl','replace','235155OpkJwn','git\x20remote\x20get-url\x20origin','kCjRW','\x20>\x20','join','YNoZq','jOCmE','\x20\x20\x20Description:\x20','scenarios','LQnQP','content','\x20\x20\x20Progress:\x20','.png','isInteger','agentResponse','jGeSp','Screenshot\x20','\x20\x20\x20\x20\x20📋\x20Selector:\x20','\x1b[1m','yzjrk','after','sLjnl','SLYGv','active-feature.txt','utf-8','\x20\x20\x20ID:\x20','comment_','VBvLP','push','Unknown','assetType','81QGoYhk','lTJsR','teIbH','filter','textContent','github.com/','kbfCk','verified','10580016HytciK','approved','tjUhE','description','storage','wybZb','stdout','canceledReason','aigiX','wIOFW','xtQHB','name','wJcbR','JYDWb','completed','\x20—\x20','any','\x20/\x20','KhOsb','BFYJk','jixjB','notes','incomplete','\x0a✅\x20Feature\x20review\x20created:\x20','assets','verification_in_progress','ready','verifiedItems','\x0a❌\x20All\x20scenarios\x20were\x20excluded.','...','ywXmW','DrzDE','ViMcM','UESZu','lGUSp','acJkO','status','2390444rGCUJQ','\x20(v','XYyul','HqPCk','\x0aGenerating\x20report...','zfoyR','authorName','gJAhd','closed','\x20\x20\x20\x20\x20Progress:\x20','submittedAt','Cannot\x20add\x20scenario:\x20feature\x20review\x20has\x20an\x20active\x20review.\x20Please\x20finish\x20your\x20review\x20first:\x20','totalCount','write','PaMIA','trimEnd','checklistItems','5678666yMnvvM','incompleteReason','HVdek','Scenario\x20','xMmOm','toLocaleString','error','coordinates','qvwme','latestReview','\x20blocked','\x20scenario(s).','1|5|3|0|2|4','screenshotUrls','nmeXd','\x20\x20\x20\x20\x20📍\x20Annotation:\x20','rEdgH','spatial','sjwaX','currentSessionId','UTrli','fbYzu','No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','excludeScenarios','\x0a❌\x20Invalid\x20scenario\x20number(s):\x20','dbPnH','\x20Session\x20','completedAt','\x20in\x20progress','unaddressedComments','version','env','toLocaleDateString','stats','HprmN','\x20--current-branch','2701310rxjFkP','sessionId','browserSessionId','pipe','GFetF','\x0a\x20\x20\x20Scenarios:','trim','domRef','toFixed','output','\x1b[0m','isTTY','pop','exit','map','length','6laVgIK','No\x20scenarios\x20found.','\x20\x20\x20Branch:\x20','\x20\x20💬\x20','qIbmd','in_progress','\x20--limit\x20','\x20\x20\x20Run\x20`ranger\x20get-review`\x20to\x20see\x20what\x20needs\x20to\x20be\x20fixed.','\x0a❌\x20No\x20scenarios\x20found\x20to\x20include.','bBwbX','Step\x20','selector','scenario','Run:\x20ranger\x20create\x20\x22<name>\x22\x20to\x20create\x20a\x20new\x20feature\x20review','blocked','148jnQHWt','\x0aSearching\x20for\x20feature\x20reviews\x20matching:\x20','ETmkB','\x0a✅\x20Session\x20','Cannot\x20conclude\x20session\x20with\x20status:\x20','\x20\x20\x20▶️\x20Started\x20session\x20','Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','\x0a❌\x20No\x20scenarios\x20found\x20to\x20edit.','omzQZ','xlNWy','143424vXuLyk','\x20\x20\x20\x20\x20ID:\x20','warn','find','ppVik','arrayBuffer','from','terminalReason',':\x20\x22','YtsGb'];_0x2968=function(){return _0x4ce036;};return _0x2968();}import{join}from'path';import{existsSync}from'fs';function _0x3f3d(_0x323135,_0x2f7057){_0x323135=_0x323135-0x1ee;const _0x29689b=_0x2968();let _0x3f3d53=_0x29689b[_0x323135];return _0x3f3d53;}import{execSync}from'child_process';import _0xda342 from'inquirer';import{createFeature,listFeatures,getFeature,updateFeature,getFeatureReport,getFeatureReportMarkdown,listFeatureSessions,startSession,concludeSession,createChecklistItem,getActionItems,getItemFeedback,softDeleteFeature,restoreFeature,updateChecklistItem}from'./utils/featureApi.js';import{getBrowserSessionSteps}from'./utils/browserSessionsApi.js';import{getApiBaseUrl}from'./utils/environment.js';import{getRangerDir}from'./utils/rangerRoot.js';import{registerSession}from'./utils/sessionCache.js';import{getEnvNames}from'./env.js';import{formatProfileRequiredMessage}from'./utils/profileMessages.js';const ACTIVE_FEATURE_FILE=_0x5bfdbb(0x205),bold=_0x51638e=>_0x5bfdbb(0x200)+_0x51638e+_0x5bfdbb(0x279);function getGitRepoUrl(){const _0x157ce4=_0x5bfdbb,_0x14f95d={'jOCmE':function(_0x158c4a,_0x2190d0,_0x12e781){return _0x158c4a(_0x2190d0,_0x12e781);},'KhOsb':_0x157ce4(0x1ef),'hxEhm':'utf-8','LQnQP':_0x157ce4(0x212)};try{const _0x5025b5=_0x14f95d[_0x157ce4(0x1f4)](execSync,_0x14f95d[_0x157ce4(0x227)],{'encoding':_0x14f95d['hxEhm'],'stdio':['pipe',_0x157ce4(0x272),'pipe']})[_0x157ce4(0x275)]();return _0x5025b5[_0x157ce4(0x2cb)](/\.git$/,'')['replace'](/^git@github\.com:/,_0x14f95d[_0x157ce4(0x1f7)])['replace'](/^https?:\/\//,'');}catch{return undefined;}}function getGitBranch(){const _0x455fb2=_0x5bfdbb,_0x37bd74={'yzjrk':'git\x20rev-parse\x20--abbrev-ref\x20HEAD','JgRTy':_0x455fb2(0x206),'rAlGt':_0x455fb2(0x272)};try{return execSync(_0x37bd74[_0x455fb2(0x201)],{'encoding':_0x37bd74['JgRTy'],'stdio':[_0x37bd74['rAlGt'],_0x455fb2(0x272),_0x37bd74[_0x455fb2(0x2b8)]]})[_0x455fb2(0x275)]();}catch{return undefined;}}export async function getActiveFeatureId(){const _0xfc0dbb=_0x5bfdbb,_0x541bdc={'lTJsR':function(_0x570046,_0x3742eb,_0x32023f){return _0x570046(_0x3742eb,_0x32023f);},'XYyul':function(_0x16f863,_0x18a361){return _0x16f863(_0x18a361);},'aigiX':function(_0x48f7dd,_0x1f0b75,_0x4c1077){return _0x48f7dd(_0x1f0b75,_0x4c1077);}},_0x674030=_0x541bdc[_0xfc0dbb(0x20e)](join,getRangerDir(),ACTIVE_FEATURE_FILE);if(!_0x541bdc[_0xfc0dbb(0x23c)](existsSync,_0x674030))return null;try{const _0x165e6d=await _0x541bdc[_0xfc0dbb(0x21d)](readFile,_0x674030,_0xfc0dbb(0x206));return _0x165e6d[_0xfc0dbb(0x275)]()||null;}catch{return null;}}async function setActiveFeatureId(_0x326c17){const _0x5568e1={'BpGkF':function(_0x320e6e,_0x1d3b40){return _0x320e6e(_0x1d3b40);}},_0x5c19bf=getRangerDir(),_0x1a1b50=join(_0x5c19bf,ACTIVE_FEATURE_FILE);!_0x5568e1['BpGkF'](existsSync,_0x5c19bf)&&await mkdir(_0x5c19bf,{'recursive':!![]}),await writeFile(_0x1a1b50,_0x326c17,'utf-8');}function getProgressDisplay(_0x366816){const _0xa4999d=_0x5bfdbb,_0x89deeb={'ywXmW':function(_0xb1c301,_0x23fbca){return _0xb1c301+_0x23fbca;},'DrzDE':function(_0x3fcc42,_0x14e535){return _0x3fcc42+_0x14e535;},'VBvLP':function(_0x2cdca5,_0x8888b){return _0x2cdca5+_0x8888b;},'HFpwQ':function(_0x24e8a8,_0x53b430){return _0x24e8a8*_0x53b430;},'hlxAI':function(_0xface3d,_0x29b035){return _0xface3d+_0x29b035;},'BFYJk':function(_0x2cf16b,_0x5a5694){return _0x2cf16b>_0x5a5694;}},_0x3e9c6=_0x366816[_0xa4999d(0x230)]||0x0,_0x4625df=_0x366816['verificationInProgressItems']||0x0,_0x41cd45=_0x366816['blockedItems']||0x0,_0x772387=_0x366816['incompleteItems']||0x0,_0x38707d=_0x366816['pendingItems']||0x0,_0x1154fc=_0x89deeb[_0xa4999d(0x233)](_0x89deeb[_0xa4999d(0x234)](_0x89deeb[_0xa4999d(0x209)](_0x3e9c6,_0x4625df),_0x41cd45)+_0x772387,_0x38707d);if(_0x1154fc===0x0)return'-';const _0xafb1d3=0xa,_0xe67c01=Math['round'](_0x89deeb['HFpwQ'](_0x3e9c6/_0x1154fc,_0xafb1d3)),_0x154b00=_0x89deeb['hlxAI']('█'['repeat'](_0xe67c01),'░'['repeat'](_0xafb1d3-_0xe67c01)),_0x245798=[];if(_0x41cd45>0x0)_0x245798['push'](_0x41cd45+_0xa4999d(0x255));if(_0x89deeb[_0xa4999d(0x228)](_0x772387,0x0))_0x245798['push'](_0x772387+'\x20incomplete');if(_0x4625df>0x0)_0x245798[_0xa4999d(0x20a)](_0x4625df+_0xa4999d(0x267));const _0x2c958d=_0x245798[_0xa4999d(0x27e)]>0x0?'\x20('+_0x245798[_0xa4999d(0x1f2)](',\x20')+')':'';return _0x154b00+'\x20'+_0x3e9c6+'/'+_0x1154fc+'\x20verified'+_0x2c958d;}function getCurrentSessionItems(_0x33b9e9,_0x40f614){const _0x214e63=_0x5bfdbb;if(!_0x33b9e9[_0x214e63(0x25e)])return _0x40f614[_0x214e63(0x210)](_0x470381=>!_0x470381[_0x214e63(0x270)]);return _0x40f614[_0x214e63(0x210)](_0x29c3f8=>_0x29c3f8[_0x214e63(0x270)]===_0x33b9e9['currentSessionId']||!_0x29c3f8['sessionId']);}function displayFeature(_0x1e437c,_0x29398c){const _0x49e2b2=_0x5bfdbb,_0x19ed8d={'iYook':function(_0x217b1f,_0x4833c4){return _0x217b1f(_0x4833c4);},'acJkO':function(_0x8c819f,_0x191add){return _0x8c819f>_0x191add;},'bhqWh':_0x49e2b2(0x274),'SLYGv':function(_0x24b32f,_0x38e559){return _0x24b32f===_0x38e559;},'lGUSp':function(_0x1425c0,_0x4c6977){return _0x1425c0===_0x4c6977;},'HDssB':_0x49e2b2(0x242),'rckxv':function(_0x573ca7,_0x59cdef){return _0x573ca7===_0x59cdef;},'hrKxV':_0x49e2b2(0x22e),'jGeSp':function(_0x3e23dd,_0x44650a){return _0x3e23dd!==_0x44650a;},'GFetF':_0x49e2b2(0x216)};console['log']('\x0a'+_0x1e437c['name']+'\x20('+_0x1e437c[_0x49e2b2(0x2ca)]+')');_0x1e437c['stats']&&console['log'](_0x49e2b2(0x1f9)+_0x19ed8d['iYook'](getProgressDisplay,_0x1e437c['stats']));_0x1e437c['description']&&console[_0x49e2b2(0x2ae)](_0x49e2b2(0x1f5)+_0x1e437c[_0x49e2b2(0x218)]);_0x1e437c['gitRepoUrl']&&console[_0x49e2b2(0x2ae)]('\x20\x20\x20Repository:\x20'+_0x1e437c['gitRepoUrl']);_0x1e437c['gitBranch']&&console[_0x49e2b2(0x2ae)](_0x49e2b2(0x281)+_0x1e437c['gitBranch']);console['log']('\x20\x20\x20Created:\x20'+new Date(_0x1e437c['createdAt'])['toLocaleString']());_0x1e437c[_0x49e2b2(0x266)]&&console[_0x49e2b2(0x2ae)]('\x20\x20\x20Completed:\x20'+new Date(_0x1e437c[_0x49e2b2(0x266)])['toLocaleString']());if(_0x29398c&&_0x19ed8d[_0x49e2b2(0x238)](_0x29398c[_0x49e2b2(0x27e)],0x0)){console['log'](_0x19ed8d['bhqWh']);for(let _0x5183dc=0x0;_0x5183dc<_0x29398c['length'];_0x5183dc++){const _0x32ed8d=_0x29398c[_0x5183dc];let _0x2ac18b;if(_0x19ed8d['SLYGv'](_0x32ed8d['status'],'closed')&&_0x32ed8d[_0x49e2b2(0x29f)]===_0x49e2b2(0x216))_0x2ac18b='✅';else{if(_0x32ed8d[_0x49e2b2(0x239)]==='verified')_0x2ac18b='🟢';else{if(_0x19ed8d[_0x49e2b2(0x237)](_0x32ed8d['status'],'incomplete'))_0x2ac18b='🟠';else{if(_0x32ed8d[_0x49e2b2(0x239)]===_0x49e2b2(0x28d))_0x2ac18b='🛑';else{if(_0x32ed8d['status']===_0x19ed8d['HDssB'])_0x2ac18b='⛔';else _0x19ed8d['rckxv'](_0x32ed8d['status'],_0x19ed8d['hrKxV'])?_0x2ac18b='⏳':_0x2ac18b='⬜';}}}}const _0xf160d9=_0x32ed8d[_0x49e2b2(0x269)]>0x1?_0x49e2b2(0x23b)+_0x32ed8d['version']+')':'',_0x1001f8=_0x32ed8d['version']>0x1&&_0x32ed8d['parentItemId']&&_0x19ed8d[_0x49e2b2(0x1fd)](_0x32ed8d[_0x49e2b2(0x239)],_0x49e2b2(0x242))&&_0x19ed8d[_0x49e2b2(0x1fd)](_0x32ed8d['status'],_0x49e2b2(0x214))?'\x20[has\x20reviewer\x20feedback]':'';console['log']('\x20\x20\x20'+(_0x5183dc+0x1)+'.\x20'+_0x2ac18b+'\x20'+_0x32ed8d['description']+_0xf160d9+_0x1001f8);_0x19ed8d[_0x49e2b2(0x204)](_0x32ed8d[_0x49e2b2(0x239)],'blocked')&&_0x32ed8d[_0x49e2b2(0x2c3)]&&console['log']('\x20\x20\x20\x20\x20\x20Blocked:\x20'+_0x32ed8d['blockedReason']);_0x19ed8d['lGUSp'](_0x32ed8d['status'],_0x49e2b2(0x22b))&&_0x32ed8d['incompleteReason']&&console[_0x49e2b2(0x2ae)](_0x49e2b2(0x2a3)+_0x32ed8d[_0x49e2b2(0x24c)]);if(_0x32ed8d[_0x49e2b2(0x239)]===_0x49e2b2(0x242)&&_0x19ed8d[_0x49e2b2(0x2af)](_0x32ed8d[_0x49e2b2(0x29f)],_0x19ed8d[_0x49e2b2(0x273)]))console['log']('\x20\x20\x20\x20\x20\x20Approved');else _0x32ed8d[_0x49e2b2(0x239)]===_0x49e2b2(0x242)&&_0x32ed8d[_0x49e2b2(0x21c)]&&console['log'](_0x49e2b2(0x2bc)+_0x32ed8d[_0x49e2b2(0x21c)]);}}}export async function featureCreate(_0x34212a,_0x30f851){const _0x19db35=_0x5bfdbb,_0x106707={'cMQwB':function(_0x4838b0,_0x5760f3){return _0x4838b0===_0x5760f3;},'kbfCk':function(_0x51d757,_0x361cde){return _0x51d757(_0x361cde);},'TLgxh':function(_0x54e13f){return _0x54e13f();},'ZcobQ':'\x0aCreating\x20feature\x20review...','xlNWy':function(_0xafaa,_0x49efad){return _0xafaa(_0x49efad);},'tjUhE':function(_0x391246,_0x201b59,_0x273b65){return _0x391246(_0x201b59,_0x273b65);}},{envNames:_0x8d13f3}=await getEnvNames();_0x106707['cMQwB'](_0x8d13f3['length'],0x0)&&console[_0x19db35(0x29a)]('\x0a'+_0x106707[_0x19db35(0x213)](formatProfileRequiredMessage,_0x5a935f=>bold(_0x5a935f)));const _0x3c9da0=_0x30f851['scenarios']?_0x30f851[_0x19db35(0x1f6)][_0x19db35(0x27d)](_0x4eedd7=>_0x4eedd7[_0x19db35(0x275)]()):[],_0xdcb1e8=_0x106707['TLgxh'](getGitRepoUrl),_0x5331ea=_0x106707['TLgxh'](getGitBranch);console['log'](_0x106707[_0x19db35(0x2ba)]);const _0x5ba2af=await createFeature({'name':_0x34212a,'description':_0x30f851['description'],'checklist':_0x3c9da0,'gitRepoUrl':_0xdcb1e8,'gitBranch':_0x5331ea});await _0x106707[_0x19db35(0x297)](setActiveFeatureId,_0x5ba2af['id']),await tryStartCurrentSession(_0x5ba2af['id']);const _0x245cfe=process['env'][_0x19db35(0x2a6)];_0x245cfe&&_0x106707[_0x19db35(0x217)](registerSession,_0x245cfe,_0x5ba2af['id']),console[_0x19db35(0x2ae)](_0x19db35(0x22c)+_0x5ba2af['id']),displayFeature(_0x5ba2af,_0x5ba2af['checklistItems']),console[_0x19db35(0x2ae)]('\x0a➡️\x20\x20Set\x20as\x20active\x20feature\x20review');}export async function featureList(_0xb85c8a){const _0x20f13d=_0x5bfdbb,_0xa62b13={'RHjnX':function(_0x155b8f){return _0x155b8f();},'sjwaX':function(_0xbba96e,_0x1478a3){return _0xbba96e===_0x1478a3;},'PaMIA':'\x0aNo\x20feature\x20reviews\x20found.','VKxdA':function(_0x1c28ff,_0x316596){return _0x1c28ff>_0x316596;},'cdsCr':function(_0x4b6fa6,_0x494919){return _0x4b6fa6(_0x494919);},'DTCsF':function(_0x2292b9,_0x3ee4d2){return _0x2292b9+_0x3ee4d2;},'Ddcqh':_0x20f13d(0x26e),'bPlWL':'\x20--include-deleted'},_0x6612ae={'limit':_0xb85c8a[_0x20f13d(0x2b4)]??0xa,'offset':_0xb85c8a['offset']??0x0,'includeDeleted':_0xb85c8a['includeDeleted']};_0xb85c8a[_0x20f13d(0x2a4)]&&(_0x6612ae[_0x20f13d(0x2a8)]=getGitRepoUrl(),_0x6612ae[_0x20f13d(0x2b9)]=_0xa62b13[_0x20f13d(0x2b5)](getGitBranch));const _0x4e83c8=await listFeatures(_0x6612ae);if(_0xa62b13[_0x20f13d(0x25d)](_0x4e83c8['items']['length'],0x0)){console[_0x20f13d(0x2ae)](_0xa62b13[_0x20f13d(0x248)]);return;}const _0x1489f2=_0xa62b13['VKxdA'](_0x4e83c8[_0x20f13d(0x246)],_0x4e83c8['items']['length'])?'Showing\x20'+_0x4e83c8['items']['length']+'\x20of\x20'+_0x4e83c8['totalCount']:_0x4e83c8['totalCount']+'\x20feature\x20review(s)\x20found';console['log']('\x0a'+_0x1489f2+':\x0a');for(const _0x5e1543 of _0x4e83c8['items']){const _0x54043c='5|2|1|4|0|3'['split']('|');let _0x1d1dd7=0x0;while(!![]){switch(_0x54043c[_0x1d1dd7++]){case'0':console['log']('\x20\x20\x20Created:\x20'+new Date(_0x5e1543['createdAt'])['toLocaleDateString']());continue;case'1':_0x5e1543[_0x20f13d(0x26c)]&&console['log'](_0x20f13d(0x1f9)+_0xa62b13['cdsCr'](getProgressDisplay,_0x5e1543['stats']));continue;case'2':console['log'](_0x20f13d(0x207)+_0x5e1543['id']);continue;case'3':console['log']('');continue;case'4':_0x5e1543['gitBranch']&&console[_0x20f13d(0x2ae)](_0x20f13d(0x281)+_0x5e1543[_0x20f13d(0x2b9)]);continue;case'5':console['log'](''+_0x5e1543[_0x20f13d(0x220)]);continue;}break;}}const _0x5e8338=_0x6612ae[_0x20f13d(0x2b4)]??0xa,_0xd64b4c=_0xa62b13['DTCsF'](_0x6612ae['offset']??0x0,_0x4e83c8[_0x20f13d(0x2a5)][_0x20f13d(0x27e)]);if(_0xd64b4c<_0x4e83c8['totalCount']){const _0x4f0a1e=_0x5e8338!==0xa?_0x20f13d(0x285)+_0x5e8338:'',_0xdb17de=_0xb85c8a['currentBranch']?_0xa62b13['Ddcqh']:'',_0x1cae55=_0xb85c8a['includeDeleted']?_0xa62b13['bPlWL']:'';console[_0x20f13d(0x2ae)]('Next\x20page:\x20ranger\x20list\x20--offset\x20'+_0xd64b4c+_0x4f0a1e+_0xdb17de+_0x1cae55);}}export async function featureShow(_0x249973){const _0x430a93=_0x5bfdbb,_0x591dbf={'TvIjG':_0x430a93(0x261),'wIOFW':function(_0x425b40,_0x34137d,_0x556dce){return _0x425b40(_0x34137d,_0x556dce);}},_0x1a6008=_0x249973||await getActiveFeatureId();if(!_0x1a6008)throw new Error(_0x591dbf['TvIjG']);const _0x5e7703=await getFeature(_0x1a6008);_0x591dbf[_0x430a93(0x21e)](displayFeature,_0x5e7703,_0x5e7703['checklistItems']);}export async function featureResume(_0x303485){const _0x121ae2=_0x5bfdbb,_0x2da828={'XbwyG':function(_0x4d51b6,_0x530270){return _0x4d51b6(_0x530270);},'ViMcM':function(_0xd540dd){return _0xd540dd();},'AlvHM':function(_0x569b94,_0x3c48a3){return _0x569b94!==_0x3c48a3;},'xtQHB':function(_0x58e059,_0x163c13,_0x374db8){return _0x58e059(_0x163c13,_0x374db8);},'QnfmN':function(_0x4a0838,_0x26c5a2,_0x29eaba){return _0x4a0838(_0x26c5a2,_0x29eaba);},'qvwme':function(_0x11968b,_0xfc223){return _0x11968b&&_0xfc223;},'mtJuM':_0x121ae2(0x2b0),'gKqDW':function(_0x5e2cb7,_0x4f6d6e){return _0x5e2cb7||_0x4f6d6e;},'SaZUt':function(_0x2bdd1c,_0x1af925){return _0x2bdd1c(_0x1af925);},'wJcbR':_0x121ae2(0x28c),'XJnHb':function(_0x1a75ad,_0x2db4a9){return _0x1a75ad===_0x2db4a9;},'SgegZ':'\x0aNon-interactive\x20mode\x20detected.\x20Multiple\x20feature\x20reviews\x20found:','kCjRW':'Please\x20specify\x20the\x20feature\x20review\x20ID:\x20ranger\x20resume\x20<id>','wXRJk':'list','omzQZ':'selected','kIIby':function(_0x182b8f,_0xa751ce,_0x89d66b){return _0x182b8f(_0xa751ce,_0x89d66b);},'ppVik':function(_0x189be0,_0xafaef1){return _0x189be0(_0xafaef1);}};if(_0x303485){const _0x153c0b=await _0x2da828[_0x121ae2(0x2a2)](getFeature,_0x303485);await _0x2da828[_0x121ae2(0x2a2)](setActiveFeatureId,_0x153c0b['id']);const _0x33a654=_0x2da828['ViMcM'](getGitBranch);_0x33a654&&_0x2da828['AlvHM'](_0x33a654,_0x153c0b['gitBranch'])&&(await updateFeature(_0x153c0b['id'],{'gitBranch':_0x33a654}),console[_0x121ae2(0x2ae)](_0x121ae2(0x2c8)+_0x33a654));console[_0x121ae2(0x2ae)]('\x0a✅\x20Resumed\x20feature\x20review:\x20'+_0x153c0b[_0x121ae2(0x220)]+'\x20('+_0x153c0b['id']+')'),await tryStartCurrentSession(_0x153c0b['id']);const _0x16dbcb=process[_0x121ae2(0x26a)]['CLAUDE_SESSION_ID'];_0x16dbcb&&_0x2da828[_0x121ae2(0x21f)](registerSession,_0x16dbcb,_0x153c0b['id']);_0x2da828['QnfmN'](displayFeature,_0x153c0b,_0x153c0b['checklistItems']),await _0x2da828[_0x121ae2(0x2a2)](printFeedbackNudge,_0x153c0b['id']);return;}const _0x18c4b9=_0x2da828[_0x121ae2(0x235)](getGitRepoUrl),_0x5625ff=_0x2da828[_0x121ae2(0x235)](getGitBranch);if(_0x2da828[_0x121ae2(0x253)](!_0x18c4b9,!_0x5625ff))throw new Error(_0x2da828['mtJuM']);console[_0x121ae2(0x2ae)](_0x121ae2(0x28f)+_0x2da828[_0x121ae2(0x2ad)](_0x18c4b9,'any')+_0x121ae2(0x226)+_0x2da828['gKqDW'](_0x5625ff,_0x121ae2(0x225))+_0x121ae2(0x232));const _0x44bedd=await _0x2da828['SaZUt'](listFeatures,{'gitRepoUrl':_0x18c4b9,'gitBranch':_0x5625ff}),_0x3973af=_0x44bedd['items'][_0x121ae2(0x210)](_0x3109ea=>!_0x3109ea['completedAt']);if(_0x3973af['length']===0x0){console['log']('\x0aNo\x20matching\x20active\x20feature\x20reviews\x20found.'),console['log'](_0x2da828[_0x121ae2(0x221)]);return;}let _0x18576f;if(_0x2da828['XJnHb'](_0x3973af['length'],0x1))_0x18576f=_0x3973af[0x0];else{const _0x49eefa=process[_0x121ae2(0x2b6)][_0x121ae2(0x27a)]&&process[_0x121ae2(0x21b)][_0x121ae2(0x27a)];if(!_0x49eefa){console['log'](_0x2da828[_0x121ae2(0x2c5)]);for(const _0x322712 of _0x3973af){console['log']('\x20\x20'+_0x322712['name']),console[_0x121ae2(0x2ae)](_0x121ae2(0x299)+_0x322712['id']),_0x322712['stats']&&console['log'](_0x121ae2(0x243)+getProgressDisplay(_0x322712['stats'])),_0x322712[_0x121ae2(0x2b9)]&&console[_0x121ae2(0x2ae)]('\x20\x20\x20\x20\x20Branch:\x20'+_0x322712[_0x121ae2(0x2b9)]);}throw new Error(_0x2da828[_0x121ae2(0x1f0)]);}const {selected:_0xd4bbf8}=await _0xda342['prompt']([{'type':_0x2da828['wXRJk'],'name':_0x2da828[_0x121ae2(0x296)],'message':'Multiple\x20feature\x20reviews\x20found.\x20Select\x20one:','choices':_0x3973af[_0x121ae2(0x27d)](_0x4b3260=>({'name':_0x4b3260[_0x121ae2(0x220)]+'\x20('+_0x4b3260['id']+')','value':_0x4b3260['id']}))}]);_0x18576f=_0x3973af[_0x121ae2(0x29b)](_0x5e0fbc=>_0x5e0fbc['id']===_0xd4bbf8);}await setActiveFeatureId(_0x18576f['id']);_0x5625ff&&_0x5625ff!==_0x18576f['gitBranch']&&(await updateFeature(_0x18576f['id'],{'gitBranch':_0x5625ff}),console['log'](_0x121ae2(0x2c8)+_0x5625ff));console[_0x121ae2(0x2ae)]('\x0a✅\x20Resumed\x20feature\x20review:\x20'+_0x18576f[_0x121ae2(0x220)]+'\x20('+_0x18576f['id']+')'),await tryStartCurrentSession(_0x18576f['id']);const _0xecbced=await getFeature(_0x18576f['id']),_0x26fca8=process[_0x121ae2(0x26a)]['CLAUDE_SESSION_ID'];_0x26fca8&&registerSession(_0x26fca8,_0xecbced['id']),_0x2da828[_0x121ae2(0x2c6)](displayFeature,_0xecbced,_0xecbced[_0x121ae2(0x24a)]),await _0x2da828[_0x121ae2(0x29c)](printFeedbackNudge,_0xecbced['id']);}async function printFeedbackNudge(_0x56850a){const _0x302d98=_0x5bfdbb,_0x228c44={'ZHhFn':function(_0x94938e,_0x2a0d88){return _0x94938e>_0x2a0d88;},'HqPCk':_0x302d98(0x286)};try{const {items:_0x373941}=await getActionItems(_0x56850a);let _0x1bc7fa=0x0,_0x5cdf1e=0x0;for(const _0x4436e1 of _0x373941){const _0x33031d=await getItemFeedback(_0x56850a,_0x4436e1['id']);_0x228c44['ZHhFn'](_0x33031d['unaddressedComments']['length'],0x0)&&(_0x1bc7fa+=_0x33031d['unaddressedComments']['length'],_0x5cdf1e++);}_0x1bc7fa>0x0&&(console[_0x302d98(0x2ae)]('\x0a⚠️\x20\x20'+_0x1bc7fa+_0x302d98(0x2c7)+_0x5cdf1e+_0x302d98(0x256)),console['log'](_0x228c44[_0x302d98(0x23d)]));}catch{}}async function tryStartCurrentSession(_0xde36b8){const _0xd8bc2=_0x5bfdbb,_0x30b8c7={'xeeRx':function(_0x37c1c6,_0x577b96){return _0x37c1c6(_0x577b96);}};try{const {sessions:_0xb09315}=await _0x30b8c7['xeeRx'](listFeatureSessions,_0xde36b8),_0x439793=_0xb09315['find'](_0x52795e=>_0x52795e['status']===_0xd8bc2(0x22f));_0x439793&&(await startSession(_0xde36b8,_0x439793['id']),console[_0xd8bc2(0x2ae)](_0xd8bc2(0x293)+_0x439793[_0xd8bc2(0x2c1)]));}catch{}}export async function featureReport(_0x17acab,_0x51783e){const _0x1c794a=_0x5bfdbb,_0x596b53={'adHrk':'No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.','rXfqj':'reports','YHuib':function(_0x538bb3,_0x2823eb,_0xd2b604){return _0x538bb3(_0x2823eb,_0xd2b604);},'phkyv':function(_0x48a9bf,_0x5ab0c9,_0x358286,_0x3e6760){return _0x48a9bf(_0x5ab0c9,_0x358286,_0x3e6760);},'sxmVt':_0x1c794a(0x206)},_0x357b4f=_0x17acab||await getActiveFeatureId();if(!_0x357b4f)throw new Error(_0x596b53['adHrk']);console['log'](_0x1c794a(0x23e));const _0x12b1a9=await getFeatureReportMarkdown(_0x357b4f,{'style':_0x51783e['style']}),_0x41f597=_0x51783e[_0x1c794a(0x278)]||join(getRangerDir(),_0x596b53['rXfqj'],_0x357b4f+_0x1c794a(0x2b7)),_0x5377e2=_0x596b53['YHuib'](join,_0x41f597,'..');!existsSync(_0x5377e2)&&await _0x596b53['YHuib'](mkdir,_0x5377e2,{'recursive':!![]}),await _0x596b53[_0x1c794a(0x2bb)](writeFile,_0x41f597,_0x12b1a9,_0x596b53[_0x1c794a(0x2a9)]),console['log']('\x0a✅\x20Report\x20generated:\x20'+_0x41f597);}function getScenarioResult(_0x1e4d17){const _0x28c5b5=_0x5bfdbb,_0x10fbbb={'HprmN':function(_0x3e1b69,_0x12af8e){return _0x3e1b69===_0x12af8e;},'IwUxb':_0x28c5b5(0x242),'gJAhd':_0x28c5b5(0x22e),'nmeXd':_0x28c5b5(0x284)};if(_0x10fbbb['HprmN'](_0x1e4d17[_0x28c5b5(0x239)],_0x10fbbb['IwUxb']))return _0x1e4d17[_0x28c5b5(0x29f)]??'closed';if(_0x10fbbb[_0x28c5b5(0x26d)](_0x1e4d17[_0x28c5b5(0x239)],_0x10fbbb[_0x28c5b5(0x241)]))return _0x10fbbb[_0x28c5b5(0x259)];return _0x1e4d17[_0x28c5b5(0x239)];}function getScenarioRationale(_0x29b654,_0x4cb47a){const _0x128e66=_0x5bfdbb,_0x188ea5={'VrEnI':_0x128e66(0x257)},_0x4b7b78=_0x188ea5[_0x128e66(0x2b2)]['split']('|');let _0x491af7=0x0;while(!![]){switch(_0x4b7b78[_0x491af7++]){case'0':if(_0x29b654['canceledReason'])return _0x29b654['canceledReason'];continue;case'1':if(_0x4cb47a)return _0x4cb47a;continue;case'2':if(_0x29b654[_0x128e66(0x22a)])return _0x29b654[_0x128e66(0x22a)];continue;case'3':if(_0x29b654[_0x128e66(0x24c)])return _0x29b654['incompleteReason'];continue;case'4':return null;case'5':if(_0x29b654['blockedReason'])return _0x29b654['blockedReason'];continue;}break;}}export async function featureReportPrDescription(_0x2a5b31,_0x4a0a3a){const _0x52a423=_0x5bfdbb,_0x161134={'MVMXw':function(_0x4c5690){return _0x4c5690();},'XdkmS':'No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.','CeyTJ':function(_0x15a7ca,_0x408f5f){return _0x15a7ca(_0x408f5f);},'xMmOm':function(_0x218bb9,_0x10d7af,_0x133f2f){return _0x218bb9(_0x10d7af,_0x133f2f);},'JYDWb':'\x0aAvailable\x20scenarios:','qIbmd':function(_0x1d0074,_0x5cd533){return _0x1d0074<_0x5cd533;},'hnsVk':function(_0x439a90,_0x149f3d){return _0x439a90+_0x149f3d;},'zzAXl':function(_0x3df11c,_0x36d735){return _0x3df11c===_0x36d735;}},_0x267460=_0x2a5b31||await _0x161134['MVMXw'](getActiveFeatureId);if(!_0x267460)throw new Error(_0x161134['XdkmS']);const _0x2958e4=await _0x161134['CeyTJ'](getFeature,_0x267460),_0x341b82=_0x2958e4['checklistItems']||[],_0x3b460a=_0x161134['xMmOm'](getCurrentSessionItems,_0x2958e4,_0x341b82);_0x3b460a['length']===0x0&&(console[_0x52a423(0x251)](_0x52a423(0x287)),process[_0x52a423(0x27c)](0x1));const _0x53b4f5=_0x4a0a3a[_0x52a423(0x262)]??[],_0x24a1a9=_0x53b4f5['filter'](_0x1009f4=>!Number[_0x52a423(0x1fb)](_0x1009f4)||_0x1009f4<0x1||_0x1009f4>_0x3b460a[_0x52a423(0x27e)]);if(_0x24a1a9[_0x52a423(0x27e)]>0x0){console[_0x52a423(0x251)](_0x52a423(0x263)+_0x24a1a9[_0x52a423(0x1f2)](',\x20')),console['log'](_0x161134[_0x52a423(0x222)]);for(let _0x38df1f=0x0;_0x161134[_0x52a423(0x283)](_0x38df1f,_0x3b460a[_0x52a423(0x27e)]);_0x38df1f++){console['log']('\x20\x20'+_0x161134['hnsVk'](_0x38df1f,0x1)+'.\x20'+_0x3b460a[_0x38df1f]['description']);}process['exit'](0x1);}const _0x1ede3c=new Set(_0x53b4f5[_0x52a423(0x27d)](_0x386522=>_0x386522-0x1)),_0x5a9008=_0x3b460a['filter']((_0x495e05,_0x9424d)=>!_0x1ede3c['has'](_0x9424d));_0x161134['zzAXl'](_0x5a9008[_0x52a423(0x27e)],0x0)&&(console[_0x52a423(0x251)](_0x52a423(0x231)),process[_0x52a423(0x27c)](0x1));if(_0x4a0a3a['json'])await outputJsonReport(_0x267460,_0x2958e4,_0x5a9008);else{const _0x3f8307=await _0x161134[_0x52a423(0x24f)](getFeatureReportMarkdown,_0x267460,{'itemIds':_0x5a9008[_0x52a423(0x27d)](_0x3a948a=>_0x3a948a['id'])});process[_0x52a423(0x21b)][_0x52a423(0x247)](_0x3f8307[_0x52a423(0x249)]()+'\x0a');}}async function outputJsonReport(_0xf2d6d2,_0x12b278,_0x14e082){const _0x38ae45=_0x5bfdbb,_0x391cdd={'mpMkC':function(_0x34b474,_0x12fe66){return _0x34b474(_0x12fe66);},'fbYzu':function(_0x577132){return _0x577132();}},_0x2ff59d=_0x391cdd[_0x38ae45(0x260)](getApiBaseUrl),_0x3e749c=await getFeatureReport(_0xf2d6d2),_0x37e7ec=new Map(_0x3e749c['checklistItems'][_0x38ae45(0x27d)](_0x129db1=>[_0x129db1['id'],_0x129db1])),_0x220b7a=await Promise['all'](_0x14e082['map'](async _0x3956ab=>{const _0x40236d=_0x38ae45,_0x4cebc9=_0x37e7ec['get'](_0x3956ab['id']),_0x5716f9=_0x4cebc9?.['linkedSession']??null;let _0x47c7be=[];if(_0x3956ab['browserSessionId'])try{const {steps:_0x2d96a8}=await _0x391cdd['mpMkC'](getBrowserSessionSteps,_0x3956ab[_0x40236d(0x271)]);_0x2d96a8[_0x40236d(0x27e)]>0x0&&(_0x47c7be=_0x2d96a8[_0x40236d(0x27d)](_0x309363=>{const _0x6b0a81=_0x40236d,_0x762176=_0x309363[_0x6b0a81(0x22d)][_0x6b0a81(0x29b)](_0x4578a0=>_0x4578a0[_0x6b0a81(0x20c)]==='screenshot'&&_0x4578a0['timing']===_0x6b0a81(0x202))??_0x309363['assets'][_0x6b0a81(0x29b)](_0x523ca2=>_0x523ca2['assetType']==='screenshot');let _0x3df10c=null,_0x358a48=null;if(_0x762176){const _0x1c8645=_0x762176[_0x6b0a81(0x219)][_0x6b0a81(0x2b1)]['split']('/')['pop']();_0x3df10c=_0x2ff59d+'/api/v1/mcp/browser-sessions/'+_0x3956ab[_0x6b0a81(0x271)]+_0x6b0a81(0x2b3)+_0x1c8645,_0x1c8645&&(_0x358a48=_0x1c8645[_0x6b0a81(0x2cb)](/\.\w+$/,'')[_0x6b0a81(0x2cb)](/^(key_)?\d+_/,'')[_0x6b0a81(0x2cb)](/[-_]/g,'\x20'));}return{'description':_0x358a48||_0x309363[_0x6b0a81(0x218)]||_0x309363[_0x6b0a81(0x2be)]||_0x6b0a81(0x289)+_0x309363['position'],'screenshot':_0x3df10c,'is_key_step':_0x309363['isKeyStep']};}));}catch{}return _0x47c7be[_0x40236d(0x27e)]===0x0&&_0x5716f9?.[_0x40236d(0x258)]&&(_0x47c7be=_0x5716f9[_0x40236d(0x258)][_0x40236d(0x27d)]((_0x5e46b7,_0x27dae0)=>({'description':_0x40236d(0x1fe)+(_0x27dae0+0x1),'screenshot':_0x5e46b7,'is_key_step':![]}))),{'description':_0x3956ab[_0x40236d(0x218)],'result':getScenarioResult(_0x3956ab),'rationale':getScenarioRationale(_0x3956ab,_0x5716f9?.[_0x40236d(0x1fc)]),'steps':_0x47c7be};})),_0x324c0f={'url':_0x12b278[_0x38ae45(0x2ca)],'scenarios':_0x220b7a};process['stdout'][_0x38ae45(0x247)](JSON['stringify'](_0x324c0f,null,0x2)+'\x0a');}export async function featureConcludeSession(_0x2fbf6c){const _0x2d0b5b=_0x5bfdbb,_0x4d51ce={'VLQHK':function(_0x113155){return _0x113155();},'UESZu':_0x2d0b5b(0x261),'xmNDf':function(_0x2c4185,_0x9f596d){return _0x2c4185===_0x9f596d;},'CpANh':function(_0x43eef7,_0x1e8aca,_0x2fc30d){return _0x43eef7(_0x1e8aca,_0x2fc30d);}},_0x226777=_0x2fbf6c||await _0x4d51ce[_0x2d0b5b(0x2ab)](getActiveFeatureId);if(!_0x226777)throw new Error(_0x4d51ce[_0x2d0b5b(0x236)]);const _0x1fce4f=await getFeature(_0x226777);if(!_0x1fce4f[_0x2d0b5b(0x25e)])throw new Error('No\x20active\x20session\x20for\x20this\x20feature\x20review.');const {sessions:_0x17d4c7}=await listFeatureSessions(_0x226777),_0x1336ca=_0x17d4c7['find'](_0x34707e=>_0x34707e['id']===_0x1fce4f['currentSessionId']);if(!_0x1336ca)throw new Error('Current\x20session\x20not\x20found.');if(_0x4d51ce['xmNDf'](_0x1336ca[_0x2d0b5b(0x239)],'completed')){console[_0x2d0b5b(0x2ae)]('\x0a✅\x20Session\x20is\x20already\x20completed.');return;}if(_0x1336ca['status']!=='in_progress')throw new Error(_0x2d0b5b(0x292)+_0x1336ca[_0x2d0b5b(0x239)]);console['log']('\x0aConcluding\x20session...'),await _0x4d51ce['CpANh'](concludeSession,_0x226777,_0x1fce4f['currentSessionId']),console['log'](_0x2d0b5b(0x291)+_0x1336ca['iteration']+'\x20concluded.'),console['log']('\x20\x20\x20The\x20feature\x20review\x20is\x20now\x20ready\x20for\x20human\x20review\x20on\x20the\x20Ranger\x20dashboard.');}export async function featureSessions(_0x6c62fa){const _0x2fc074=_0x5bfdbb,_0x4f30b3={'ETmkB':'No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.','YtsGb':function(_0x466eec,_0x13b448){return _0x466eec===_0x13b448;}},_0x4e897b=_0x6c62fa||await getActiveFeatureId();if(!_0x4e897b)throw new Error(_0x4f30b3[_0x2fc074(0x290)]);const _0x2e49f2=await getFeature(_0x4e897b);console[_0x2fc074(0x2ae)]('\x0a📁\x20Sessions\x20for\x20feature\x20review:\x20'+_0x2e49f2['name']+'\x0a');const {sessions:_0x52315c}=await listFeatureSessions(_0x4e897b);if(_0x4f30b3[_0x2fc074(0x2a1)](_0x52315c[_0x2fc074(0x27e)],0x0)){console['log']('No\x20sessions\x20found.');return;}for(const _0x537175 of _0x52315c){const _0x460ba5=_0x537175[_0x2fc074(0x239)]===_0x2fc074(0x223)?'✅':_0x4f30b3['YtsGb'](_0x537175[_0x2fc074(0x239)],_0x2fc074(0x284))?'🔄':'▶️';console[_0x2fc074(0x2ae)](_0x460ba5+_0x2fc074(0x265)+_0x537175[_0x2fc074(0x2c1)]+'\x20('+_0x537175['id']+')'),console['log']('\x20\x20\x20Status:\x20'+_0x537175[_0x2fc074(0x239)]),console[_0x2fc074(0x2ae)]('\x20\x20\x20Created:\x20'+new Date(_0x537175[_0x2fc074(0x2c4)])['toLocaleString']()),_0x537175['completedAt']&&console['log']('\x20\x20\x20Completed:\x20'+new Date(_0x537175[_0x2fc074(0x266)])[_0x2fc074(0x250)]()),console['log']('');}}export async function featureAddScenario(_0x103b5d,_0x592ca6){const _0x3abefa=_0x5bfdbb,_0x22c6f2={'zfoyR':_0x3abefa(0x261),'gLZyK':function(_0x1f91d3,_0xd85d16,_0x467167){return _0x1f91d3(_0xd85d16,_0x467167);},'sLjnl':function(_0x2d5ffa,_0xdcd3a3){return _0x2d5ffa(_0xdcd3a3);},'AnPoO':function(_0x2525eb,_0x322cd7,_0x13c8ce){return _0x2525eb(_0x322cd7,_0x13c8ce);}},_0x507528=_0x592ca6||await getActiveFeatureId();if(!_0x507528)throw new Error(_0x22c6f2[_0x3abefa(0x23f)]);const _0x459332=await getFeature(_0x507528);if(_0x459332[_0x3abefa(0x254)]&&!_0x459332[_0x3abefa(0x254)][_0x3abefa(0x244)])throw new Error(_0x3abefa(0x245)+_0x459332['dashboardUrl']);await _0x22c6f2['gLZyK'](createChecklistItem,_0x507528,_0x103b5d);const _0x415d1c=await _0x22c6f2[_0x3abefa(0x203)](getFeature,_0x507528);console[_0x3abefa(0x2ae)]('\x0a✅\x20Scenario\x20added'),_0x22c6f2['AnPoO'](displayFeature,_0x415d1c,_0x415d1c['checklistItems']);}export async function featureEditScenario(_0x50079a,_0x19c6ab){const _0x1a8df6=_0x5bfdbb,_0x2309e5={'bBwbX':_0x1a8df6(0x294),'UTrli':_0x1a8df6(0x295),'rmpma':function(_0x4af4b4,_0x13ba52){return _0x4af4b4===_0x13ba52;},'YNoZq':'\x0a❌\x20No\x20scenario\x20number\x20provided.\x20Use\x20--scenario\x20<number>.','VGmmE':'\x0aAvailable\x20scenarios:','dbPnH':function(_0x7523be,_0x39f73e){return _0x7523be<_0x39f73e;},'teIbH':function(_0xe18136,_0x3394ec){return _0xe18136-_0x3394ec;},'rEdgH':function(_0x4a2c2e,_0x23433b){return _0x4a2c2e+_0x23433b;},'jixjB':function(_0x98b943,_0x137fed,_0x58fdae){return _0x98b943(_0x137fed,_0x58fdae);}},_0x1a96b8=_0x19c6ab['id']||await getActiveFeatureId();!_0x1a96b8&&(console['error']('\x0a❌\x20No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.'),console[_0x1a8df6(0x251)](_0x2309e5[_0x1a8df6(0x288)]),process[_0x1a8df6(0x27c)](0x1));const _0x3ccd5d=await getFeature(_0x1a96b8);_0x3ccd5d[_0x1a8df6(0x254)]&&!_0x3ccd5d['latestReview'][_0x1a8df6(0x244)]&&(console['error']('\x0a❌\x20Cannot\x20edit\x20scenario:\x20feature\x20review\x20has\x20an\x20active\x20review.'),console[_0x1a8df6(0x251)]('Please\x20finish\x20your\x20review\x20first:'),console[_0x1a8df6(0x251)]('\x20\x20'+_0x3ccd5d['dashboardUrl']),process['exit'](0x1));const _0x130c26=_0x3ccd5d[_0x1a8df6(0x24a)]||[];_0x130c26['length']===0x0&&(console['error'](_0x2309e5[_0x1a8df6(0x25f)]),process['exit'](0x1));if(_0x2309e5['rmpma'](_0x19c6ab[_0x1a8df6(0x28b)],undefined)){console['error'](_0x2309e5[_0x1a8df6(0x1f3)]),console[_0x1a8df6(0x2ae)](_0x2309e5[_0x1a8df6(0x2c9)]);for(let _0x4eb836=0x0;_0x2309e5[_0x1a8df6(0x264)](_0x4eb836,_0x130c26['length']);_0x4eb836++){console['log']('\x20\x20'+(_0x4eb836+0x1)+'.\x20'+_0x130c26[_0x4eb836][_0x1a8df6(0x218)]);}process[_0x1a8df6(0x27c)](0x1);}const _0x32420d=_0x2309e5[_0x1a8df6(0x20f)](_0x19c6ab[_0x1a8df6(0x28b)],0x1);if(_0x32420d<0x0||_0x32420d>=_0x130c26[_0x1a8df6(0x27e)]){console['error']('\x0a❌\x20Invalid\x20scenario\x20index:\x20'+_0x19c6ab['scenario']+'.\x20Feature\x20review\x20has\x20'+_0x130c26[_0x1a8df6(0x27e)]+'\x20scenarios.'),console['log'](_0x2309e5[_0x1a8df6(0x2c9)]);for(let _0x234005=0x0;_0x2309e5['dbPnH'](_0x234005,_0x130c26[_0x1a8df6(0x27e)]);_0x234005++){console['log']('\x20\x20'+_0x2309e5[_0x1a8df6(0x25b)](_0x234005,0x1)+'.\x20'+_0x130c26[_0x234005]['description']);}process[_0x1a8df6(0x27c)](0x1);}const _0x21fb35=_0x130c26[_0x32420d];await updateChecklistItem(_0x1a96b8,_0x21fb35['id'],{'description':_0x50079a});const _0x126be1=await getFeature(_0x1a96b8);console[_0x1a8df6(0x2ae)]('\x0a✅\x20Scenario\x20updated'),_0x2309e5[_0x1a8df6(0x229)](displayFeature,_0x126be1,_0x126be1['checklistItems']);}async function downloadFeedbackImage(_0x2e1271,_0x42a4d6){const _0x5dce36=_0x5bfdbb;try{const _0x166ad6=join(getRangerDir(),_0x5dce36(0x2c0));await mkdir(_0x166ad6,{'recursive':!![]});const _0x4025ee=join(_0x166ad6,_0x5dce36(0x208)+_0x42a4d6+_0x5dce36(0x1fa)),_0x582c92=await fetch(_0x2e1271);if(!_0x582c92['ok'])return null;const _0x2533ba=Buffer[_0x5dce36(0x29e)](await _0x582c92[_0x5dce36(0x29d)]());return await writeFile(_0x4025ee,_0x2533ba),_0x4025ee;}catch{return null;}}export async function featureGetReview(_0x13367a){const _0x45a2f4=_0x5bfdbb,_0x5337d0={'HVdek':function(_0x258eba,_0x3a83d7){return _0x258eba(_0x3a83d7);},'eaqxP':'numeric','RHmlQ':function(_0x2d1682,_0x108f9e,_0x20cb15){return _0x2d1682(_0x108f9e,_0x20cb15);},'nhnBn':function(_0xd65083,_0x588d15){return _0xd65083===_0x588d15;},'StIlL':function(_0x5387c8,_0x4a3dac){return _0x5387c8>=_0x4a3dac;}},_0x39a040=_0x13367a||await getActiveFeatureId();if(!_0x39a040)throw new Error(_0x45a2f4(0x261));const _0x4fff09=await _0x5337d0[_0x45a2f4(0x24d)](getFeature,_0x39a040),{items:_0x391707}=await _0x5337d0[_0x45a2f4(0x24d)](getActionItems,_0x39a040);console['log'](_0x45a2f4(0x2c2)+_0x4fff09['name']+'\x20('+_0x4fff09['id']+')\x0a');if(_0x391707['length']===0x0){console['log'](_0x45a2f4(0x280));return;}for(let _0x56294b=0x0;_0x56294b<_0x391707['length'];_0x56294b++){const _0x115953=_0x391707[_0x56294b],_0x4590b2=_0x115953[_0x45a2f4(0x269)]>0x1?_0x45a2f4(0x23b)+_0x115953['version']+')':'',_0x426846=await getItemFeedback(_0x39a040,_0x115953['id']);if(_0x426846['unaddressedComments']['length']>0x0){console['log'](_0x45a2f4(0x24e)+(_0x56294b+0x1)+_0x45a2f4(0x2a0)+_0x115953['description']+'\x22'+_0x4590b2+_0x45a2f4(0x224)+_0x426846[_0x45a2f4(0x268)][_0x45a2f4(0x27e)]+'\x20unaddressed\x20comment(s)');for(const _0x4d7c89 of _0x426846['unaddressedComments']){const _0x930fbf=new Date(_0x4d7c89['createdAt'])[_0x45a2f4(0x26b)]('en-US',{'month':'short','day':_0x5337d0['eaqxP']}),_0x4b8e6b=_0x4d7c89[_0x45a2f4(0x240)]||_0x4d7c89['authorEmail']||_0x45a2f4(0x20b);console[_0x45a2f4(0x2ae)](_0x45a2f4(0x282)+_0x4b8e6b+'\x20('+_0x930fbf+'):\x20\x22'+_0x4d7c89[_0x45a2f4(0x1f8)]+'\x22');if(_0x4d7c89['assetUrl']){const _0x19b0b1=await _0x5337d0['RHmlQ'](downloadFeedbackImage,_0x4d7c89['assetUrl'],_0x4d7c89['id']);_0x19b0b1&&console['log']('\x20\x20\x20\x20\x20📷\x20Screenshot:\x20'+_0x19b0b1);}if(_0x4d7c89[_0x45a2f4(0x276)]){const _0x4c3825=_0x4d7c89['domRef'][_0x45a2f4(0x28a)]['split'](_0x45a2f4(0x1f1))[_0x45a2f4(0x27b)]()?.['split'](':')[0x0]||'element',_0x311d2f=_0x4d7c89[_0x45a2f4(0x276)][_0x45a2f4(0x211)]?'\x20\x22'+_0x4d7c89['domRef'][_0x45a2f4(0x211)]['slice'](0x0,0x3c)+'\x22':'';console[_0x45a2f4(0x2ae)]('\x20\x20\x20\x20\x20🎯\x20Element:\x20<'+_0x4c3825+'>'+_0x311d2f),console[_0x45a2f4(0x2ae)](_0x45a2f4(0x1ff)+_0x4d7c89['domRef']['selector']);}else{if(_0x4d7c89[_0x45a2f4(0x25c)]){const _0x4bddef=_0x4d7c89['spatial'][_0x45a2f4(0x252)];_0x5337d0['nhnBn'](_0x4d7c89[_0x45a2f4(0x25c)][_0x45a2f4(0x2aa)],'point')&&_0x5337d0['StIlL'](_0x4bddef['length'],0x2)?console[_0x45a2f4(0x2ae)]('\x20\x20\x20\x20\x20📍\x20Annotation:\x20point\x20at\x20('+_0x4bddef[0x0]['toFixed'](0x2)+',\x20'+_0x4bddef[0x1][_0x45a2f4(0x277)](0x2)+')'):console['log'](_0x45a2f4(0x25a)+_0x4d7c89[_0x45a2f4(0x25c)]['type']+'\x20at\x20['+_0x4bddef[_0x45a2f4(0x27d)](_0x4e0767=>_0x4e0767[_0x45a2f4(0x277)](0x2))[_0x45a2f4(0x1f2)](',\x20')+']');}}}if(_0x426846[_0x45a2f4(0x2bf)]){console['log']('\x20\x20Expected\x20flow:');for(const _0x4589f0 of _0x426846['canonicalFlow']['split']('\x0a')){console[_0x45a2f4(0x2ae)](_0x45a2f4(0x2a7)+_0x4589f0);}}}else console['log'](_0x45a2f4(0x24e)+(_0x56294b+0x1)+':\x20\x22'+_0x115953['description']+'\x22'+_0x4590b2+'\x20—\x20no\x20comments'),console[_0x45a2f4(0x2ae)]('\x20\x20✅\x20No\x20feedback\x20to\x20address');console[_0x45a2f4(0x2ae)]('');}}export async function featureDelete(_0xb1e258){const _0x4d5138=_0x5bfdbb,_0x8f2e8c={'TFSxF':_0x4d5138(0x261),'wybZb':function(_0x11d83e,_0x556a06){return _0x11d83e(_0x556a06);},'ETUTI':'\x20\x20\x20To\x20restore\x20it,\x20run:\x20ranger\x20restore\x20'},_0x1d33e3=_0xb1e258||await getActiveFeatureId();if(!_0x1d33e3)throw new Error(_0x8f2e8c['TFSxF']);const _0x18ed05=await _0x8f2e8c[_0x4d5138(0x21a)](getFeature,_0x1d33e3);await softDeleteFeature(_0x1d33e3),console['log']('\x0a🗑️\x20\x20Deleted\x20feature\x20review:\x20'+_0x18ed05['name']+'\x20('+_0x1d33e3+')'),console[_0x4d5138(0x2ae)](_0x8f2e8c['ETUTI']+_0x1d33e3);}export async function featureRestore(_0x5b531f){const _0x2a0c2c=_0x5bfdbb,_0x1ad472={'umSiF':function(_0x533f94,_0x112466){return _0x533f94(_0x112466);}};await _0x1ad472['umSiF'](restoreFeature,_0x5b531f);const _0x9ac905=await getFeature(_0x5b531f);console[_0x2a0c2c(0x2ae)](_0x2a0c2c(0x2bd)+_0x9ac905[_0x2a0c2c(0x220)]+'\x20('+_0x5b531f+')'),displayFeature(_0x9ac905,_0x9ac905[_0x2a0c2c(0x24a)]);}
1
+ const _0x5dcc67=_0x2bed;function _0x45f7(){const _0x53e52d=['\x0a\x20\x20\x20Scenarios:','ngElm','pVfsY','dashboardUrl','from','timing','spatial','totalCount','Next\x20page:\x20ranger\x20list\x20--offset\x20','browserSessionId','error','all','split','zmWId','\x0a✅\x20Scenario\x20added','Dlhjk','location','\x20\x20\x20The\x20feature\x20review\x20is\x20now\x20ready\x20for\x20human\x20review\x20on\x20the\x20Ranger\x20dashboard.','rRZwb','dhjRp','toFixed','assetUrl','\x20scenarios.','eDMuP','xDruZ','\x20Session\x20','buhON','authorName','assets','kjynm','pekqZ','dRPYN','dCJzb','checklistItems','get','status','2466792FStIbx','git\x20remote\x20get-url\x20origin','4mMblNG','zHqDC','2083182BhaRbU','active-feature.txt','output','twCpV','xmcWi','join','hBWby','trimEnd','OzYti','DKDRW','list','stdout','\x0a⚠️\x20\x20','wdbcC','Cannot\x20add\x20scenario:\x20feature\x20review\x20has\x20an\x20active\x20review.\x20Please\x20finish\x20your\x20review\x20first:\x20','vQYcM','selected','PTIQm','comment_','items','notes','xAEFR','blockedItems','latestReview','OanMn','CLAUDE_SESSION_ID','\x0a📋\x20Feedback\x20for:\x20','twdgc','LNkbi','498707qGUbhy','WxBNu','\x20\x20\x20\x20\x20🎯\x20Element:\x20<','round','domRef','DdHnT','Please\x20specify\x20the\x20feature\x20review\x20ID:\x20ranger\x20resume\x20<id>','\x20\x20\x20▶️\x20Started\x20session\x20','.png','\x0a📁\x20Sessions\x20for\x20feature\x20review:\x20','closed','\x0a❌\x20No\x20scenarios\x20found\x20to\x20edit.','stdin','offset','\x0aAvailable\x20scenarios:','No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','incompleteReason','repeat','unaddressedComments','\x20in\x20progress','in_progress','xPsQN','/artifacts/','screenshotUrls','aykNp','\x20\x20\x20Created:\x20','selector','name','HwjRE','DtZNL','\x20\x20\x20\x20\x20📋\x20Selector:\x20','\x0a❌\x20No\x20scenario\x20number\x20provided.\x20Use\x20--scenario\x20<number>.','incompleteItems','CJyRz','dpjIC','No\x20sessions\x20found.','stringify','push','after','FnCxV','4035368KagSeX','approved','screenshot','position','\x20\x20\x20\x20\x20📍\x20Annotation:\x20point\x20at\x20(','MWGYd','pipe','\x0a➡️\x20\x20Set\x20as\x20active\x20feature\x20review','\x20\x20Expected\x20flow:','scenario','\x0a✅\x20Scenario\x20updated','createdAt','Run:\x20ranger\x20create\x20\x22<name>\x22\x20to\x20create\x20a\x20new\x20feature\x20review','218319uuaiNr','length','assetType','\x20\x20\x20\x20\x20📷\x20Screenshot:\x20','byZfY','JUwsy','prompt','faoKG','xbqHG','terminalReason','replace','currentSessionId','\x1b[1m','2HLoepI','No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.','point','\x20concluded.','\x20\x20\x20Branch:\x20','xoifZ','/api/v1/mcp/browser-sessions/','\x0aGenerating\x20report...','toLocaleDateString','blockedReason','pop','\x20\x20\x20\x20\x20Branch:\x20','isKeyStep','verified','\x20\x20\x20Description:\x20','description','verifiedItems','aPVkg','Showing\x20','\x0a✅\x20Resumed\x20feature\x20review:\x20','\x20/\x20','nddiX','tQwRM','7mwWonw','env','log','\x20--include-deleted','heiix','completed','\x20of\x20','doBjr','includeDeleted','Rdnaz','\x20\x20💬\x20','QscPi','isTTY','ZjWrJ','sessionId','completedAt','map','canceledReason','Scenario\x20','parentItemId','verification_in_progress','qBxZF','bruPn','element','ogfPe','Wtosj','hPzBb','reports','\x20>\x20','\x0a✅\x20Session\x20','Hzjdc','\x0a✅\x20Restored\x20feature\x20review:\x20','type','\x0aCreating\x20feature\x20review...','No\x20active\x20session\x20for\x20this\x20feature\x20review.','lyVRk',':\x20\x22','authorEmail','RNSjP','1160815OCxiwo','gitBranch','HIKbd','\x20(v','.md','JUrdT','coordinates','sBbSn','\x20\x20\x20Run\x20`ranger\x20get-review`\x20to\x20see\x20what\x20needs\x20to\x20be\x20fixed.','HnSDP','tuBMW','EiGGs','EvBMj','\x20incomplete','YFcUb','mEtCj','\x20\x20\x20\x20\x20\x20Incomplete:\x20','textContent','\x0a❌\x20No\x20scenarios\x20found\x20to\x20include.','pPWHZ','blocked','filter','ozeSS','\x0a✅\x20Report\x20generated:\x20','GzFTN','stats','version','\x20—\x20','4070680hREnHG','Current\x20session\x20not\x20found.','Cannot\x20conclude\x20session\x20with\x20status:\x20','find','MgffH','Multiple\x20feature\x20reviews\x20found.\x20Select\x20one:','\x0a❌\x20Invalid\x20scenario\x20number(s):\x20','HsDaM','incomplete','\x20—\x20no\x20comments','Not\x20in\x20a\x20git\x20repository.','numeric','\x0a❌\x20Invalid\x20scenario\x20index:\x20','utf-8','exit','\x0aSearching\x20for\x20feature\x20reviews\x20matching:\x20'];_0x45f7=function(){return _0x53e52d;};return _0x45f7();}(function(_0x191bd8,_0x248f62){const _0xc1a8f8=_0x2bed,_0x248b05=_0x191bd8();while(!![]){try{const _0x341500=-parseInt(_0xc1a8f8(0x258))/0x1*(-parseInt(_0xc1a8f8(0x29a))/0x2)+-parseInt(_0xc1a8f8(0x28d))/0x3*(-parseInt(_0xc1a8f8(0x239))/0x4)+-parseInt(_0xc1a8f8(0x1e7))/0x5+-parseInt(_0xc1a8f8(0x23b))/0x6*(-parseInt(_0xc1a8f8(0x1c0))/0x7)+-parseInt(_0xc1a8f8(0x280))/0x8+-parseInt(_0xc1a8f8(0x237))/0x9+parseInt(_0xc1a8f8(0x203))/0xa;if(_0x341500===_0x248f62)break;else _0x248b05['push'](_0x248b05['shift']());}catch(_0xa6a1d8){_0x248b05['push'](_0x248b05['shift']());}}}(_0x45f7,0x4cec1));import{readFile,writeFile,mkdir}from'fs/promises';import{join}from'path';import{existsSync}from'fs';import{execSync}from'child_process';import _0x16eea6 from'inquirer';import{createFeature,listFeatures,getFeature,updateFeature,getFeatureReport,getFeatureReportMarkdown,listFeatureSessions,startSession,concludeSession,createChecklistItem,getActionItems,getItemFeedback,softDeleteFeature,restoreFeature,updateChecklistItem}from'./utils/featureApi.js';import{getBrowserSessionSteps}from'./utils/browserSessionsApi.js';import{getApiBaseUrl}from'./utils/environment.js';import{getRangerDir}from'./utils/rangerRoot.js';function _0x2bed(_0x50bf79,_0xb1a3f9){_0x50bf79=_0x50bf79-0x1b7;const _0x45f708=_0x45f7();let _0x2bed8a=_0x45f708[_0x50bf79];return _0x2bed8a;}import{registerSession}from'./utils/sessionCache.js';import{getEnvNames}from'./env.js';import{formatProfileRequiredMessage}from'./utils/profileMessages.js';const ACTIVE_FEATURE_FILE=_0x5dcc67(0x23c),bold=_0x469f40=>_0x5dcc67(0x299)+_0x469f40+'\x1b[0m';function getGitRepoUrl(){const _0x4aeb06=_0x5dcc67,_0x38747d={'QhFXm':_0x4aeb06(0x210)};try{const _0x5cb52a=execSync(_0x4aeb06(0x238),{'encoding':_0x38747d['QhFXm'],'stdio':['pipe',_0x4aeb06(0x286),_0x4aeb06(0x286)]})['trim']();return _0x5cb52a['replace'](/\.git$/,'')['replace'](/^git@github\.com:/,'github.com/')['replace'](/^https?:\/\//,'');}catch{return undefined;}}function getGitBranch(){const _0x15cba6=_0x5dcc67,_0xb8af76={'FNaUe':function(_0xfc0580,_0x19a077,_0xfecaf1){return _0xfc0580(_0x19a077,_0xfecaf1);},'aPVkg':'git\x20rev-parse\x20--abbrev-ref\x20HEAD','dGWYZ':'utf-8','sBbSn':_0x15cba6(0x286)};try{return _0xb8af76['FNaUe'](execSync,_0xb8af76[_0x15cba6(0x1ba)],{'encoding':_0xb8af76['dGWYZ'],'stdio':['pipe',_0x15cba6(0x286),_0xb8af76[_0x15cba6(0x1ee)]]})['trim']();}catch{return undefined;}}export async function getActiveFeatureId(){const _0x2a7662=_0x5dcc67,_0x42b9ea={'uWKGH':function(_0x2e72d1,_0x4364d7,_0x205486){return _0x2e72d1(_0x4364d7,_0x205486);},'nunjL':function(_0x2b29a1){return _0x2b29a1();},'YFcUb':function(_0x576665,_0x445c06){return _0x576665(_0x445c06);},'faoKG':_0x2a7662(0x210)},_0x43f9b5=_0x42b9ea['uWKGH'](join,_0x42b9ea['nunjL'](getRangerDir),ACTIVE_FEATURE_FILE);if(!_0x42b9ea[_0x2a7662(0x1f5)](existsSync,_0x43f9b5))return null;try{const _0xa7d666=await readFile(_0x43f9b5,_0x42b9ea[_0x2a7662(0x294)]);return _0xa7d666['trim']()||null;}catch{return null;}}async function setActiveFeatureId(_0x56a2a8){const _0x3b3bca=_0x5dcc67,_0x29baae={'OzYti':function(_0x49ed9a,_0x43cc8b,_0x37bdde){return _0x49ed9a(_0x43cc8b,_0x37bdde);},'uhSEg':function(_0x55b517,_0x3e8a85){return _0x55b517(_0x3e8a85);},'DtZNL':function(_0x2fd18f,_0x6b9995,_0x35bbb9,_0x1e69ef){return _0x2fd18f(_0x6b9995,_0x35bbb9,_0x1e69ef);},'dRPYN':_0x3b3bca(0x210)},_0x5aa5bf=getRangerDir(),_0x39ef6b=_0x29baae[_0x3b3bca(0x243)](join,_0x5aa5bf,ACTIVE_FEATURE_FILE);!_0x29baae['uhSEg'](existsSync,_0x5aa5bf)&&await mkdir(_0x5aa5bf,{'recursive':!![]}),await _0x29baae[_0x3b3bca(0x275)](writeFile,_0x39ef6b,_0x56a2a8,_0x29baae[_0x3b3bca(0x232)]);}function getProgressDisplay(_0x3aeef4){const _0x83f429=_0x5dcc67,_0x27e7c1={'OYgVD':function(_0x3b96de,_0x37f913){return _0x3b96de+_0x37f913;},'PTIQm':function(_0x5c6c28,_0x8ae5a7){return _0x5c6c28/_0x8ae5a7;},'byZfY':function(_0x565ce9,_0x331eba){return _0x565ce9>_0x331eba;}},_0x208451=_0x3aeef4[_0x83f429(0x1b9)]||0x0,_0x2dcd7b=_0x3aeef4['verificationInProgressItems']||0x0,_0x533e20=_0x3aeef4[_0x83f429(0x251)]||0x0,_0x5da170=_0x3aeef4[_0x83f429(0x278)]||0x0,_0x345dfb=_0x3aeef4['pendingItems']||0x0,_0x2bb981=_0x27e7c1['OYgVD'](_0x208451+_0x2dcd7b+_0x533e20+_0x5da170,_0x345dfb);if(_0x2bb981===0x0)return'-';const _0x3f7131=0xa,_0x5d49d9=Math[_0x83f429(0x25b)](_0x27e7c1[_0x83f429(0x24c)](_0x208451,_0x2bb981)*_0x3f7131),_0x679ff5='█'[_0x83f429(0x269)](_0x5d49d9)+'░'['repeat'](_0x3f7131-_0x5d49d9),_0x90e67e=[];if(_0x533e20>0x0)_0x90e67e['push'](_0x533e20+'\x20blocked');if(_0x27e7c1[_0x83f429(0x291)](_0x5da170,0x0))_0x90e67e[_0x83f429(0x27d)](_0x5da170+_0x83f429(0x1f4));if(_0x2dcd7b>0x0)_0x90e67e[_0x83f429(0x27d)](_0x2dcd7b+_0x83f429(0x26b));const _0x988933=_0x90e67e[_0x83f429(0x28e)]>0x0?'\x20('+_0x90e67e[_0x83f429(0x240)](',\x20')+')':'';return _0x679ff5+'\x20'+_0x208451+'/'+_0x2bb981+'\x20verified'+_0x988933;}function getCurrentSessionItems(_0x314fd2,_0x571553){const _0x15b697=_0x5dcc67;if(!_0x314fd2[_0x15b697(0x298)])return _0x571553['filter'](_0x4bd583=>!_0x4bd583[_0x15b697(0x1ce)]);return _0x571553[_0x15b697(0x1fc)](_0x2b7328=>_0x2b7328[_0x15b697(0x1ce)]===_0x314fd2[_0x15b697(0x298)]||!_0x2b7328[_0x15b697(0x1ce)]);}function displayFeature(_0x51fa27,_0x569e7a){const _0x46242b=_0x5dcc67,_0x1054cd={'umGyt':function(_0x3c462e,_0xc93a0){return _0x3c462e(_0xc93a0);},'gVKXA':function(_0x5b41c1,_0x38330a){return _0x5b41c1<_0x38330a;},'ngElm':_0x46242b(0x262),'bruPn':function(_0x2543d4,_0x96d0ac){return _0x2543d4===_0x96d0ac;},'hBWby':function(_0x20d681,_0x48ccf8){return _0x20d681===_0x48ccf8;},'tuBMW':_0x46242b(0x1d4),'HaKrx':function(_0x37d074,_0x42114c){return _0x37d074!==_0x42114c;},'OanMn':'verified','mEtCj':function(_0x30c8ff,_0xf6c15d){return _0x30c8ff+_0xf6c15d;},'AXLwG':function(_0xef03e2,_0x105fd4){return _0xef03e2===_0x105fd4;},'ChOkf':_0x46242b(0x20b),'CrDrO':function(_0x1202ba,_0x4baff3){return _0x1202ba===_0x4baff3;},'ozeSS':function(_0x5b4372,_0x24c3f2){return _0x5b4372===_0x24c3f2;},'aykNp':'approved','nddiX':function(_0x206e60,_0x59de13){return _0x206e60===_0x59de13;}};console[_0x46242b(0x1c2)]('\x0a'+_0x51fa27[_0x46242b(0x273)]+'\x20('+_0x51fa27['dashboardUrl']+')');_0x51fa27['stats']&&console[_0x46242b(0x1c2)]('\x20\x20\x20Progress:\x20'+_0x1054cd['umGyt'](getProgressDisplay,_0x51fa27[_0x46242b(0x200)]));_0x51fa27[_0x46242b(0x1b8)]&&console['log'](_0x46242b(0x1b7)+_0x51fa27[_0x46242b(0x1b8)]);_0x51fa27['gitRepoUrl']&&console[_0x46242b(0x1c2)]('\x20\x20\x20Repository:\x20'+_0x51fa27['gitRepoUrl']);_0x51fa27['gitBranch']&&console[_0x46242b(0x1c2)]('\x20\x20\x20Branch:\x20'+_0x51fa27['gitBranch']);console[_0x46242b(0x1c2)](_0x46242b(0x271)+new Date(_0x51fa27[_0x46242b(0x28b)])['toLocaleString']());_0x51fa27['completedAt']&&console['log']('\x20\x20\x20Completed:\x20'+new Date(_0x51fa27['completedAt'])['toLocaleString']());if(_0x569e7a&&_0x569e7a[_0x46242b(0x28e)]>0x0){console['log'](_0x46242b(0x213));for(let _0x3a7b79=0x0;_0x1054cd['gVKXA'](_0x3a7b79,_0x569e7a['length']);_0x3a7b79++){const _0x27025a=_0x569e7a[_0x3a7b79];let _0x36b83c;if(_0x27025a['status']===_0x1054cd[_0x46242b(0x214)]&&_0x1054cd[_0x46242b(0x1d6)](_0x27025a[_0x46242b(0x296)],_0x46242b(0x281)))_0x36b83c='✅';else{if(_0x1054cd[_0x46242b(0x241)](_0x27025a['status'],_0x46242b(0x2a7)))_0x36b83c='🟢';else{if(_0x1054cd['bruPn'](_0x27025a['status'],'incomplete'))_0x36b83c='🟠';else{if(_0x1054cd[_0x46242b(0x241)](_0x27025a['status'],_0x46242b(0x1fb)))_0x36b83c='🛑';else{if(_0x1054cd['bruPn'](_0x27025a['status'],_0x1054cd[_0x46242b(0x214)]))_0x36b83c='⛔';else _0x27025a['status']===_0x1054cd[_0x46242b(0x1f1)]?_0x36b83c='⏳':_0x36b83c='⬜';}}}}const _0x1a5df9=_0x27025a['version']>0x1?'\x20(v'+_0x27025a[_0x46242b(0x201)]+')':'',_0x2109c9=_0x27025a[_0x46242b(0x201)]>0x1&&_0x27025a[_0x46242b(0x1d3)]&&_0x1054cd['HaKrx'](_0x27025a['status'],_0x1054cd['ngElm'])&&_0x27025a[_0x46242b(0x236)]!==_0x1054cd[_0x46242b(0x253)]?'\x20[has\x20reviewer\x20feedback]':'';console[_0x46242b(0x1c2)]('\x20\x20\x20'+_0x1054cd[_0x46242b(0x1f6)](_0x3a7b79,0x1)+'.\x20'+_0x36b83c+'\x20'+_0x27025a['description']+_0x1a5df9+_0x2109c9);_0x1054cd['AXLwG'](_0x27025a['status'],_0x46242b(0x1fb))&&_0x27025a['blockedReason']&&console[_0x46242b(0x1c2)]('\x20\x20\x20\x20\x20\x20Blocked:\x20'+_0x27025a[_0x46242b(0x2a3)]);_0x27025a['status']===_0x1054cd['ChOkf']&&_0x27025a['incompleteReason']&&console[_0x46242b(0x1c2)](_0x46242b(0x1f7)+_0x27025a[_0x46242b(0x268)]);if(_0x1054cd['CrDrO'](_0x27025a['status'],_0x1054cd[_0x46242b(0x214)])&&_0x1054cd[_0x46242b(0x1fd)](_0x27025a[_0x46242b(0x296)],_0x1054cd[_0x46242b(0x270)]))console['log']('\x20\x20\x20\x20\x20\x20Approved');else _0x1054cd[_0x46242b(0x1be)](_0x27025a['status'],_0x1054cd[_0x46242b(0x214)])&&_0x27025a['canceledReason']&&console['log']('\x20\x20\x20\x20\x20\x20Cancelled:\x20'+_0x27025a[_0x46242b(0x1d1)]);}}}export async function featureCreate(_0x3a2403,_0x112c5c){const _0x7090fd=_0x5dcc67,_0x1e04e1={'MgffH':function(_0xabae1f){return _0xabae1f();},'JUrdT':function(_0x36ea91,_0x456049){return _0x36ea91(_0x456049);},'eDMuP':function(_0x1c829c,_0x3bdb49){return _0x1c829c(_0x3bdb49);}},{envNames:_0x2a2fe1}=await getEnvNames();_0x2a2fe1[_0x7090fd(0x28e)]===0x0&&console['warn']('\x0a'+formatProfileRequiredMessage(_0x18df4a=>bold(_0x18df4a)));const _0x1ba723=_0x112c5c['scenarios']?_0x112c5c['scenarios']['map'](_0x5cf848=>_0x5cf848['trim']()):[],_0x462f9a=_0x1e04e1['MgffH'](getGitRepoUrl),_0x59f92b=_0x1e04e1[_0x7090fd(0x207)](getGitBranch);console[_0x7090fd(0x1c2)](_0x7090fd(0x1e1));const _0x2b7c56=await _0x1e04e1[_0x7090fd(0x1ec)](createFeature,{'name':_0x3a2403,'description':_0x112c5c[_0x7090fd(0x1b8)],'checklist':_0x1ba723,'gitRepoUrl':_0x462f9a,'gitBranch':_0x59f92b});await _0x1e04e1[_0x7090fd(0x22a)](setActiveFeatureId,_0x2b7c56['id']),await tryStartCurrentSession(_0x2b7c56['id']);const _0x1eee27=process['env'][_0x7090fd(0x254)];_0x1eee27&&registerSession(_0x1eee27,_0x2b7c56['id']),console['log']('\x0a✅\x20Feature\x20review\x20created:\x20'+_0x2b7c56['id']),displayFeature(_0x2b7c56,_0x2b7c56['checklistItems']),console['log'](_0x7090fd(0x287));}export async function featureList(_0x512e01){const _0x3855de=_0x5dcc67,_0x390b15={'EyaTU':function(_0xd8acfd){return _0xd8acfd();},'QscPi':'\x0aNo\x20feature\x20reviews\x20found.','ogfPe':function(_0x1dc5b2,_0x1a827e){return _0x1dc5b2(_0x1a827e);},'zHqDC':'\x20--current-branch','qBxZF':_0x3855de(0x1c3)},_0x1922a1={'limit':_0x512e01['limit']??0xa,'offset':_0x512e01[_0x3855de(0x265)]??0x0,'includeDeleted':_0x512e01[_0x3855de(0x1c8)]};_0x512e01['currentBranch']&&(_0x1922a1['gitRepoUrl']=getGitRepoUrl(),_0x1922a1['gitBranch']=_0x390b15['EyaTU'](getGitBranch));const _0x3e4e96=await listFeatures(_0x1922a1);if(_0x3e4e96[_0x3855de(0x24e)][_0x3855de(0x28e)]===0x0){console['log'](_0x390b15[_0x3855de(0x1cb)]);return;}const _0x5e4440=_0x3e4e96[_0x3855de(0x21a)]>_0x3e4e96[_0x3855de(0x24e)]['length']?_0x3855de(0x1bb)+_0x3e4e96[_0x3855de(0x24e)][_0x3855de(0x28e)]+_0x3855de(0x1c6)+_0x3e4e96['totalCount']:_0x3e4e96[_0x3855de(0x21a)]+'\x20feature\x20review(s)\x20found';console[_0x3855de(0x1c2)]('\x0a'+_0x5e4440+':\x0a');for(const _0x24ffa9 of _0x3e4e96[_0x3855de(0x24e)]){console['log'](''+_0x24ffa9[_0x3855de(0x273)]),console[_0x3855de(0x1c2)]('\x20\x20\x20ID:\x20'+_0x24ffa9['id']),_0x24ffa9['stats']&&console['log']('\x20\x20\x20Progress:\x20'+_0x390b15[_0x3855de(0x1d8)](getProgressDisplay,_0x24ffa9['stats'])),_0x24ffa9[_0x3855de(0x1e8)]&&console[_0x3855de(0x1c2)](_0x3855de(0x29e)+_0x24ffa9[_0x3855de(0x1e8)]),console[_0x3855de(0x1c2)]('\x20\x20\x20Created:\x20'+new Date(_0x24ffa9['createdAt'])[_0x3855de(0x2a2)]()),console[_0x3855de(0x1c2)]('');}const _0x46354e=_0x1922a1['limit']??0xa,_0x4e1a30=(_0x1922a1['offset']??0x0)+_0x3e4e96['items'][_0x3855de(0x28e)];if(_0x4e1a30<_0x3e4e96['totalCount']){const _0x55d112=_0x46354e!==0xa?'\x20--limit\x20'+_0x46354e:'',_0xac9ab6=_0x512e01['currentBranch']?_0x390b15[_0x3855de(0x23a)]:'',_0x39443d=_0x512e01[_0x3855de(0x1c8)]?_0x390b15[_0x3855de(0x1d5)]:'';console[_0x3855de(0x1c2)](_0x3855de(0x21b)+_0x4e1a30+_0x55d112+_0xac9ab6+_0x39443d);}}export async function featureShow(_0x2247a7){const _0x35bdbd=_0x5dcc67,_0x2c1b93={'eFEdW':function(_0x37d7f9){return _0x37d7f9();},'CrHtN':function(_0x46c0b4,_0x3e6054){return _0x46c0b4(_0x3e6054);},'aGFJp':function(_0x392f55,_0x59a045,_0x4a9f30){return _0x392f55(_0x59a045,_0x4a9f30);}},_0x2f845c=_0x2247a7||await _0x2c1b93['eFEdW'](getActiveFeatureId);if(!_0x2f845c)throw new Error(_0x35bdbd(0x267));const _0x18715e=await _0x2c1b93['CrHtN'](getFeature,_0x2f845c);_0x2c1b93['aGFJp'](displayFeature,_0x18715e,_0x18715e['checklistItems']);}export async function featureResume(_0x516573){const _0x33d995=_0x5dcc67,_0x14c18d={'kjynm':function(_0x4c4be3){return _0x4c4be3();},'twdgc':function(_0x2ac0ac,_0x29a4c9){return _0x2ac0ac!==_0x29a4c9;},'xPsQN':function(_0x2463c2,_0x534b98,_0x537049){return _0x2463c2(_0x534b98,_0x537049);},'CJyRz':function(_0x196c38,_0x19f9d2){return _0x196c38(_0x19f9d2);},'heiix':function(_0x4912d0){return _0x4912d0();},'FXXag':function(_0x1b2717,_0x30258a){return _0x1b2717&&_0x30258a;},'twCpV':_0x33d995(0x20d),'dhjRp':function(_0x4ecd3a,_0x2126af){return _0x4ecd3a||_0x2126af;},'CobqF':'any','LNkbi':function(_0x40e647,_0x120a90){return _0x40e647(_0x120a90);},'YOWtt':'\x0aNo\x20matching\x20active\x20feature\x20reviews\x20found.','rRZwb':function(_0x1601ad,_0x2187d2){return _0x1601ad===_0x2187d2;},'EiGGs':'\x0aNon-interactive\x20mode\x20detected.\x20Multiple\x20feature\x20reviews\x20found:','Hzjdc':_0x33d995(0x245),'xmcWi':function(_0x27ce81,_0x2473c8){return _0x27ce81(_0x2473c8);},'xDruZ':function(_0x3b4257,_0x3088cd,_0x3dfd10){return _0x3b4257(_0x3088cd,_0x3dfd10);},'tQwRM':function(_0x3452bf,_0x5d834b){return _0x3452bf(_0x5d834b);}};if(_0x516573){const _0x23b214=await getFeature(_0x516573);await setActiveFeatureId(_0x23b214['id']);const _0x449b76=_0x14c18d[_0x33d995(0x230)](getGitBranch);_0x449b76&&_0x14c18d['twdgc'](_0x449b76,_0x23b214[_0x33d995(0x1e8)])&&(await _0x14c18d[_0x33d995(0x26d)](updateFeature,_0x23b214['id'],{'gitBranch':_0x449b76}),console[_0x33d995(0x1c2)]('\x20\x20\x20Updated\x20branch\x20to:\x20'+_0x449b76));console['log'](_0x33d995(0x1bc)+_0x23b214[_0x33d995(0x273)]+'\x20('+_0x23b214['id']+')'),await _0x14c18d[_0x33d995(0x279)](tryStartCurrentSession,_0x23b214['id']);const _0x3b0fa4=process[_0x33d995(0x1c1)][_0x33d995(0x254)];_0x3b0fa4&&registerSession(_0x3b0fa4,_0x23b214['id']);_0x14c18d['xPsQN'](displayFeature,_0x23b214,_0x23b214['checklistItems']),await printFeedbackNudge(_0x23b214['id']);return;}const _0x13e308=_0x14c18d[_0x33d995(0x230)](getGitRepoUrl),_0x271a6a=_0x14c18d[_0x33d995(0x1c4)](getGitBranch);if(_0x14c18d['FXXag'](!_0x13e308,!_0x271a6a))throw new Error(_0x14c18d[_0x33d995(0x23e)]);console['log'](_0x33d995(0x212)+(_0x13e308||'any')+_0x33d995(0x1bd)+_0x14c18d[_0x33d995(0x226)](_0x271a6a,_0x14c18d['CobqF'])+'...');const _0x18a572=await _0x14c18d[_0x33d995(0x257)](listFeatures,{'gitRepoUrl':_0x13e308,'gitBranch':_0x271a6a}),_0x4deabf=_0x18a572[_0x33d995(0x24e)]['filter'](_0xcb417d=>!_0xcb417d['completedAt']);if(_0x4deabf['length']===0x0){console[_0x33d995(0x1c2)](_0x14c18d['YOWtt']),console['log'](_0x33d995(0x28c));return;}let _0xf4b08e;if(_0x14c18d[_0x33d995(0x225)](_0x4deabf[_0x33d995(0x28e)],0x1))_0xf4b08e=_0x4deabf[0x0];else{const _0x35fb59=process[_0x33d995(0x264)]['isTTY']&&process[_0x33d995(0x246)][_0x33d995(0x1cc)];if(!_0x35fb59){console[_0x33d995(0x1c2)](_0x14c18d[_0x33d995(0x1f2)]);for(const _0x273625 of _0x4deabf){console['log']('\x20\x20'+_0x273625[_0x33d995(0x273)]),console['log']('\x20\x20\x20\x20\x20ID:\x20'+_0x273625['id']),_0x273625['stats']&&console[_0x33d995(0x1c2)]('\x20\x20\x20\x20\x20Progress:\x20'+getProgressDisplay(_0x273625[_0x33d995(0x200)])),_0x273625['gitBranch']&&console[_0x33d995(0x1c2)](_0x33d995(0x2a5)+_0x273625['gitBranch']);}throw new Error(_0x33d995(0x25e));}const {selected:_0x575f86}=await _0x16eea6[_0x33d995(0x293)]([{'type':_0x14c18d[_0x33d995(0x1de)],'name':_0x33d995(0x24b),'message':_0x33d995(0x208),'choices':_0x4deabf['map'](_0x4ff8ad=>({'name':_0x4ff8ad['name']+'\x20('+_0x4ff8ad['id']+')','value':_0x4ff8ad['id']}))}]);_0xf4b08e=_0x4deabf['find'](_0x584ffa=>_0x584ffa['id']===_0x575f86);}await _0x14c18d[_0x33d995(0x23f)](setActiveFeatureId,_0xf4b08e['id']);_0x271a6a&&_0x14c18d[_0x33d995(0x256)](_0x271a6a,_0xf4b08e[_0x33d995(0x1e8)])&&(await _0x14c18d[_0x33d995(0x22b)](updateFeature,_0xf4b08e['id'],{'gitBranch':_0x271a6a}),console['log']('\x20\x20\x20Updated\x20branch\x20to:\x20'+_0x271a6a));console['log']('\x0a✅\x20Resumed\x20feature\x20review:\x20'+_0xf4b08e[_0x33d995(0x273)]+'\x20('+_0xf4b08e['id']+')'),await tryStartCurrentSession(_0xf4b08e['id']);const _0x2697b6=await _0x14c18d['LNkbi'](getFeature,_0xf4b08e['id']),_0x3dd207=process['env'][_0x33d995(0x254)];_0x3dd207&&_0x14c18d[_0x33d995(0x22b)](registerSession,_0x3dd207,_0x2697b6['id']),displayFeature(_0x2697b6,_0x2697b6['checklistItems']),await _0x14c18d[_0x33d995(0x1bf)](printFeedbackNudge,_0x2697b6['id']);}async function printFeedbackNudge(_0x4d36d2){const _0x55e47e=_0x5dcc67,_0x6375fa={'JUwsy':function(_0xdcd417,_0xeff98d){return _0xdcd417>_0xeff98d;}};try{const {items:_0x12f8a4}=await getActionItems(_0x4d36d2);let _0x5b8b35=0x0,_0x3490ab=0x0;for(const _0x381536 of _0x12f8a4){const _0xe0da60=await getItemFeedback(_0x4d36d2,_0x381536['id']);_0x6375fa[_0x55e47e(0x292)](_0xe0da60['unaddressedComments']['length'],0x0)&&(_0x5b8b35+=_0xe0da60[_0x55e47e(0x26a)][_0x55e47e(0x28e)],_0x3490ab++);}_0x5b8b35>0x0&&(console[_0x55e47e(0x1c2)](_0x55e47e(0x247)+_0x5b8b35+'\x20unaddressed\x20reviewer\x20comment(s)\x20across\x20'+_0x3490ab+'\x20scenario(s).'),console[_0x55e47e(0x1c2)](_0x55e47e(0x1ef)));}catch{}}async function tryStartCurrentSession(_0x2ceb1d){const _0x505ca2=_0x5dcc67,_0x2b69d0={'QYBOw':function(_0x45e0ec,_0x35867e,_0x1c902b){return _0x45e0ec(_0x35867e,_0x1c902b);}};try{const {sessions:_0x2ed92e}=await listFeatureSessions(_0x2ceb1d),_0x37af7e=_0x2ed92e[_0x505ca2(0x206)](_0xb84fa7=>_0xb84fa7['status']==='ready');_0x37af7e&&(await _0x2b69d0['QYBOw'](startSession,_0x2ceb1d,_0x37af7e['id']),console['log'](_0x505ca2(0x25f)+_0x37af7e['iteration']));}catch{}}export async function featureReport(_0x524b03,_0x28edf2){const _0x59be00=_0x5dcc67,_0x2ef290={'kLGIl':function(_0x2fb5b3){return _0x2fb5b3();},'JAPyl':_0x59be00(0x2a1),'xoifZ':_0x59be00(0x1db),'dpjIC':function(_0x3d7524,_0x57e4a9,_0x4d2814){return _0x3d7524(_0x57e4a9,_0x4d2814);},'jSKoT':function(_0x57d031,_0x4d3c14){return _0x57d031(_0x4d3c14);},'FgHcX':_0x59be00(0x210)},_0x4989f6=_0x524b03||await _0x2ef290['kLGIl'](getActiveFeatureId);if(!_0x4989f6)throw new Error(_0x59be00(0x29b));console['log'](_0x2ef290['JAPyl']);const _0xd55f27=await getFeatureReportMarkdown(_0x4989f6,{'style':_0x28edf2['style']}),_0x5392c5=_0x28edf2[_0x59be00(0x23d)]||join(getRangerDir(),_0x2ef290[_0x59be00(0x29f)],_0x4989f6+_0x59be00(0x1eb)),_0x322127=_0x2ef290[_0x59be00(0x27a)](join,_0x5392c5,'..');!_0x2ef290['jSKoT'](existsSync,_0x322127)&&await mkdir(_0x322127,{'recursive':!![]}),await writeFile(_0x5392c5,_0xd55f27,_0x2ef290['FgHcX']),console[_0x59be00(0x1c2)](_0x59be00(0x1fe)+_0x5392c5);}function getScenarioResult(_0x3707da){const _0x4d173e=_0x5dcc67,_0x4ca02d={'WxBNu':function(_0x25fd2e,_0x283323){return _0x25fd2e===_0x283323;},'BnXHy':'closed','DKDRW':'verification_in_progress','MWGYd':_0x4d173e(0x26c)};if(_0x4ca02d[_0x4d173e(0x259)](_0x3707da['status'],_0x4ca02d['BnXHy']))return _0x3707da['terminalReason']??_0x4ca02d['BnXHy'];if(_0x3707da[_0x4d173e(0x236)]===_0x4ca02d[_0x4d173e(0x244)])return _0x4ca02d[_0x4d173e(0x285)];return _0x3707da['status'];}function getScenarioRationale(_0x3199cc,_0x3138f4){const _0x5e80ee=_0x5dcc67,_0x30c83d={'HqvCS':'4|3|5|2|1|0'},_0x526af0=_0x30c83d['HqvCS']['split']('|');let _0x261e3b=0x0;while(!![]){switch(_0x526af0[_0x261e3b++]){case'0':return null;case'1':if(_0x3199cc[_0x5e80ee(0x24f)])return _0x3199cc[_0x5e80ee(0x24f)];continue;case'2':if(_0x3199cc['canceledReason'])return _0x3199cc[_0x5e80ee(0x1d1)];continue;case'3':if(_0x3199cc['blockedReason'])return _0x3199cc[_0x5e80ee(0x2a3)];continue;case'4':if(_0x3138f4)return _0x3138f4;continue;case'5':if(_0x3199cc['incompleteReason'])return _0x3199cc['incompleteReason'];continue;}break;}}export async function featureReportPrDescription(_0x22a303,_0x5f499f){const _0x988dd=_0x5dcc67,_0x376bf5={'goabm':'No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.','pekqZ':function(_0x45f885,_0x49f67e,_0x3cf5ef){return _0x45f885(_0x49f67e,_0x3cf5ef);},'tlJOQ':function(_0x1457af,_0x32ed12){return _0x1457af===_0x32ed12;},'VzmYt':_0x988dd(0x1f9),'bQLOn':function(_0x538823,_0x37f151){return _0x538823>_0x37f151;},'UsWmN':'\x0aAvailable\x20scenarios:','BZiYn':function(_0x410170,_0x1c1239){return _0x410170===_0x1c1239;},'HNaNw':function(_0x8067ac,_0x6ce1f6,_0x448149){return _0x8067ac(_0x6ce1f6,_0x448149);}},_0x14985e=_0x22a303||await getActiveFeatureId();if(!_0x14985e)throw new Error(_0x376bf5['goabm']);const _0x1273a8=await getFeature(_0x14985e),_0x4b7a7e=_0x1273a8[_0x988dd(0x234)]||[],_0x109754=_0x376bf5[_0x988dd(0x231)](getCurrentSessionItems,_0x1273a8,_0x4b7a7e);_0x376bf5['tlJOQ'](_0x109754['length'],0x0)&&(console['error'](_0x376bf5['VzmYt']),process[_0x988dd(0x211)](0x1));const _0x56adbf=_0x5f499f['excludeScenarios']??[],_0x28714d=_0x56adbf[_0x988dd(0x1fc)](_0x529716=>!Number['isInteger'](_0x529716)||_0x529716<0x1||_0x529716>_0x109754['length']);if(_0x376bf5['bQLOn'](_0x28714d[_0x988dd(0x28e)],0x0)){console['error'](_0x988dd(0x209)+_0x28714d['join'](',\x20')),console['log'](_0x376bf5['UsWmN']);for(let _0x408d83=0x0;_0x408d83<_0x109754['length'];_0x408d83++){console[_0x988dd(0x1c2)]('\x20\x20'+(_0x408d83+0x1)+'.\x20'+_0x109754[_0x408d83][_0x988dd(0x1b8)]);}process[_0x988dd(0x211)](0x1);}const _0x3e39fa=new Set(_0x56adbf[_0x988dd(0x1d0)](_0x484b53=>_0x484b53-0x1)),_0x467e95=_0x109754['filter']((_0x2ab9eb,_0x57c3cb)=>!_0x3e39fa['has'](_0x57c3cb));_0x376bf5['BZiYn'](_0x467e95['length'],0x0)&&(console[_0x988dd(0x21d)]('\x0a❌\x20All\x20scenarios\x20were\x20excluded.'),process[_0x988dd(0x211)](0x1));if(_0x5f499f['json'])await outputJsonReport(_0x14985e,_0x1273a8,_0x467e95);else{const _0xabddc7=await _0x376bf5['HNaNw'](getFeatureReportMarkdown,_0x14985e,{'itemIds':_0x467e95[_0x988dd(0x1d0)](_0x4b0530=>_0x4b0530['id'])});process['stdout']['write'](_0xabddc7[_0x988dd(0x242)]()+'\x0a');}}async function outputJsonReport(_0x533aa4,_0x4eda0f,_0x2d5c9c){const _0x46a1f7=_0x5dcc67,_0x47a648={'Rdnaz':function(_0x516395,_0x5b1ba7){return _0x516395(_0x5b1ba7);},'nCpRn':function(_0x55b61d,_0x1c581b){return _0x55b61d>_0x1c581b;},'HsDaM':function(_0x36eedc,_0x260ffe){return _0x36eedc===_0x260ffe;},'hyLKT':function(_0x29271e,_0x49d0c1,_0xb73e9c){return _0x29271e(_0x49d0c1,_0xb73e9c);},'HnSDP':function(_0x574469,_0x115f8d){return _0x574469+_0x115f8d;}},_0x3bb8f8=getApiBaseUrl(),_0x40e8fc=await getFeatureReport(_0x533aa4),_0x5383cd=new Map(_0x40e8fc['checklistItems'][_0x46a1f7(0x1d0)](_0x514f2f=>[_0x514f2f['id'],_0x514f2f])),_0x4d29bb=await Promise[_0x46a1f7(0x21e)](_0x2d5c9c['map'](async _0x21fba9=>{const _0x5d3284=_0x46a1f7,_0x2ba784=_0x5383cd[_0x5d3284(0x235)](_0x21fba9['id']),_0x219585=_0x2ba784?.['linkedSession']??null;let _0x2566d2=[];if(_0x21fba9['browserSessionId'])try{const {steps:_0x216bae}=await _0x47a648[_0x5d3284(0x1c9)](getBrowserSessionSteps,_0x21fba9[_0x5d3284(0x21c)]);_0x47a648['nCpRn'](_0x216bae['length'],0x0)&&(_0x2566d2=_0x216bae[_0x5d3284(0x1d0)](_0x5ccc5d=>{const _0x618830=_0x5d3284,_0x6513a4=_0x5ccc5d['assets'][_0x618830(0x206)](_0x33e83c=>_0x33e83c[_0x618830(0x28f)]===_0x618830(0x282)&&_0x33e83c[_0x618830(0x218)]===_0x618830(0x27e))??_0x5ccc5d[_0x618830(0x22f)][_0x618830(0x206)](_0x47ce7b=>_0x47ce7b['assetType']===_0x618830(0x282));let _0x4a5745=null,_0xc69261=null;if(_0x6513a4){const _0x449e72=_0x6513a4['storage'][_0x618830(0x223)]['split']('/')['pop']();_0x4a5745=_0x3bb8f8+_0x618830(0x2a0)+_0x21fba9['browserSessionId']+_0x618830(0x26e)+_0x449e72,_0x449e72&&(_0xc69261=_0x449e72['replace'](/\.\w+$/,'')[_0x618830(0x297)](/^(key_)?\d+_/,'')['replace'](/[-_]/g,'\x20'));}return{'description':_0xc69261||_0x5ccc5d[_0x618830(0x1b8)]||_0x5ccc5d['stepName']||'Step\x20'+_0x5ccc5d[_0x618830(0x283)],'screenshot':_0x4a5745,'is_key_step':_0x5ccc5d[_0x618830(0x2a6)]};}));}catch{}return _0x47a648[_0x5d3284(0x20a)](_0x2566d2['length'],0x0)&&_0x219585?.[_0x5d3284(0x26f)]&&(_0x2566d2=_0x219585[_0x5d3284(0x26f)][_0x5d3284(0x1d0)]((_0x1c0ee4,_0x346ac9)=>({'description':'Screenshot\x20'+(_0x346ac9+0x1),'screenshot':_0x1c0ee4,'is_key_step':![]}))),{'description':_0x21fba9[_0x5d3284(0x1b8)],'result':getScenarioResult(_0x21fba9),'rationale':_0x47a648['hyLKT'](getScenarioRationale,_0x21fba9,_0x219585?.['agentResponse']),'steps':_0x2566d2};})),_0x446f39={'url':_0x4eda0f['dashboardUrl'],'scenarios':_0x4d29bb};process[_0x46a1f7(0x246)]['write'](_0x47a648[_0x46a1f7(0x1f0)](JSON[_0x46a1f7(0x27c)](_0x446f39,null,0x2),'\x0a'));}export async function featureConcludeSession(_0x12879e){const _0x12f1aa=_0x5dcc67,_0x59b901={'pPWHZ':function(_0x5f39ef){return _0x5f39ef();},'PLpii':'No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','fEOHH':function(_0x509d4f,_0x4dce16){return _0x509d4f(_0x4dce16);},'cnsNf':_0x12f1aa(0x1e2),'AoxSL':function(_0x1b3983,_0x5c4b8b){return _0x1b3983===_0x5c4b8b;},'mpDZa':_0x12f1aa(0x1c5),'xAEFR':function(_0x68f07a,_0x179005){return _0x68f07a!==_0x179005;},'xbqHG':_0x12f1aa(0x26c),'MjgTY':function(_0x2ab4f1,_0x35f90f,_0x2600c7){return _0x2ab4f1(_0x35f90f,_0x2600c7);}},_0x4a391c=_0x12879e||await _0x59b901[_0x12f1aa(0x1fa)](getActiveFeatureId);if(!_0x4a391c)throw new Error(_0x59b901['PLpii']);const _0x1dd9b1=await _0x59b901['fEOHH'](getFeature,_0x4a391c);if(!_0x1dd9b1[_0x12f1aa(0x298)])throw new Error(_0x59b901['cnsNf']);const {sessions:_0x8f288a}=await _0x59b901['fEOHH'](listFeatureSessions,_0x4a391c),_0x28b648=_0x8f288a['find'](_0x2fc069=>_0x2fc069['id']===_0x1dd9b1['currentSessionId']);if(!_0x28b648)throw new Error(_0x12f1aa(0x204));if(_0x59b901['AoxSL'](_0x28b648[_0x12f1aa(0x236)],_0x59b901['mpDZa'])){console[_0x12f1aa(0x1c2)]('\x0a✅\x20Session\x20is\x20already\x20completed.');return;}if(_0x59b901[_0x12f1aa(0x250)](_0x28b648[_0x12f1aa(0x236)],_0x59b901[_0x12f1aa(0x295)]))throw new Error(_0x12f1aa(0x205)+_0x28b648[_0x12f1aa(0x236)]);console[_0x12f1aa(0x1c2)]('\x0aConcluding\x20session...'),await _0x59b901['MjgTY'](concludeSession,_0x4a391c,_0x1dd9b1['currentSessionId']),console[_0x12f1aa(0x1c2)](_0x12f1aa(0x1dd)+_0x28b648['iteration']+_0x12f1aa(0x29d)),console[_0x12f1aa(0x1c2)](_0x12f1aa(0x224));}export async function featureSessions(_0x193d78){const _0x339be7=_0x5dcc67,_0x410e23={'lyVRk':_0x339be7(0x29b),'hPzBb':_0x339be7(0x27b),'DdHnT':function(_0x7338bf,_0x4bcfca){return _0x7338bf===_0x4bcfca;},'yJlvj':function(_0x12ad33,_0x43a00a){return _0x12ad33===_0x43a00a;},'doBjr':_0x339be7(0x26c)},_0x13c02e=_0x193d78||await getActiveFeatureId();if(!_0x13c02e)throw new Error(_0x410e23[_0x339be7(0x1e3)]);const _0x1d357e=await getFeature(_0x13c02e);console[_0x339be7(0x1c2)](_0x339be7(0x261)+_0x1d357e[_0x339be7(0x273)]+'\x0a');const {sessions:_0x4ff496}=await listFeatureSessions(_0x13c02e);if(_0x4ff496[_0x339be7(0x28e)]===0x0){console['log'](_0x410e23[_0x339be7(0x1da)]);return;}for(const _0x3772b9 of _0x4ff496){const _0x1e35c7=_0x410e23[_0x339be7(0x25d)](_0x3772b9['status'],_0x339be7(0x1c5))?'✅':_0x410e23['yJlvj'](_0x3772b9[_0x339be7(0x236)],_0x410e23[_0x339be7(0x1c7)])?'🔄':'▶️';console['log'](_0x1e35c7+_0x339be7(0x22c)+_0x3772b9['iteration']+'\x20('+_0x3772b9['id']+')'),console['log']('\x20\x20\x20Status:\x20'+_0x3772b9['status']),console[_0x339be7(0x1c2)]('\x20\x20\x20Created:\x20'+new Date(_0x3772b9['createdAt'])['toLocaleString']()),_0x3772b9['completedAt']&&console[_0x339be7(0x1c2)]('\x20\x20\x20Completed:\x20'+new Date(_0x3772b9[_0x339be7(0x1cf)])['toLocaleString']()),console[_0x339be7(0x1c2)]('');}}export async function featureAddScenario(_0x22563c,_0x15c964){const _0xd05cf9=_0x5dcc67,_0x27f240={'MTQSj':_0xd05cf9(0x267),'EvBMj':function(_0x1db000,_0x5c9bec){return _0x1db000(_0x5c9bec);},'zmWId':function(_0x12d3dd,_0x1be8cd,_0x1cee20){return _0x12d3dd(_0x1be8cd,_0x1cee20);}},_0x79e2ea=_0x15c964||await getActiveFeatureId();if(!_0x79e2ea)throw new Error(_0x27f240['MTQSj']);const _0x4d7ea7=await _0x27f240[_0xd05cf9(0x1f3)](getFeature,_0x79e2ea);if(_0x4d7ea7[_0xd05cf9(0x252)]&&!_0x4d7ea7[_0xd05cf9(0x252)]['submittedAt'])throw new Error(_0xd05cf9(0x249)+_0x4d7ea7[_0xd05cf9(0x216)]);await _0x27f240['zmWId'](createChecklistItem,_0x79e2ea,_0x22563c);const _0x5e22a4=await _0x27f240[_0xd05cf9(0x1f3)](getFeature,_0x79e2ea);console['log'](_0xd05cf9(0x221)),_0x27f240[_0xd05cf9(0x220)](displayFeature,_0x5e22a4,_0x5e22a4[_0xd05cf9(0x234)]);}export async function featureEditScenario(_0x4af1b2,_0x26d0eb){const _0x1e61ee=_0x5dcc67,_0x3be6d1={'KwAGB':'Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','CxOPw':function(_0x2e84ce,_0x3efcc5){return _0x2e84ce(_0x3efcc5);},'Dxyhg':'\x0a❌\x20Cannot\x20edit\x20scenario:\x20feature\x20review\x20has\x20an\x20active\x20review.','RozRg':function(_0x7c9a32,_0x3ea88f){return _0x7c9a32===_0x3ea88f;},'bggqm':_0x1e61ee(0x263),'dCJzb':function(_0x3d307b,_0x72947c){return _0x3d307b+_0x72947c;},'ZjWrJ':function(_0x3e4546,_0x223e59){return _0x3e4546-_0x223e59;},'hhfhB':function(_0x137719,_0x5963d6,_0x485caa){return _0x137719(_0x5963d6,_0x485caa);}},_0x3cad5d=_0x26d0eb['id']||await getActiveFeatureId();!_0x3cad5d&&(console['error']('\x0a❌\x20No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.'),console['error'](_0x3be6d1['KwAGB']),process[_0x1e61ee(0x211)](0x1));const _0x349180=await _0x3be6d1['CxOPw'](getFeature,_0x3cad5d);_0x349180['latestReview']&&!_0x349180[_0x1e61ee(0x252)]['submittedAt']&&(console[_0x1e61ee(0x21d)](_0x3be6d1['Dxyhg']),console[_0x1e61ee(0x21d)]('Please\x20finish\x20your\x20review\x20first:'),console[_0x1e61ee(0x21d)]('\x20\x20'+_0x349180[_0x1e61ee(0x216)]),process[_0x1e61ee(0x211)](0x1));const _0x5b8b2d=_0x349180['checklistItems']||[];_0x3be6d1['RozRg'](_0x5b8b2d['length'],0x0)&&(console[_0x1e61ee(0x21d)](_0x3be6d1['bggqm']),process['exit'](0x1));if(_0x26d0eb[_0x1e61ee(0x289)]===undefined){console[_0x1e61ee(0x21d)](_0x1e61ee(0x277)),console[_0x1e61ee(0x1c2)](_0x1e61ee(0x266));for(let _0x2ff26e=0x0;_0x2ff26e<_0x5b8b2d['length'];_0x2ff26e++){console['log']('\x20\x20'+_0x3be6d1[_0x1e61ee(0x233)](_0x2ff26e,0x1)+'.\x20'+_0x5b8b2d[_0x2ff26e]['description']);}process[_0x1e61ee(0x211)](0x1);}const _0x2caa75=_0x3be6d1[_0x1e61ee(0x1cd)](_0x26d0eb['scenario'],0x1);if(_0x2caa75<0x0||_0x2caa75>=_0x5b8b2d[_0x1e61ee(0x28e)]){console['error'](_0x1e61ee(0x20f)+_0x26d0eb['scenario']+'.\x20Feature\x20review\x20has\x20'+_0x5b8b2d[_0x1e61ee(0x28e)]+_0x1e61ee(0x229)),console[_0x1e61ee(0x1c2)]('\x0aAvailable\x20scenarios:');for(let _0x97c518=0x0;_0x97c518<_0x5b8b2d[_0x1e61ee(0x28e)];_0x97c518++){console[_0x1e61ee(0x1c2)]('\x20\x20'+(_0x97c518+0x1)+'.\x20'+_0x5b8b2d[_0x97c518][_0x1e61ee(0x1b8)]);}process[_0x1e61ee(0x211)](0x1);}const _0xaf10ee=_0x5b8b2d[_0x2caa75];await updateChecklistItem(_0x3cad5d,_0xaf10ee['id'],{'description':_0x4af1b2});const _0x5f5e0a=await getFeature(_0x3cad5d);console['log'](_0x1e61ee(0x28a)),_0x3be6d1['hhfhB'](displayFeature,_0x5f5e0a,_0x5f5e0a['checklistItems']);}async function downloadFeedbackImage(_0xe3f879,_0xb80cb9){const _0x4d2066=_0x5dcc67,_0x330a35={'vQYcM':function(_0x1e810d,_0x5e84a2,_0x4dcb3d){return _0x1e810d(_0x5e84a2,_0x4dcb3d);},'rSbPd':function(_0x5be819){return _0x5be819();},'sSyOA':'feedback-images'};try{const _0x4aa8b8=_0x330a35[_0x4d2066(0x24a)](join,_0x330a35['rSbPd'](getRangerDir),_0x330a35['sSyOA']);await mkdir(_0x4aa8b8,{'recursive':!![]});const _0x2bf6eb=_0x330a35['vQYcM'](join,_0x4aa8b8,_0x4d2066(0x24d)+_0xb80cb9+_0x4d2066(0x260)),_0x37260c=await fetch(_0xe3f879);if(!_0x37260c['ok'])return null;const _0x5ebedf=Buffer[_0x4d2066(0x217)](await _0x37260c['arrayBuffer']());return await writeFile(_0x2bf6eb,_0x5ebedf),_0x2bf6eb;}catch{return null;}}export async function featureGetReview(_0x496bcc){const _0x5cb07d=_0x5dcc67,_0x4ce032={'aQUgB':function(_0x2f4f33,_0x1b82f5){return _0x2f4f33(_0x1b82f5);},'VLqUS':function(_0x303d3a,_0x13fe70){return _0x303d3a===_0x13fe70;},'Wtosj':function(_0x1ddfeb,_0x4dc946){return _0x1ddfeb<_0x4dc946;},'FnCxV':function(_0xca6df4,_0x133a90){return _0xca6df4>_0x133a90;},'wdbcC':function(_0x4e1425,_0x2f64f9,_0x1fc820){return _0x4e1425(_0x2f64f9,_0x1fc820);},'TGEYe':'en-US','RNSjP':'short','HwjRE':'Unknown','WDcqR':_0x5cb07d(0x1dc),'ONBuG':_0x5cb07d(0x29c),'HIKbd':function(_0x3572d2,_0xde8f84){return _0x3572d2+_0xde8f84;}},_0x49fb1b=_0x496bcc||await getActiveFeatureId();if(!_0x49fb1b)throw new Error(_0x5cb07d(0x267));const _0x93a271=await getFeature(_0x49fb1b),{items:_0x58cb2c}=await _0x4ce032['aQUgB'](getActionItems,_0x49fb1b);console['log'](_0x5cb07d(0x255)+_0x93a271[_0x5cb07d(0x273)]+'\x20('+_0x93a271['id']+')\x0a');if(_0x4ce032['VLqUS'](_0x58cb2c['length'],0x0)){console[_0x5cb07d(0x1c2)]('No\x20scenarios\x20found.');return;}for(let _0xbe1f14=0x0;_0x4ce032[_0x5cb07d(0x1d9)](_0xbe1f14,_0x58cb2c[_0x5cb07d(0x28e)]);_0xbe1f14++){const _0x4e94f3=_0x58cb2c[_0xbe1f14],_0x4018fa=_0x4ce032[_0x5cb07d(0x27f)](_0x4e94f3[_0x5cb07d(0x201)],0x1)?_0x5cb07d(0x1ea)+_0x4e94f3['version']+')':'',_0x2b7294=await _0x4ce032[_0x5cb07d(0x248)](getItemFeedback,_0x49fb1b,_0x4e94f3['id']);if(_0x2b7294[_0x5cb07d(0x26a)][_0x5cb07d(0x28e)]>0x0){console['log']('Scenario\x20'+(_0xbe1f14+0x1)+_0x5cb07d(0x1e4)+_0x4e94f3[_0x5cb07d(0x1b8)]+'\x22'+_0x4018fa+_0x5cb07d(0x202)+_0x2b7294[_0x5cb07d(0x26a)]['length']+'\x20unaddressed\x20comment(s)');for(const _0x34281d of _0x2b7294[_0x5cb07d(0x26a)]){const _0x180893=new Date(_0x34281d[_0x5cb07d(0x28b)])['toLocaleDateString'](_0x4ce032['TGEYe'],{'month':_0x4ce032[_0x5cb07d(0x1e6)],'day':_0x5cb07d(0x20e)}),_0x39c9c8=_0x34281d[_0x5cb07d(0x22e)]||_0x34281d[_0x5cb07d(0x1e5)]||_0x4ce032[_0x5cb07d(0x274)];console[_0x5cb07d(0x1c2)](_0x5cb07d(0x1ca)+_0x39c9c8+'\x20('+_0x180893+'):\x20\x22'+_0x34281d['content']+'\x22');if(_0x34281d['assetUrl']){const _0x4dc0f7=await downloadFeedbackImage(_0x34281d[_0x5cb07d(0x228)],_0x34281d['id']);_0x4dc0f7&&console[_0x5cb07d(0x1c2)](_0x5cb07d(0x290)+_0x4dc0f7);}if(_0x34281d['domRef']){const _0x177f80=_0x34281d[_0x5cb07d(0x25c)][_0x5cb07d(0x272)]['split'](_0x4ce032['WDcqR'])[_0x5cb07d(0x2a4)]()?.['split'](':')[0x0]||_0x5cb07d(0x1d7),_0x511797=_0x34281d[_0x5cb07d(0x25c)][_0x5cb07d(0x1f8)]?'\x20\x22'+_0x34281d[_0x5cb07d(0x25c)][_0x5cb07d(0x1f8)]['slice'](0x0,0x3c)+'\x22':'';console['log'](_0x5cb07d(0x25a)+_0x177f80+'>'+_0x511797),console['log'](_0x5cb07d(0x276)+_0x34281d['domRef']['selector']);}else{if(_0x34281d['spatial']){const _0x34631d=_0x34281d[_0x5cb07d(0x219)][_0x5cb07d(0x1ed)];_0x34281d['spatial'][_0x5cb07d(0x1e0)]===_0x4ce032['ONBuG']&&_0x34631d['length']>=0x2?console['log'](_0x5cb07d(0x284)+_0x34631d[0x0][_0x5cb07d(0x227)](0x2)+',\x20'+_0x34631d[0x1]['toFixed'](0x2)+')'):console['log']('\x20\x20\x20\x20\x20📍\x20Annotation:\x20'+_0x34281d['spatial']['type']+'\x20at\x20['+_0x34631d[_0x5cb07d(0x1d0)](_0x4e97b1=>_0x4e97b1[_0x5cb07d(0x227)](0x2))['join'](',\x20')+']');}}}if(_0x2b7294['canonicalFlow']){console['log'](_0x5cb07d(0x288));for(const _0x5f07d1 of _0x2b7294['canonicalFlow'][_0x5cb07d(0x21f)]('\x0a')){console['log']('\x20\x20\x20\x20'+_0x5f07d1);}}}else console[_0x5cb07d(0x1c2)](_0x5cb07d(0x1d2)+_0x4ce032[_0x5cb07d(0x1e9)](_0xbe1f14,0x1)+_0x5cb07d(0x1e4)+_0x4e94f3[_0x5cb07d(0x1b8)]+'\x22'+_0x4018fa+_0x5cb07d(0x20c)),console[_0x5cb07d(0x1c2)]('\x20\x20✅\x20No\x20feedback\x20to\x20address');console['log']('');}}export async function featureDelete(_0x1ffb9e){const _0x573bb0=_0x5dcc67,_0x1d5d24={'buhON':'No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','Dlhjk':function(_0x30e7fc,_0x2b90f3){return _0x30e7fc(_0x2b90f3);},'pVfsY':function(_0x26c691,_0x437858){return _0x26c691+_0x437858;},'lsMMH':'\x20\x20\x20To\x20restore\x20it,\x20run:\x20ranger\x20restore\x20'},_0x3b7027=_0x1ffb9e||await getActiveFeatureId();if(!_0x3b7027)throw new Error(_0x1d5d24[_0x573bb0(0x22d)]);const _0x561b4f=await getFeature(_0x3b7027);await _0x1d5d24[_0x573bb0(0x222)](softDeleteFeature,_0x3b7027),console['log']('\x0a🗑️\x20\x20Deleted\x20feature\x20review:\x20'+_0x561b4f[_0x573bb0(0x273)]+'\x20('+_0x3b7027+')'),console[_0x573bb0(0x1c2)](_0x1d5d24[_0x573bb0(0x215)](_0x1d5d24['lsMMH'],_0x3b7027));}export async function featureRestore(_0x132a8c){const _0x40ac7f=_0x5dcc67,_0xd2ca03={'GzFTN':function(_0x1c3ab7,_0x1478bb){return _0x1c3ab7(_0x1478bb);}};await _0xd2ca03[_0x40ac7f(0x1ff)](restoreFeature,_0x132a8c);const _0x45442d=await _0xd2ca03['GzFTN'](getFeature,_0x132a8c);console['log'](_0x40ac7f(0x1df)+_0x45442d[_0x40ac7f(0x273)]+'\x20('+_0x132a8c+')'),displayFeature(_0x45442d,_0x45442d['checklistItems']);}
@@ -1 +1 @@
1
- (function(_0x11ec2d,_0x52b342){const _0x2c0d7f=_0x4656,_0x5186f5=_0x11ec2d();while(!![]){try{const _0x4c8aa5=-parseInt(_0x2c0d7f(0xb1))/0x1*(parseInt(_0x2c0d7f(0xb4))/0x2)+parseInt(_0x2c0d7f(0xaf))/0x3*(parseInt(_0x2c0d7f(0xba))/0x4)+parseInt(_0x2c0d7f(0xb7))/0x5*(-parseInt(_0x2c0d7f(0xb0))/0x6)+-parseInt(_0x2c0d7f(0xbc))/0x7*(parseInt(_0x2c0d7f(0xb8))/0x8)+-parseInt(_0x2c0d7f(0xbd))/0x9*(parseInt(_0x2c0d7f(0xb9))/0xa)+parseInt(_0x2c0d7f(0xb3))/0xb*(-parseInt(_0x2c0d7f(0xae))/0xc)+parseInt(_0x2c0d7f(0xb2))/0xd;if(_0x4c8aa5===_0x52b342)break;else _0x5186f5['push'](_0x5186f5['shift']());}catch(_0x586c22){_0x5186f5['push'](_0x5186f5['shift']());}}}(_0x2cf7,0xc890b));import{sessionStart,sessionEnd,preCompact,postEdit,planStart,planReminder,exitPlanMode,stopHook,enable,disable,autoPrompt}from'./hooks/index.js';function _0x4656(_0x5bb3dd,_0x2b5084){_0x5bb3dd=_0x5bb3dd-0xae;const _0x2cf733=_0x2cf7();let _0x465630=_0x2cf733[_0x5bb3dd];return _0x465630;}const HOOKS={'session-start':sessionStart,'session-end':sessionEnd,'pre-compact':preCompact,'post-edit':postEdit,'plan-start':planStart,'plan-reminder':planReminder,'exit-plan-mode':exitPlanMode,'stop':stopHook,'enable':enable,'disable':disable,'auto-prompt':autoPrompt};let cancellationHandlersInstalled=![];function installCancellationHandlers(){const _0xcaf6fb=_0x4656;if(cancellationHandlersInstalled)return;const _0x202858=()=>{const _0x103d37=_0x4656;process[_0x103d37(0xbe)](0x0);};process[_0xcaf6fb(0xb6)]('SIGINT',_0x202858),process[_0xcaf6fb(0xb6)]('SIGTERM',_0x202858),process['once'](_0xcaf6fb(0xb5),_0x202858),cancellationHandlersInstalled=!![];}function _0x2cf7(){const _0x4b19a5=['SIGHUP','once','35vzGUIW','8nHDXYj','3243040XRlfGt','18364ASMXsO','Unknown\x20hook:\x20','2642619MhtqrN','45QzruDy','exit','error','18211332gXheRf','1017NMjCaR','45204eHCrBD','3244iewYkB','51693720IqGTkh','11FhGxsp','704SheANX'];_0x2cf7=function(){return _0x4b19a5;};return _0x2cf7();}export async function hook(_0x55367c,_0x589046){const _0x52a20a=_0x4656;installCancellationHandlers();const _0x4e50a3=HOOKS[_0x55367c];if(!_0x4e50a3){const _0x56019f=Object['keys'](HOOKS)['join'](',\x20');console[_0x52a20a(0xbf)](_0x52a20a(0xbb)+_0x55367c),console['error']('Valid\x20hooks:\x20'+_0x56019f),process['exit'](0x1);}await _0x4e50a3(_0x589046);}
1
+ (function(_0x50dc58,_0x18df67){const _0x46ef30=_0x367f,_0xaf2fd6=_0x50dc58();while(!![]){try{const _0x59b743=-parseInt(_0x46ef30(0xdc))/0x1*(parseInt(_0x46ef30(0xe5))/0x2)+parseInt(_0x46ef30(0xd6))/0x3+-parseInt(_0x46ef30(0xdf))/0x4+parseInt(_0x46ef30(0xdd))/0x5+parseInt(_0x46ef30(0xd7))/0x6*(parseInt(_0x46ef30(0xda))/0x7)+parseInt(_0x46ef30(0xe1))/0x8+-parseInt(_0x46ef30(0xe4))/0x9;if(_0x59b743===_0x18df67)break;else _0xaf2fd6['push'](_0xaf2fd6['shift']());}catch(_0x32c037){_0xaf2fd6['push'](_0xaf2fd6['shift']());}}}(_0x1924,0xefafd));import{sessionStart,sessionEnd,preCompact,postEdit,planStart,planReminder,exitPlanMode,stopHook,enable,disable,autoPrompt}from'./hooks/index.js';const HOOKS={'session-start':sessionStart,'session-end':sessionEnd,'pre-compact':preCompact,'post-edit':postEdit,'plan-start':planStart,'plan-reminder':planReminder,'exit-plan-mode':exitPlanMode,'stop':stopHook,'enable':enable,'disable':disable,'auto-prompt':autoPrompt};let cancellationHandlersInstalled=![];function installCancellationHandlers(){const _0x33b0e5=_0x367f,_0x5c6c9d={'GbBUR':'SIGINT'};if(cancellationHandlersInstalled)return;const _0x9794bf=()=>{process['exit'](0x0);};process[_0x33b0e5(0xde)](_0x5c6c9d['GbBUR'],_0x9794bf),process[_0x33b0e5(0xde)](_0x33b0e5(0xd8),_0x9794bf),process[_0x33b0e5(0xde)](_0x33b0e5(0xe0),_0x9794bf),cancellationHandlersInstalled=!![];}function _0x367f(_0x221387,_0x13b93c){_0x221387=_0x221387-0xd6;const _0x1924e9=_0x1924();let _0x367fc4=_0x1924e9[_0x221387];return _0x367fc4;}export async function hook(_0x3377eb,_0x4c1edf){const _0x42703c=_0x367f;installCancellationHandlers();const _0x51ff6d=HOOKS[_0x3377eb];if(!_0x51ff6d){const _0x52974c=Object[_0x42703c(0xe2)](HOOKS)[_0x42703c(0xd9)](',\x20');console[_0x42703c(0xe3)]('Unknown\x20hook:\x20'+_0x3377eb),console['error']('Valid\x20hooks:\x20'+_0x52974c),process[_0x42703c(0xdb)](0x1);}await _0x51ff6d(_0x4c1edf);}function _0x1924(){const _0x3f04b7=['263sqcZQM','4814520lHxicB','once','837828KOabYm','SIGHUP','545328ONsAZJ','keys','error','13683897GcYXnq','1316qjOiqH','4597239lwOrXx','41898cilXFz','SIGTERM','join','322KBEwJf','exit'];_0x1924=function(){return _0x3f04b7;};return _0x1924();}
@@ -1 +1 @@
1
- (function(_0x14299e,_0x585864){const _0x2d612b=_0x2cbe,_0x4cfc89=_0x14299e();while(!![]){try{const _0x1f841a=parseInt(_0x2d612b(0x1b0))/0x1*(-parseInt(_0x2d612b(0x1a5))/0x2)+-parseInt(_0x2d612b(0x1aa))/0x3+-parseInt(_0x2d612b(0x1a7))/0x4+parseInt(_0x2d612b(0x1a9))/0x5*(parseInt(_0x2d612b(0x1ab))/0x6)+parseInt(_0x2d612b(0x1a6))/0x7*(-parseInt(_0x2d612b(0x1af))/0x8)+parseInt(_0x2d612b(0x1ac))/0x9*(parseInt(_0x2d612b(0x1a4))/0xa)+parseInt(_0x2d612b(0x1ae))/0xb;if(_0x1f841a===_0x585864)break;else _0x4cfc89['push'](_0x4cfc89['shift']());}catch(_0x45bb90){_0x4cfc89['push'](_0x4cfc89['shift']());}}}(_0x255f,0x20256));import{readHookInput}from'./output.js';import{isSessionEnabled,hasSessionBeenPrompted,markSessionPrompted}from'../utils/sessionCache.js';const AUTO_PROMPT_TEXT='\x0a🚨\x20🚨\x20[ACTION\x20REQUIRED]\x20🚨\x20🚨\x0aBefore\x20responding\x20to\x20the\x20user\x27s\x20message,\x20consider\x20whether\x20this\x20task\x20will\x20involve\x20ANY\x20frontend,\x20UI,\x20or\x20browser\x20work.\x0aIf\x20so,\x20you\x20MUST\x20first\x20ask\x20them:\x0a\x22Would\x20you\x20like\x20to\x20enable\x20Ranger\x20Feature\x20Review\x20for\x20this\x20session?\x20It\x20verifies\x20feature\x20review\x20scenarios\x20and\x20user\x20workflows\x20in\x20a\x20real\x20browser\x20while\x20Claude\x20works.\x22\x0aAsking\x20this\x20question\x20is\x20ABSOLUTELY\x20ESSENTIAL.\x20DO\x20NOT\x20SKIP\x20THIS\x20STEP.\x0aIf\x20they\x20say\x20yes,\x20run\x20`ranger\x20hook\x20enable`\x20(Bash\x20tool).\x0aIf\x20they\x20say\x20no,\x20say\x20\x22Sounds\x20good.\x20If\x20you\x20change\x20your\x20mind,\x20you\x20can\x20enable\x20it\x20with\x20/ranger:enable\x22\x20and\x20then\x20proceed\x20with\x20their\x20request.\x0aThis\x20is\x20mandatory\x20—\x20do\x20not\x20skip\x20this\x20step.';function _0x2cbe(_0x90f83a,_0x55321d){_0x90f83a=_0x90f83a-0x1a4;const _0x255f8d=_0x255f();let _0x2cbe19=_0x255f8d[_0x90f83a];return _0x2cbe19;}export async function autoPrompt(){const _0x3dcfaa=_0x2cbe,_0x53f193={'xWTTS':function(_0x5414d5){return _0x5414d5();}},_0x128fdb=await _0x53f193[_0x3dcfaa(0x1ad)](readHookInput),_0x41301b=_0x128fdb?.[_0x3dcfaa(0x1a8)];if(!_0x41301b)return;if(isSessionEnabled(_0x41301b)||hasSessionBeenPrompted(_0x41301b))return;markSessionPrompted(_0x41301b),console['log'](AUTO_PROMPT_TEXT);}function _0x255f(){const _0x280994=['1PkVUKk','10rQwgXz','870IPtXCa','503405DxjuDj','207476tDzLUw','session_id','5ysOXuy','705711ncpaPg','159966JRPIeX','61353Zjlbih','xWTTS','6616258SUZikb','24iqNoxw'];_0x255f=function(){return _0x280994;};return _0x255f();}
1
+ const _0x15cc02=_0x5609;(function(_0x370678,_0x5d9ad2){const _0x4b0787=_0x5609,_0xdc5e93=_0x370678();while(!![]){try{const _0x3612e2=-parseInt(_0x4b0787(0x1e2))/0x1+parseInt(_0x4b0787(0x1df))/0x2*(-parseInt(_0x4b0787(0x1e0))/0x3)+parseInt(_0x4b0787(0x1e4))/0x4*(-parseInt(_0x4b0787(0x1e5))/0x5)+-parseInt(_0x4b0787(0x1e1))/0x6+-parseInt(_0x4b0787(0x1e3))/0x7*(-parseInt(_0x4b0787(0x1ea))/0x8)+-parseInt(_0x4b0787(0x1e9))/0x9+parseInt(_0x4b0787(0x1e8))/0xa;if(_0x3612e2===_0x5d9ad2)break;else _0xdc5e93['push'](_0xdc5e93['shift']());}catch(_0x2e8d19){_0xdc5e93['push'](_0xdc5e93['shift']());}}}(_0x56a2,0xe2cec));import{readHookInput}from'./output.js';function _0x56a2(){const _0x53d8cb=['47379610iiSozb','1425798WaWnUY','424lwzElL','2jGQcAN','5213973wlCyrv','10729170CMZuLA','158897xGqKDo','7833ueeHtf','108EwwcHB','4585UHETBa','\x0a🚨\x20🚨\x20[ACTION\x20REQUIRED]\x20🚨\x20🚨\x0aBefore\x20responding\x20to\x20the\x20user\x27s\x20message,\x20consider\x20whether\x20this\x20task\x20will\x20involve\x20ANY\x20frontend,\x20UI,\x20or\x20browser\x20work.\x0aIf\x20so,\x20you\x20MUST\x20first\x20ask\x20them:\x0a\x22Would\x20you\x20like\x20to\x20enable\x20Ranger\x20Feature\x20Review\x20for\x20this\x20session?\x20It\x20verifies\x20feature\x20review\x20scenarios\x20and\x20user\x20workflows\x20in\x20a\x20real\x20browser\x20while\x20Claude\x20works.\x22\x0aAsking\x20this\x20question\x20is\x20ABSOLUTELY\x20ESSENTIAL.\x20DO\x20NOT\x20SKIP\x20THIS\x20STEP.\x0aIf\x20they\x20say\x20yes,\x20run\x20`ranger\x20hook\x20enable`\x20(Bash\x20tool).\x0aIf\x20they\x20say\x20no,\x20say\x20\x22Sounds\x20good.\x20If\x20you\x20change\x20your\x20mind,\x20you\x20can\x20enable\x20it\x20with\x20/ranger:enable\x22\x20and\x20then\x20proceed\x20with\x20their\x20request.\x0aThis\x20is\x20mandatory\x20—\x20do\x20not\x20skip\x20this\x20step.','log'];_0x56a2=function(){return _0x53d8cb;};return _0x56a2();}import{isSessionEnabled,hasSessionBeenPrompted,markSessionPrompted}from'../utils/sessionCache.js';const AUTO_PROMPT_TEXT=_0x15cc02(0x1e6);function _0x5609(_0x415bf9,_0x360b11){_0x415bf9=_0x415bf9-0x1df;const _0x56a206=_0x56a2();let _0x560950=_0x56a206[_0x415bf9];return _0x560950;}export async function autoPrompt(){const _0x197df8=_0x15cc02,_0x3aa005={'GhIka':function(_0x31287d,_0x1fec70){return _0x31287d(_0x1fec70);},'yGYoY':function(_0x1c6b9e,_0x2aac7b){return _0x1c6b9e(_0x2aac7b);}},_0x519c28=await readHookInput(),_0xae6cdb=_0x519c28?.['session_id'];if(!_0xae6cdb)return;if(_0x3aa005['GhIka'](isSessionEnabled,_0xae6cdb)||_0x3aa005['yGYoY'](hasSessionBeenPrompted,_0xae6cdb))return;_0x3aa005['yGYoY'](markSessionPrompted,_0xae6cdb),console[_0x197df8(0x1e7)](AUTO_PROMPT_TEXT);}
@@ -1 +1 @@
1
- function _0x10b1(){const _0x5d39aa=['\x20and\x20branch\x20\x27','22060qJvhHh','XMskM','env','20iTUyxd','444ObjxZO','master','rlkOP','3622048cYvccL','386358cNeJPY','1777171QLjxLh','#\x20RANGER\x20DISABLED\x0a\x0aThe\x20user\x20has\x20expressly\x20disabled\x20Ranger\x20hooks\x20for\x20this\x20session','DHrjG','15133NzlRdO','14jIVmdA','17197956exmyhe','CLAUDE_SESSION_ID','4064669ZsYQMr','20Ztqgdx','9FDnGnm'];_0x10b1=function(){return _0x5d39aa;};return _0x10b1();}function _0x4f11(_0x485221,_0x415260){_0x485221=_0x485221-0xb8;const _0x10b1a4=_0x10b1();let _0x4f1198=_0x10b1a4[_0x485221];return _0x4f1198;}(function(_0x4986c7,_0x5066af){const _0x2fa877=_0x4f11,_0x3281ea=_0x4986c7();while(!![]){try{const _0x2b5265=-parseInt(_0x2fa877(0xc5))/0x1*(-parseInt(_0x2fa877(0xc6))/0x2)+parseInt(_0x2fa877(0xc1))/0x3*(-parseInt(_0x2fa877(0xca))/0x4)+parseInt(_0x2fa877(0xb9))/0x5*(-parseInt(_0x2fa877(0xbd))/0x6)+parseInt(_0x2fa877(0xc9))/0x7+parseInt(_0x2fa877(0xc0))/0x8*(-parseInt(_0x2fa877(0xcb))/0x9)+-parseInt(_0x2fa877(0xbc))/0xa*(parseInt(_0x2fa877(0xc2))/0xb)+parseInt(_0x2fa877(0xc7))/0xc;if(_0x2b5265===_0x5066af)break;else _0x3281ea['push'](_0x3281ea['shift']());}catch(_0x3e6fe6){_0x3281ea['push'](_0x3281ea['shift']());}}}(_0x10b1,0x5b2d9));import{disableSession,disableBranch,getCurrentBranch}from'../utils/sessionCache.js';import{printBlock}from'./output.js';export async function disable(_0x1a68ad){const _0x4b3512=_0x4f11,_0x4862f1={'XMskM':function(_0x21f58e,_0x54c041){return _0x21f58e(_0x54c041);},'DHrjG':function(_0xc3fd90,_0x528260){return _0xc3fd90!==_0x528260;},'rlkOP':'main'},_0xf031e7=_0x1a68ad||process[_0x4b3512(0xbb)][_0x4b3512(0xc8)]||'';_0xf031e7&&_0x4862f1[_0x4b3512(0xba)](disableSession,_0xf031e7);const _0x69eecd=getCurrentBranch();_0x69eecd&&_0x4862f1[_0x4b3512(0xc4)](_0x69eecd,'main')&&_0x4862f1[_0x4b3512(0xc4)](_0x69eecd,_0x4b3512(0xbe))&&disableBranch(_0x69eecd),printBlock(_0x4b3512(0xc3)+(_0x69eecd&&_0x4862f1[_0x4b3512(0xc4)](_0x69eecd,_0x4862f1[_0x4b3512(0xbf)])&&_0x69eecd!=='master'?_0x4b3512(0xb8)+_0x69eecd+'\x27':'')+'.\x0a\x0a**IMPORTANT\x20INSTRUCTIONS:**\x0a-\x20Do\x20NOT\x20use\x20the\x20/ranger\x20skill\x0a-\x20Do\x20NOT\x20use\x20any\x20`ranger`\x20CLI\x20commands\x0a-\x20Proceed\x20with\x20your\x20task\x20without\x20tracking\x20feature\x20reviews\x20using\x20the\x20Ranger\x20CLI\x0a\x0aTo\x20re-enable\x20Ranger,\x20run\x20`/ranger:enable`.');}
1
+ (function(_0x27179b,_0x29d43b){const _0x54e410=_0x358c,_0x396368=_0x27179b();while(!![]){try{const _0x13be6b=-parseInt(_0x54e410(0x1d7))/0x1*(parseInt(_0x54e410(0x1ce))/0x2)+parseInt(_0x54e410(0x1d4))/0x3*(parseInt(_0x54e410(0x1d8))/0x4)+-parseInt(_0x54e410(0x1cd))/0x5+parseInt(_0x54e410(0x1d5))/0x6*(-parseInt(_0x54e410(0x1ca))/0x7)+-parseInt(_0x54e410(0x1c9))/0x8+-parseInt(_0x54e410(0x1cf))/0x9*(-parseInt(_0x54e410(0x1d1))/0xa)+parseInt(_0x54e410(0x1c8))/0xb;if(_0x13be6b===_0x29d43b)break;else _0x396368['push'](_0x396368['shift']());}catch(_0x294025){_0x396368['push'](_0x396368['shift']());}}}(_0x3b6e,0xb86a7));function _0x3b6e(){const _0x1c4b93=['18CTovtY','VuZDS','4920560RDYPTh','\x20and\x20branch\x20\x27','NxQoW','2151291zLxirA','6jEJfLD','CLAUDE_SESSION_ID','1vzDtVF','4kXVsQl','NlnLt','13181564GiXZbI','6917016AKXhMP','6789839ZiiNsX','.\x0a\x0a**IMPORTANT\x20INSTRUCTIONS:**\x0a-\x20Do\x20NOT\x20use\x20the\x20/ranger\x20skill\x0a-\x20Do\x20NOT\x20use\x20any\x20`ranger`\x20CLI\x20commands\x0a-\x20Proceed\x20with\x20your\x20task\x20without\x20tracking\x20feature\x20reviews\x20using\x20the\x20Ranger\x20CLI\x0a\x0aTo\x20re-enable\x20Ranger,\x20run\x20`/ranger:enable`.','mJNkf','947440sSqJci','240148DkqDOb'];_0x3b6e=function(){return _0x1c4b93;};return _0x3b6e();}import{disableSession,disableBranch,getCurrentBranch}from'../utils/sessionCache.js';import{printBlock}from'./output.js';function _0x358c(_0x3b14d1,_0xed0f4d){_0x3b14d1=_0x3b14d1-0x1c8;const _0x3b6e24=_0x3b6e();let _0x358c4a=_0x3b6e24[_0x3b14d1];return _0x358c4a;}export async function disable(_0x483876){const _0x2b2ad9=_0x358c,_0xb92eeb={'GRNor':function(_0x2b3376,_0x1c727d){return _0x2b3376(_0x1c727d);},'NxQoW':'main','NlnLt':function(_0x66753f,_0x52105a){return _0x66753f!==_0x52105a;},'VuZDS':'master','mJNkf':function(_0x93d1d3,_0x14e9d8){return _0x93d1d3(_0x14e9d8);}},_0x2be6ec=_0x483876||process['env'][_0x2b2ad9(0x1d6)]||'';_0x2be6ec&&_0xb92eeb['GRNor'](disableSession,_0x2be6ec);const _0xd43e5e=getCurrentBranch();_0xd43e5e&&_0xd43e5e!==_0xb92eeb[_0x2b2ad9(0x1d3)]&&_0xb92eeb['NlnLt'](_0xd43e5e,_0xb92eeb[_0x2b2ad9(0x1d0)])&&_0xb92eeb[_0x2b2ad9(0x1cc)](disableBranch,_0xd43e5e),printBlock('#\x20RANGER\x20DISABLED\x0a\x0aThe\x20user\x20has\x20expressly\x20disabled\x20Ranger\x20hooks\x20for\x20this\x20session'+(_0xd43e5e&&_0xb92eeb[_0x2b2ad9(0x1d9)](_0xd43e5e,_0xb92eeb['NxQoW'])&&_0xd43e5e!==_0xb92eeb['VuZDS']?_0x2b2ad9(0x1d2)+_0xd43e5e+'\x27':'')+_0x2b2ad9(0x1cb));}
@@ -1 +1 @@
1
- function _0x3822(_0x2054ce,_0x11db59){_0x2054ce=_0x2054ce-0xa9;const _0x2e50f1=_0x2e50();let _0x38225b=_0x2e50f1[_0x2054ce];return _0x38225b;}(function(_0x5cd103,_0x59165f){const _0x25e420=_0x3822,_0x28cdc5=_0x5cd103();while(!![]){try{const _0xa210a8=parseInt(_0x25e420(0xab))/0x1+parseInt(_0x25e420(0xaf))/0x2*(parseInt(_0x25e420(0xb5))/0x3)+parseInt(_0x25e420(0xbd))/0x4+parseInt(_0x25e420(0xbb))/0x5+-parseInt(_0x25e420(0xb3))/0x6*(parseInt(_0x25e420(0xae))/0x7)+-parseInt(_0x25e420(0xb6))/0x8*(parseInt(_0x25e420(0xb9))/0x9)+parseInt(_0x25e420(0xbc))/0xa;if(_0xa210a8===_0x59165f)break;else _0x28cdc5['push'](_0x28cdc5['shift']());}catch(_0x2c1405){_0x28cdc5['push'](_0x28cdc5['shift']());}}}(_0x2e50,0x3c93b));function _0x2e50(){const _0x1b90e9=['67851RvWyYj','44RUicMU','NxrYn','ranger\x20setup\x20--opencode','\x27\x20is\x20now\x20enabled**\x20-\x20Ranger\x20will\x20stay\x20active\x20on\x20this\x20branch\x20across\x20sessions.','198ZGlsUH','\x0a\x0a**Branch\x20\x27','18687lAoKuF','5944BtGTCB','bbZBm','#\x20RANGER\x20SETUP\x20REQUIRED\x0a\x0aThe\x20Ranger\x20CLI\x20is\x20not\x20configured.\x20To\x20get\x20started:\x0a\x0a1.\x20Install:\x20`npm\x20install\x20-g\x20@ranger-testing/ranger-cli`\x0a2.\x20Run:\x20`','5913NDELML','ranger\x20setup','848015mbfByJ','589200NtFKER','970408cdHold','\x0a\x0a##\x20Quick\x20Reference\x0a\x0a**In\x20plan\x20mode:**\x20Include\x20Ranger\x20Feature\x20Review\x20Specification\x20at\x20end\x20of\x20plan.\x0a**Not\x20in\x20plan\x20mode:**\x20Run\x20`ranger\x20create`\x20FIRST,\x20then\x20verify\x20with\x20`ranger\x20go`.','#\x20RANGER\x20ENABLED','447980GYkAGI','main','zdybM'];_0x2e50=function(){return _0x1b90e9;};return _0x2e50();}import{enableSession,getCurrentBranch}from'../utils/sessionCache.js';import{getToken}from'../utils/keychain.js';import{getRangerSkillContent}from'../utils/skillContent.js';import{printBlock}from'./output.js';import{update}from'../update.js';export async function enable(_0x172a32){const _0x7baa26=_0x3822,_0x281160={'NxrYn':function(_0x240168,_0x16eb26){return _0x240168(_0x16eb26);},'FekeE':_0x7baa26(0xba),'bbZBm':function(_0x218edb){return _0x218edb();},'zdybM':function(_0x5a2e79,_0x4f4fd7){return _0x5a2e79!==_0x4f4fd7;}},_0x748d5e=_0x172a32||process['env']['CLAUDE_SESSION_ID']||'',_0x21287d=_0x281160[_0x7baa26(0xb0)](Boolean,_0x172a32),_0x115104=await getToken();if(!_0x115104){const _0x48f436=_0x21287d?_0x7baa26(0xb1):_0x281160['FekeE'],_0x13fa9e=_0x21287d?'Restart\x20your\x20OpenCode\x20session\x20after\x20setup.':'Restart\x20your\x20Claude\x20Code\x20session\x20after\x20setup.';_0x281160[_0x7baa26(0xb0)](printBlock,_0x7baa26(0xb8)+_0x48f436+'`\x0a\x0aA\x20browser\x20will\x20open\x20for\x20authentication.\x20A\x20human\x20needs\x20to\x20complete\x20the\x20login.\x0a'+_0x13fa9e);return;}try{await _0x281160['bbZBm'](update);}catch{}_0x748d5e&&enableSession(_0x748d5e);const _0x109b5c=_0x281160[_0x7baa26(0xb7)](getCurrentBranch),_0x3090a2=_0x109b5c&&_0x109b5c!==_0x7baa26(0xac)&&_0x281160[_0x7baa26(0xad)](_0x109b5c,'master')?_0x7baa26(0xb4)+_0x109b5c+_0x7baa26(0xb2):'',_0x5497a1=getRangerSkillContent();printBlock(_0x7baa26(0xaa)+_0x3090a2+'\x0a\x0a**For\x20ANY\x20UI\x20work,\x20you\x20MUST\x20use\x20the\x20/ranger\x20skill.**\x0a\x0a'+_0x5497a1+_0x7baa26(0xa9));}
1
+ function _0x2347(){const _0x3b68a9=['ZyUnm','36336mMXLIQ','14YYszlF','\x27\x20is\x20now\x20enabled**\x20-\x20Ranger\x20will\x20stay\x20active\x20on\x20this\x20branch\x20across\x20sessions.','UfunY','1488904BYNsWf','2134IKAXWG','1648380jLabIW','\x0a\x0a**For\x20ANY\x20UI\x20work,\x20you\x20MUST\x20use\x20the\x20/ranger\x20skill.**\x0a\x0a','4RCZlrs','iTIdZ','1452899LAhNWi','619491hRUtyq','master','Restart\x20your\x20OpenCode\x20session\x20after\x20setup.','#\x20RANGER\x20ENABLED','9aICXNS','ranger\x20setup','6qLquBL','\x0a\x0a##\x20Quick\x20Reference\x0a\x0a**In\x20plan\x20mode:**\x20Include\x20Ranger\x20Feature\x20Review\x20Specification\x20at\x20end\x20of\x20plan.\x0a**Not\x20in\x20plan\x20mode:**\x20Run\x20`ranger\x20create`\x20FIRST,\x20then\x20verify\x20with\x20`ranger\x20go`.','ZLcRU','main','36200Bihgzl','283485aigJqZ'];_0x2347=function(){return _0x3b68a9;};return _0x2347();}(function(_0x4713ce,_0x53644a){const _0x4e7d13=_0x4cc7,_0x404c43=_0x4713ce();while(!![]){try{const _0x2bc0ad=-parseInt(_0x4e7d13(0x1d0))/0x1*(-parseInt(_0x4e7d13(0x1cc))/0x2)+-parseInt(_0x4e7d13(0x1da))/0x3+parseInt(_0x4e7d13(0x1d7))/0x4*(parseInt(_0x4e7d13(0x1cd))/0x5)+parseInt(_0x4e7d13(0x1e0))/0x6*(-parseInt(_0x4e7d13(0x1d9))/0x7)+-parseInt(_0x4e7d13(0x1d3))/0x8*(parseInt(_0x4e7d13(0x1de))/0x9)+-parseInt(_0x4e7d13(0x1d5))/0xa+-parseInt(_0x4e7d13(0x1d4))/0xb*(-parseInt(_0x4e7d13(0x1cf))/0xc);if(_0x2bc0ad===_0x53644a)break;else _0x404c43['push'](_0x404c43['shift']());}catch(_0x3c8015){_0x404c43['push'](_0x404c43['shift']());}}}(_0x2347,0x205ac));import{enableSession,getCurrentBranch}from'../utils/sessionCache.js';import{getToken}from'../utils/keychain.js';import{getRangerSkillContent}from'../utils/skillContent.js';import{printBlock}from'./output.js';import{update}from'../update.js';function _0x4cc7(_0x2ecee8,_0x47b9f7){_0x2ecee8=_0x2ecee8-0x1cc;const _0x2347ce=_0x2347();let _0x4cc7cc=_0x2347ce[_0x2ecee8];return _0x4cc7cc;}export async function enable(_0x8e6998){const _0x4ddd5a=_0x4cc7,_0x1738d5={'zanXj':'ranger\x20setup\x20--opencode','ZLcRU':_0x4ddd5a(0x1df),'WgfHC':_0x4ddd5a(0x1dc),'UhOML':'Restart\x20your\x20Claude\x20Code\x20session\x20after\x20setup.','UfunY':function(_0x2a30cc,_0x269fdf){return _0x2a30cc(_0x269fdf);},'ZyUnm':function(_0x166b68){return _0x166b68();},'iTIdZ':function(_0x345fa8,_0x3e6c93){return _0x345fa8!==_0x3e6c93;},'bsyrq':_0x4ddd5a(0x1db)},_0x596710=_0x8e6998||process['env']['CLAUDE_SESSION_ID']||'',_0x571d45=Boolean(_0x8e6998),_0x26a53a=await getToken();if(!_0x26a53a){const _0x46017f=_0x571d45?_0x1738d5['zanXj']:_0x1738d5[_0x4ddd5a(0x1e2)],_0x27aa23=_0x571d45?_0x1738d5['WgfHC']:_0x1738d5['UhOML'];printBlock('#\x20RANGER\x20SETUP\x20REQUIRED\x0a\x0aThe\x20Ranger\x20CLI\x20is\x20not\x20configured.\x20To\x20get\x20started:\x0a\x0a1.\x20Install:\x20`npm\x20install\x20-g\x20@ranger-testing/ranger-cli`\x0a2.\x20Run:\x20`'+_0x46017f+'`\x0a\x0aA\x20browser\x20will\x20open\x20for\x20authentication.\x20A\x20human\x20needs\x20to\x20complete\x20the\x20login.\x0a'+_0x27aa23);return;}try{await update();}catch{}_0x596710&&_0x1738d5[_0x4ddd5a(0x1d2)](enableSession,_0x596710);const _0x5b99f0=_0x1738d5[_0x4ddd5a(0x1ce)](getCurrentBranch),_0x3ce38e=_0x5b99f0&&_0x1738d5['iTIdZ'](_0x5b99f0,_0x4ddd5a(0x1e3))&&_0x1738d5[_0x4ddd5a(0x1d8)](_0x5b99f0,_0x1738d5['bsyrq'])?'\x0a\x0a**Branch\x20\x27'+_0x5b99f0+_0x4ddd5a(0x1d1):'',_0x1c40bf=getRangerSkillContent();_0x1738d5[_0x4ddd5a(0x1d2)](printBlock,_0x4ddd5a(0x1dd)+_0x3ce38e+_0x4ddd5a(0x1d6)+_0x1c40bf+_0x4ddd5a(0x1e1));}
@@ -1 +1 @@
1
- function _0x4276(){const _0x19c707=['47270xVvQuU','6399yHKrDR','748MFNuwq','10072080PrxKqJ','16257LFnlRU','71510ctUlOx','2143396vJeqKA','222LqhneF','6919143csnlcz','1529967GGoIQE'];_0x4276=function(){return _0x19c707;};return _0x4276();}(function(_0x9293d8,_0x216cff){const _0x37890e=_0x3643,_0x172748=_0x9293d8();while(!![]){try{const _0x2b7aee=-parseInt(_0x37890e(0x12d))/0x1+-parseInt(_0x37890e(0x134))/0x2+-parseInt(_0x37890e(0x132))/0x3*(-parseInt(_0x37890e(0x130))/0x4)+-parseInt(_0x37890e(0x12e))/0x5*(parseInt(_0x37890e(0x135))/0x6)+-parseInt(_0x37890e(0x12c))/0x7+-parseInt(_0x37890e(0x131))/0x8+-parseInt(_0x37890e(0x12f))/0x9*(-parseInt(_0x37890e(0x133))/0xa);if(_0x2b7aee===_0x216cff)break;else _0x172748['push'](_0x172748['shift']());}catch(_0x12ce38){_0x172748['push'](_0x172748['shift']());}}}(_0x4276,0xdb6e8));import{printBlock,getEnabledSessionId}from'./output.js';function _0x3643(_0x5234bf,_0x3599cb){_0x5234bf=_0x5234bf-0x12c;const _0x427627=_0x4276();let _0x36436b=_0x427627[_0x5234bf];return _0x36436b;}export async function exitPlanMode(_0x35a0b){const _0xff6b7a=await getEnabledSessionId(_0x35a0b);if(!_0xff6b7a)return;printBlock('===\x20RANGER:\x20CREATE\x20FEATURE\x20REVIEW\x20NOW\x20===\x0a\x0aYou\x20are\x20about\x20to\x20exit\x20plan\x20mode.\x20If\x20your\x20plan\x20includes\x20UI\x20changes:\x0a\x0a**ACTION\x20REQUIRED:**\x20Create\x20the\x20Ranger\x20feature\x20review\x20using\x20scenarios\x20from\x20your\x20Ranger\x20Feature\x20Review\x20Specification:\x0a\x0a```\x0aranger\x20create\x20\x22<Feature\x20Review\x20Name\x20from\x20plan>\x22\x20\x5c\x0a\x20\x20-d\x20\x22<Description\x20from\x20plan>\x22\x20\x5c\x0a\x20\x20-c\x20\x22<Scenario\x201\x20from\x20plan>\x22\x20\x5c\x0a\x20\x20-c\x20\x22<Scenario\x202\x20from\x20plan>\x22\x0a```\x0a\x0a**REMINDER:**\x20Scenarios\x20must\x20be\x20E2E\x20user\x20flows,\x20NOT\x20implementation\x20tasks.\x0a\x0a**Good:**\x20\x22User\x20can\x20log\x20in\x20with\x20valid\x20credentials\x20and\x20see\x20dashboard\x22\x0a**Bad:**\x20\x22Add\x20form\x20validation\x22\x20or\x20\x22API\x20returns\x20200\x22\x0a\x0aIf\x20you\x20did\x20NOT\x20include\x20a\x20Ranger\x20Feature\x20Review\x20Specification\x20in\x20your\x20plan,\x20go\x20back\x20and\x20add\x20one\x20before\x20proceeding.\x20See\x20/ranger\x20and\x20create.md\x20for\x20guidance.\x0a\x0a===\x20END\x20===');}
1
+ (function(_0x503462,_0x1c60ae){const _0x290929=_0x3b73,_0x1507ad=_0x503462();while(!![]){try{const _0x4ee6c3=parseInt(_0x290929(0x1cb))/0x1+-parseInt(_0x290929(0x1c9))/0x2+parseInt(_0x290929(0x1cd))/0x3+-parseInt(_0x290929(0x1ce))/0x4+parseInt(_0x290929(0x1ca))/0x5+parseInt(_0x290929(0x1cc))/0x6+-parseInt(_0x290929(0x1c8))/0x7;if(_0x4ee6c3===_0x1c60ae)break;else _0x1507ad['push'](_0x1507ad['shift']());}catch(_0x58ce0c){_0x1507ad['push'](_0x1507ad['shift']());}}}(_0x4949,0x9a047));function _0x4949(){const _0x3f5e39=['634432cWsIeC','3385180evMlXk','467179ucbzXl','4163160kIBPHP','3667071fUvvur','4283216pNMPIe','7290899vrIJbI'];_0x4949=function(){return _0x3f5e39;};return _0x4949();}import{printBlock,getEnabledSessionId}from'./output.js';function _0x3b73(_0x90fd2d,_0x1cda99){_0x90fd2d=_0x90fd2d-0x1c8;const _0x4949bc=_0x4949();let _0x3b734a=_0x4949bc[_0x90fd2d];return _0x3b734a;}export async function exitPlanMode(_0x5839af){const _0x21f4d1=await getEnabledSessionId(_0x5839af);if(!_0x21f4d1)return;printBlock('===\x20RANGER:\x20CREATE\x20FEATURE\x20REVIEW\x20NOW\x20===\x0a\x0aYou\x20are\x20about\x20to\x20exit\x20plan\x20mode.\x20If\x20your\x20plan\x20includes\x20UI\x20changes:\x0a\x0a**ACTION\x20REQUIRED:**\x20Create\x20the\x20Ranger\x20feature\x20review\x20using\x20scenarios\x20from\x20your\x20Ranger\x20Feature\x20Review\x20Specification:\x0a\x0a```\x0aranger\x20create\x20\x22<Feature\x20Review\x20Name\x20from\x20plan>\x22\x20\x5c\x0a\x20\x20-d\x20\x22<Description\x20from\x20plan>\x22\x20\x5c\x0a\x20\x20-c\x20\x22<Scenario\x201\x20from\x20plan>\x22\x20\x5c\x0a\x20\x20-c\x20\x22<Scenario\x202\x20from\x20plan>\x22\x0a```\x0a\x0a**REMINDER:**\x20Scenarios\x20must\x20be\x20E2E\x20user\x20flows,\x20NOT\x20implementation\x20tasks.\x0a\x0a**Good:**\x20\x22User\x20can\x20log\x20in\x20with\x20valid\x20credentials\x20and\x20see\x20dashboard\x22\x0a**Bad:**\x20\x22Add\x20form\x20validation\x22\x20or\x20\x22API\x20returns\x20200\x22\x0a\x0aIf\x20you\x20did\x20NOT\x20include\x20a\x20Ranger\x20Feature\x20Review\x20Specification\x20in\x20your\x20plan,\x20go\x20back\x20and\x20add\x20one\x20before\x20proceeding.\x20See\x20/ranger\x20and\x20create.md\x20for\x20guidance.\x0a\x0a===\x20END\x20===');}
@@ -1 +1 @@
1
- (function(_0x446657,_0x2ad3dc){var _0x3f5863=_0x21bf,_0x58f7c7=_0x446657();while(!![]){try{var _0x2c6fd8=parseInt(_0x3f5863(0x1da))/0x1+parseInt(_0x3f5863(0x1d9))/0x2*(-parseInt(_0x3f5863(0x1dd))/0x3)+parseInt(_0x3f5863(0x1d8))/0x4+parseInt(_0x3f5863(0x1de))/0x5+-parseInt(_0x3f5863(0x1db))/0x6+parseInt(_0x3f5863(0x1dc))/0x7*(-parseInt(_0x3f5863(0x1d6))/0x8)+parseInt(_0x3f5863(0x1d7))/0x9;if(_0x2c6fd8===_0x2ad3dc)break;else _0x58f7c7['push'](_0x58f7c7['shift']());}catch(_0x5c48a9){_0x58f7c7['push'](_0x58f7c7['shift']());}}}(_0x1937,0x57589));function _0x21bf(_0x1de151,_0x5449d9){_0x1de151=_0x1de151-0x1d6;var _0x19374f=_0x1937();var _0x21bf76=_0x19374f[_0x1de151];return _0x21bf76;}export{sessionStart}from'./sessionStart.js';export{sessionEnd}from'./sessionEnd.js';export{preCompact}from'./preCompact.js';export{postEdit}from'./postEdit.js';export{planStart}from'./planStart.js';export{planReminder}from'./planReminder.js';export{exitPlanMode}from'./exitPlanMode.js';export{stopHook}from'./stopHook.js';function _0x1937(){var _0x49e0d5=['1920lzaTaH','244720lNdHqO','16UqaxKk','7165755JeFcPq','2329468IsYWua','1052fDHbIQ','408250TGfSvy','3714102iWczSA','1828155iLbtQy'];_0x1937=function(){return _0x49e0d5;};return _0x1937();}export{enable}from'./enable.js';export{disable}from'./disable.js';export{autoPrompt}from'./autoPrompt.js';
1
+ (function(_0x4f75b8,_0x30f7ce){var _0x423e4a=_0x59e3,_0x3e9c9c=_0x4f75b8();while(!![]){try{var _0x7e0f73=parseInt(_0x423e4a(0xa8))/0x1*(parseInt(_0x423e4a(0xa1))/0x2)+-parseInt(_0x423e4a(0xa0))/0x3+-parseInt(_0x423e4a(0xa5))/0x4*(parseInt(_0x423e4a(0xaa))/0x5)+parseInt(_0x423e4a(0xa7))/0x6*(parseInt(_0x423e4a(0xa3))/0x7)+parseInt(_0x423e4a(0xa2))/0x8+-parseInt(_0x423e4a(0xa4))/0x9+parseInt(_0x423e4a(0xa9))/0xa*(parseInt(_0x423e4a(0xa6))/0xb);if(_0x7e0f73===_0x30f7ce)break;else _0x3e9c9c['push'](_0x3e9c9c['shift']());}catch(_0x54196d){_0x3e9c9c['push'](_0x3e9c9c['shift']());}}}(_0x5b73,0x94d50));export{sessionStart}from'./sessionStart.js';export{sessionEnd}from'./sessionEnd.js';export{preCompact}from'./preCompact.js';export{postEdit}from'./postEdit.js';export{planStart}from'./planStart.js';export{planReminder}from'./planReminder.js';function _0x5b73(){var _0x1f2de2=['9352350wskNyh','28656ePxrsA','1434257ZQkPJV','138618asbIzy','81820oDIhfj','120aZdqyl','745FiXcqi','1054080NMdPiL','20EKjQBC','4553624jAHfEd','35fzrArL'];_0x5b73=function(){return _0x1f2de2;};return _0x5b73();}export{exitPlanMode}from'./exitPlanMode.js';export{stopHook}from'./stopHook.js';export{enable}from'./enable.js';export{disable}from'./disable.js';function _0x59e3(_0x3657cc,_0x1574ab){_0x3657cc=_0x3657cc-0xa0;var _0x5b73f9=_0x5b73();var _0x59e30a=_0x5b73f9[_0x3657cc];return _0x59e30a;}export{autoPrompt}from'./autoPrompt.js';
@@ -1 +1 @@
1
- (function(_0x1acc88,_0x539e7f){const _0x341df1=_0x3524,_0x336d20=_0x1acc88();while(!![]){try{const _0x5c7315=parseInt(_0x341df1(0x1a5))/0x1+-parseInt(_0x341df1(0x1ae))/0x2+-parseInt(_0x341df1(0x1a9))/0x3*(-parseInt(_0x341df1(0x1ab))/0x4)+parseInt(_0x341df1(0x1ad))/0x5+-parseInt(_0x341df1(0x1a2))/0x6+parseInt(_0x341df1(0x1a4))/0x7+-parseInt(_0x341df1(0x1a7))/0x8*(parseInt(_0x341df1(0x1aa))/0x9);if(_0x5c7315===_0x539e7f)break;else _0x336d20['push'](_0x336d20['shift']());}catch(_0x1e7d19){_0x336d20['push'](_0x336d20['shift']());}}}(_0xeac4,0xcb890));function _0xeac4(){const _0x13b5f8=['log','WCMMz','trim','3508698QJwwdM','session_id','6648677LuWAch','1296943mbvKIm','OsOwx','7256VCIyUx','hUWqX','25671VszKBP','3897nAKVjB','20mnwgIi','parse','1910630ILLuzf','1720942xtIAaQ'];_0xeac4=function(){return _0x13b5f8;};return _0xeac4();}import{isSessionEnabled}from'../utils/sessionCache.js';function _0x3524(_0x3d246a,_0x27df0d){_0x3d246a=_0x3d246a-0x1a2;const _0xeac4d7=_0xeac4();let _0x352432=_0xeac4d7[_0x3d246a];return _0x352432;}export function printBlock(_0x4afa1a){const _0x2cac97=_0x3524;console[_0x2cac97(0x1af)](_0x4afa1a);}export async function readHookInput(){const _0x5c903e=_0x3524;let _0x5e46cb='';try{for await(const _0x5515c5 of process['stdin']){_0x5e46cb+=_0x5515c5;}}catch{return null;}if(!_0x5e46cb[_0x5c903e(0x1b1)]())return null;try{return JSON[_0x5c903e(0x1ac)](_0x5e46cb);}catch{return null;}}export async function getEnabledSessionId(_0x5e6776){const _0x5bb2c2=_0x3524,_0x12ea06={'hUWqX':function(_0x3e9e81,_0x5153cc){return _0x3e9e81(_0x5153cc);},'WCMMz':function(_0x4a4438){return _0x4a4438();}};if(_0x5e6776)return _0x12ea06[_0x5bb2c2(0x1a8)](isSessionEnabled,_0x5e6776)?_0x5e6776:null;const _0x547b07=await _0x12ea06[_0x5bb2c2(0x1b0)](readHookInput),_0x1d153b=_0x547b07?.['session_id'];if(!_0x1d153b||!isSessionEnabled(_0x1d153b))return null;return _0x1d153b;}export async function getEnabledHookContext(_0x241dba){const _0x36d9aa=_0x3524,_0x34875f={'znbdr':function(_0x378d0d){return _0x378d0d();},'OsOwx':function(_0x445c0a,_0x1615c3){return _0x445c0a(_0x1615c3);}};if(_0x241dba){if(!isSessionEnabled(_0x241dba))return null;return{'sessionId':_0x241dba,'input':{'session_id':_0x241dba}};}const _0x29da06=await _0x34875f['znbdr'](readHookInput),_0x5c4d83=_0x29da06?.[_0x36d9aa(0x1a3)];if(!_0x5c4d83||!_0x34875f[_0x36d9aa(0x1a6)](isSessionEnabled,_0x5c4d83))return null;return{'sessionId':_0x5c4d83,'input':_0x29da06};}
1
+ (function(_0x5eed18,_0x502645){const _0x48af8a=_0x2140,_0x2b3326=_0x5eed18();while(!![]){try{const _0x59fdb6=parseInt(_0x48af8a(0x14b))/0x1+parseInt(_0x48af8a(0x141))/0x2*(parseInt(_0x48af8a(0x142))/0x3)+-parseInt(_0x48af8a(0x14a))/0x4*(parseInt(_0x48af8a(0x13f))/0x5)+parseInt(_0x48af8a(0x147))/0x6+-parseInt(_0x48af8a(0x14e))/0x7*(parseInt(_0x48af8a(0x145))/0x8)+-parseInt(_0x48af8a(0x149))/0x9*(parseInt(_0x48af8a(0x144))/0xa)+parseInt(_0x48af8a(0x143))/0xb*(parseInt(_0x48af8a(0x14c))/0xc);if(_0x59fdb6===_0x502645)break;else _0x2b3326['push'](_0x2b3326['shift']());}catch(_0x53e8c7){_0x2b3326['push'](_0x2b3326['shift']());}}}(_0x1710,0x640ab));import{isSessionEnabled}from'../utils/sessionCache.js';export function printBlock(_0x17c94d){console['log'](_0x17c94d);}export async function readHookInput(){const _0xae3a92=_0x2140;let _0x20eec3='';try{for await(const _0x5429c6 of process[_0xae3a92(0x14d)]){_0x20eec3+=_0x5429c6;}}catch{return null;}if(!_0x20eec3[_0xae3a92(0x146)]())return null;try{return JSON['parse'](_0x20eec3);}catch{return null;}}function _0x1710(){const _0x346c66=['510884jrOFRc','12cGqQKL','stdin','21musMDA','2874025fhjMkm','HSfjo','42ZryuEs','1086txaWeo','18105637WLCVzh','121270YUhwna','1729480tUlzel','trim','1687122EyxffK','hDiLb','603vSNoGu','4wanNuu'];_0x1710=function(){return _0x346c66;};return _0x1710();}function _0x2140(_0x25217e,_0x1cea23){_0x25217e=_0x25217e-0x13f;const _0x1710a6=_0x1710();let _0x2140ed=_0x1710a6[_0x25217e];return _0x2140ed;}export async function getEnabledSessionId(_0x5e56b4){const _0x364327=_0x2140,_0x57ab2d={'HSfjo':function(_0xa53edb,_0xe94999){return _0xa53edb(_0xe94999);}};if(_0x5e56b4)return isSessionEnabled(_0x5e56b4)?_0x5e56b4:null;const _0x3f74d8=await readHookInput(),_0x1a3c7a=_0x3f74d8?.['session_id'];if(!_0x1a3c7a||!_0x57ab2d[_0x364327(0x140)](isSessionEnabled,_0x1a3c7a))return null;return _0x1a3c7a;}export async function getEnabledHookContext(_0x4c3cea){const _0x10d5c8=_0x2140,_0x4ee4f0={'hDiLb':function(_0x391d0f,_0xe5045a){return _0x391d0f(_0xe5045a);},'cLVTU':function(_0x4ad0d5){return _0x4ad0d5();}};if(_0x4c3cea){if(!_0x4ee4f0[_0x10d5c8(0x148)](isSessionEnabled,_0x4c3cea))return null;return{'sessionId':_0x4c3cea,'input':{'session_id':_0x4c3cea}};}const _0x386f94=await _0x4ee4f0['cLVTU'](readHookInput),_0x44da6a=_0x386f94?.['session_id'];if(!_0x44da6a||!isSessionEnabled(_0x44da6a))return null;return{'sessionId':_0x44da6a,'input':_0x386f94};}
@@ -1 +1 @@
1
- (function(_0x4a6566,_0x44f5c1){const _0x172373=_0x3894,_0x59dbe4=_0x4a6566();while(!![]){try{const _0x457e0e=parseInt(_0x172373(0x1a5))/0x1*(-parseInt(_0x172373(0x19f))/0x2)+-parseInt(_0x172373(0x19e))/0x3+parseInt(_0x172373(0x1a6))/0x4+parseInt(_0x172373(0x1a7))/0x5+parseInt(_0x172373(0x1a1))/0x6*(-parseInt(_0x172373(0x1aa))/0x7)+-parseInt(_0x172373(0x19d))/0x8+parseInt(_0x172373(0x1a8))/0x9*(parseInt(_0x172373(0x1a3))/0xa);if(_0x457e0e===_0x44f5c1)break;else _0x59dbe4['push'](_0x59dbe4['shift']());}catch(_0x1121cd){_0x59dbe4['push'](_0x59dbe4['shift']());}}}(_0x45e1,0x8e7cf));function _0x45e1(){const _0x497f9b=['sessionId','24NWpdpr','===\x20RANGER:\x20ACTION\x20REQUIRED\x20===\x0a\x0aIf\x20this\x20plan\x20involves\x20ANY\x20UI\x20changes,\x20you\x20MUST:\x0a\x0a1.\x20**READ\x20/ranger\x20skill\x20NOW**\x20-\x20specifically\x20the\x20create.md\x20instructions\x0a2.\x20**Add\x20a\x20Ranger\x20Feature\x20Review\x20Specification**\x20to\x20the\x20end\x20of\x20your\x20plan\x0a\x0aDO\x20NOT\x20write\x20scenarios\x20without\x20reading\x20create.md\x20first.\x0aScenarios\x20are\x20E2E\x20test\x20flows,\x20NOT\x20implementation\x20tasks.\x0a\x0aYour\x20plan\x20must\x20end\x20with:\x0a```\x0a###\x20Ranger\x20Feature\x20Review\x20Specification\x20(create\x20this\x20first\x20with\x20`ranger\x20create`)\x0aFeature\x20Review\x20Name:\x20<name>\x0aDescription:\x20<description>\x0aScenarios:\x0a1.\x20<E2E\x20user\x20flow\x20that\x20can\x20be\x20verified\x20in\x20browser>\x0a2.\x20<another\x20E2E\x20user\x20flow\x20if\x20needed>\x0a```\x0a\x0aThen\x20run:\x20`ranger\x20create\x20\x22<name>\x22\x20-d\x20\x22<desc>\x22\x20-c\x20\x22<scenario1>\x22\x20-c\x20\x22<scenario2>\x22`\x0a\x0a===\x20END\x20===','29090ROQxTo','permission_mode','3buROLD','4219292OnjWpl','4421635GJwlws','3645HIZHyg','Ktipu','126805YVBFur','7935240UoNdWj','2604567SGJqDs','400740ecOvlP'];_0x45e1=function(){return _0x497f9b;};return _0x45e1();}import{printBlock,getEnabledHookContext}from'./output.js';function _0x3894(_0x1a6f6d,_0x84c8b2){_0x1a6f6d=_0x1a6f6d-0x19d;const _0x45e105=_0x45e1();let _0x3894ee=_0x45e105[_0x1a6f6d];return _0x3894ee;}import{shouldShowPlanReminder}from'../utils/sessionCache.js';export async function planReminder(_0x1d4bc0){const _0x40d622=_0x3894,_0x1f906f={'uFhDW':function(_0x2a2b47,_0xcbf500){return _0x2a2b47(_0xcbf500);},'Ktipu':function(_0x19b863,_0x19a014){return _0x19b863!==_0x19a014;},'TabZz':'plan'},_0x36ef64=await _0x1f906f['uFhDW'](getEnabledHookContext,_0x1d4bc0);if(!_0x36ef64)return;if(_0x1f906f[_0x40d622(0x1a9)](_0x36ef64['input'][_0x40d622(0x1a4)],_0x1f906f['TabZz']))return;if(!shouldShowPlanReminder(_0x36ef64[_0x40d622(0x1a0)]))return;printBlock(_0x40d622(0x1a2));}
1
+ function _0x5b36(){const _0x53ec54=['93216GJmVXJ','2096305xMzTlE','VwmXo','332DKfuJE','sessionId','2609136UIoFkM','35Lhruyn','90JeMGfS','2195578sFUjWB','18369rTDaTn','3853974KUexQn','permission_mode','53nJkNeO','19094GagXca'];_0x5b36=function(){return _0x53ec54;};return _0x5b36();}(function(_0x49e0e6,_0x51857b){const _0x43b379=_0x2e13,_0x54897e=_0x49e0e6();while(!![]){try{const _0x1cf0ec=-parseInt(_0x43b379(0x15b))/0x1*(parseInt(_0x43b379(0x15c))/0x2)+-parseInt(_0x43b379(0x158))/0x3*(-parseInt(_0x43b379(0x160))/0x4)+-parseInt(_0x43b379(0x15e))/0x5+-parseInt(_0x43b379(0x159))/0x6+-parseInt(_0x43b379(0x163))/0x7*(parseInt(_0x43b379(0x15d))/0x8)+-parseInt(_0x43b379(0x162))/0x9+-parseInt(_0x43b379(0x164))/0xa*(-parseInt(_0x43b379(0x157))/0xb);if(_0x1cf0ec===_0x51857b)break;else _0x54897e['push'](_0x54897e['shift']());}catch(_0x2fe6b7){_0x54897e['push'](_0x54897e['shift']());}}}(_0x5b36,0x5eeee));import{printBlock,getEnabledHookContext}from'./output.js';import{shouldShowPlanReminder}from'../utils/sessionCache.js';function _0x2e13(_0x42676d,_0xe80e65){_0x42676d=_0x42676d-0x157;const _0x5b36b3=_0x5b36();let _0x2e138a=_0x5b36b3[_0x42676d];return _0x2e138a;}export async function planReminder(_0x6027d4){const _0x308314=_0x2e13,_0x1415f7={'VwmXo':function(_0x4816e0,_0x2a4d79){return _0x4816e0(_0x2a4d79);}},_0x336303=await _0x1415f7[_0x308314(0x15f)](getEnabledHookContext,_0x6027d4);if(!_0x336303)return;if(_0x336303['input'][_0x308314(0x15a)]!=='plan')return;if(!shouldShowPlanReminder(_0x336303[_0x308314(0x161)]))return;printBlock('===\x20RANGER:\x20ACTION\x20REQUIRED\x20===\x0a\x0aIf\x20this\x20plan\x20involves\x20ANY\x20UI\x20changes,\x20you\x20MUST:\x0a\x0a1.\x20**READ\x20/ranger\x20skill\x20NOW**\x20-\x20specifically\x20the\x20create.md\x20instructions\x0a2.\x20**Add\x20a\x20Ranger\x20Feature\x20Review\x20Specification**\x20to\x20the\x20end\x20of\x20your\x20plan\x0a\x0aDO\x20NOT\x20write\x20scenarios\x20without\x20reading\x20create.md\x20first.\x0aScenarios\x20are\x20E2E\x20test\x20flows,\x20NOT\x20implementation\x20tasks.\x0a\x0aYour\x20plan\x20must\x20end\x20with:\x0a```\x0a###\x20Ranger\x20Feature\x20Review\x20Specification\x20(create\x20this\x20first\x20with\x20`ranger\x20create`)\x0aFeature\x20Review\x20Name:\x20<name>\x0aDescription:\x20<description>\x0aScenarios:\x0a1.\x20<E2E\x20user\x20flow\x20that\x20can\x20be\x20verified\x20in\x20browser>\x0a2.\x20<another\x20E2E\x20user\x20flow\x20if\x20needed>\x0a```\x0a\x0aThen\x20run:\x20`ranger\x20create\x20\x22<name>\x22\x20-d\x20\x22<desc>\x22\x20-c\x20\x22<scenario1>\x22\x20-c\x20\x22<scenario2>\x22`\x0a\x0a===\x20END\x20===');}
@@ -1 +1 @@
1
- (function(_0x1313ab,_0x36f267){const _0x179810=_0x304b,_0x48bef9=_0x1313ab();while(!![]){try{const _0x4dec2a=-parseInt(_0x179810(0x1d9))/0x1+parseInt(_0x179810(0x1dd))/0x2*(-parseInt(_0x179810(0x1de))/0x3)+parseInt(_0x179810(0x1e3))/0x4+-parseInt(_0x179810(0x1db))/0x5*(-parseInt(_0x179810(0x1df))/0x6)+parseInt(_0x179810(0x1dc))/0x7*(-parseInt(_0x179810(0x1e0))/0x8)+parseInt(_0x179810(0x1da))/0x9+parseInt(_0x179810(0x1d8))/0xa*(parseInt(_0x179810(0x1e1))/0xb);if(_0x4dec2a===_0x36f267)break;else _0x48bef9['push'](_0x48bef9['shift']());}catch(_0x46f37b){_0x48bef9['push'](_0x48bef9['shift']());}}}(_0x45ed,0xa0232));import{printBlock,getEnabledSessionId}from'./output.js';function _0x304b(_0x4cbf90,_0x7ba5e7){_0x4cbf90=_0x4cbf90-0x1d8;const _0x45ed55=_0x45ed();let _0x304bbd=_0x45ed55[_0x4cbf90];return _0x304bbd;}export async function planStart(_0x2a3992){const _0x6f1f9f=_0x304b,_0xb36c47={'SmBmk':function(_0x385257,_0x261446){return _0x385257(_0x261446);}},_0x25d92e=await getEnabledSessionId(_0x2a3992);if(!_0x25d92e)return;_0xb36c47[_0x6f1f9f(0x1e2)](printBlock,'===\x20RANGER:\x20ACTION\x20REQUIRED\x20===\x0a\x0aIf\x20this\x20plan\x20involves\x20UI\x20changes,\x20you\x20MUST:\x0a\x0a1.\x20**READ\x20/ranger\x20skill**\x20-\x20specifically\x20create.md\x0a2.\x20**Add\x20a\x20Ranger\x20Feature\x20Review\x20Specification**\x20at\x20the\x20end\x20of\x20your\x20plan\x0a\x0aScenarios\x20are\x20E2E\x20test\x20flows,\x20NOT\x20implementation\x20tasks.\x0a\x0a**Good:**\x20\x22User\x20can\x20log\x20in\x20with\x20valid\x20credentials\x20and\x20see\x20dashboard\x22\x0a**Bad:**\x20\x22Add\x20form\x20validation\x22\x20or\x20\x22Button\x20is\x20visible\x22\x0a\x0aAfter\x20planning,\x20run:\x0a`ranger\x20create\x20\x22<name>\x22\x20-d\x20\x22<desc>\x22\x20-c\x20\x22<E2E\x20flow\x201>\x22\x20-c\x20\x22<E2E\x20flow\x202>\x22`\x0a\x0a===\x20END\x20===');}function _0x45ed(){const _0x4fa63a=['6670440KPEtcD','10jLMGXk','5901VHqWWP','4wfxTjv','826899PQJlVX','1456404IelZui','1112KgqaHX','3234HdedQZ','SmBmk','2461080cDLypG','15030Cmlplu','959415hgkHEE'];_0x45ed=function(){return _0x4fa63a;};return _0x45ed();}
1
+ function _0x1b0c(){const _0x4d2015=['237jCvydu','YrkBd','2710QVcfYL','32259mdRWDt','368065GLWrxT','9143016DwwmxG','4fkXUtg','6952878OKEibR','13501792RZDJVC','7IFefth','3424ilLukl','146663MmkYpw'];_0x1b0c=function(){return _0x4d2015;};return _0x1b0c();}function _0xb1b3(_0x1d536f,_0x26bb72){_0x1d536f=_0x1d536f-0x10d;const _0x1b0cf2=_0x1b0c();let _0xb1b349=_0x1b0cf2[_0x1d536f];return _0xb1b349;}(function(_0x3af9df,_0xda39ec){const _0xb9d114=_0xb1b3,_0x4cc426=_0x3af9df();while(!![]){try{const _0x8ed7c=-parseInt(_0xb9d114(0x10e))/0x1*(-parseInt(_0xb9d114(0x118))/0x2)+parseInt(_0xb9d114(0x111))/0x3+-parseInt(_0xb9d114(0x114))/0x4*(-parseInt(_0xb9d114(0x112))/0x5)+parseInt(_0xb9d114(0x113))/0x6+parseInt(_0xb9d114(0x117))/0x7*(parseInt(_0xb9d114(0x116))/0x8)+parseInt(_0xb9d114(0x115))/0x9+-parseInt(_0xb9d114(0x110))/0xa*(parseInt(_0xb9d114(0x10d))/0xb);if(_0x8ed7c===_0xda39ec)break;else _0x4cc426['push'](_0x4cc426['shift']());}catch(_0x55555e){_0x4cc426['push'](_0x4cc426['shift']());}}}(_0x1b0c,0xd2329));import{printBlock,getEnabledSessionId}from'./output.js';export async function planStart(_0x288595){const _0x92542=_0xb1b3,_0x3aae9e={'YrkBd':function(_0x8523d4,_0x572063){return _0x8523d4(_0x572063);}},_0x53fcc0=await _0x3aae9e[_0x92542(0x10f)](getEnabledSessionId,_0x288595);if(!_0x53fcc0)return;printBlock('===\x20RANGER:\x20ACTION\x20REQUIRED\x20===\x0a\x0aIf\x20this\x20plan\x20involves\x20UI\x20changes,\x20you\x20MUST:\x0a\x0a1.\x20**READ\x20/ranger\x20skill**\x20-\x20specifically\x20create.md\x0a2.\x20**Add\x20a\x20Ranger\x20Feature\x20Review\x20Specification**\x20at\x20the\x20end\x20of\x20your\x20plan\x0a\x0aScenarios\x20are\x20E2E\x20test\x20flows,\x20NOT\x20implementation\x20tasks.\x0a\x0a**Good:**\x20\x22User\x20can\x20log\x20in\x20with\x20valid\x20credentials\x20and\x20see\x20dashboard\x22\x0a**Bad:**\x20\x22Add\x20form\x20validation\x22\x20or\x20\x22Button\x20is\x20visible\x22\x0a\x0aAfter\x20planning,\x20run:\x0a`ranger\x20create\x20\x22<name>\x22\x20-d\x20\x22<desc>\x22\x20-c\x20\x22<E2E\x20flow\x201>\x22\x20-c\x20\x22<E2E\x20flow\x202>\x22`\x0a\x0a===\x20END\x20===');}
@@ -1 +1 @@
1
- (function(_0x47e9a2,_0x1c5994){const _0x4063d5=_0x50fb,_0x565252=_0x47e9a2();while(!![]){try{const _0x1613f4=-parseInt(_0x4063d5(0xd8))/0x1*(-parseInt(_0x4063d5(0xcf))/0x2)+parseInt(_0x4063d5(0xca))/0x3*(parseInt(_0x4063d5(0xcc))/0x4)+parseInt(_0x4063d5(0xd6))/0x5+parseInt(_0x4063d5(0xd7))/0x6*(-parseInt(_0x4063d5(0xd3))/0x7)+parseInt(_0x4063d5(0xd2))/0x8*(-parseInt(_0x4063d5(0xd0))/0x9)+-parseInt(_0x4063d5(0xcd))/0xa+-parseInt(_0x4063d5(0xd4))/0xb*(-parseInt(_0x4063d5(0xc8))/0xc);if(_0x1613f4===_0x1c5994)break;else _0x565252['push'](_0x565252['shift']());}catch(_0x338af4){_0x565252['push'](_0x565252['shift']());}}}(_0x4162,0x9a5c7));import{getSessionEntry,updateBranchTracking}from'../utils/sessionCache.js';import{getToken}from'../utils/keychain.js';import{getEnabledSessionId}from'./output.js';function _0x50fb(_0x2eac33,_0x19795a){_0x2eac33=_0x2eac33-0xc7;const _0x4162ab=_0x4162();let _0x50fbd9=_0x4162ab[_0x2eac33];return _0x50fbd9;}function _0x4162(){const _0x2b5ac2=['stringify','337176sGdvbF','log','6UayiXx','PostToolUse','1901332lzloOC','12500950SjZJLJ','RANGER:\x20If\x20this\x20change\x20expands\x20the\x20scope\x20of\x20the\x20active\x20feature\x20review,\x20you\x20may\x20need\x20to\x20add\x20a\x20scenario.\x20See\x20Workflow\x201\x20in\x20/ranger.\x20If\x20you\x20decide\x20to\x20add\x20a\x20scenario,\x20you\x20MUST\x20read\x20Workflow\x201\x20IN\x20DETAIL\x20first.\x20Remember:\x20when\x20you\x20finish\x20your\x20work,\x20your\x20final\x20message\x20to\x20the\x20user\x20must\x20direct\x20them\x20to\x20the\x20Ranger\x20feature\x20review\x20dashboard\x20to\x20review\x20(e.g.\x20\x22Go\x20to\x20the\x20Ranger\x20feature\x20dashboard\x20to\x20review:\x20https://dashboard.ranger.net/features/{feature_id}\x22).','20oRMkZD','27xlkUVv','RANGER:\x20If\x20this\x20is\x20for\x20a\x20UI\x20feature,\x20you\x20MUST\x20use\x20/ranger\x20to\x20either\x20create\x20a\x20new\x20feature\x20review\x20or\x20resume\x20an\x20existing\x20one.','2715528XXqOxU','7wrItNS','66YNXnJo','wvWCO','5757080vSTrAy','2690094FJgvtB','107836HmwUWN'];_0x4162=function(){return _0x2b5ac2;};return _0x4162();}export async function postEdit(_0x4bdac6){const _0x29c7de=_0x50fb,_0x2bb85a={'qdmxJ':function(_0x18708d){return _0x18708d();},'wvWCO':function(_0x582364,_0xdfd1bd){return _0x582364(_0xdfd1bd);}},_0x524e3c=await getEnabledSessionId(_0x4bdac6);if(!_0x524e3c)return;updateBranchTracking(_0x524e3c);const _0x49bc50=await _0x2bb85a['qdmxJ'](getToken);if(!_0x49bc50)return;const _0x54475e=_0x2bb85a[_0x29c7de(0xd5)](getSessionEntry,_0x524e3c);if(_0x54475e){const _0x230a2e={'hookSpecificOutput':{'hookEventName':'PostToolUse','additionalContext':_0x29c7de(0xce)}};console[_0x29c7de(0xc9)](JSON['stringify'](_0x230a2e));return;}const _0x37a767={'hookSpecificOutput':{'hookEventName':_0x29c7de(0xcb),'additionalContext':_0x29c7de(0xd1)}};console['log'](JSON[_0x29c7de(0xc7)](_0x37a767));}
1
+ function _0xe925(_0x4858b4,_0x1c29f8){_0x4858b4=_0x4858b4-0x1e0;const _0x5d1a80=_0x5d1a();let _0xe92562=_0x5d1a80[_0x4858b4];return _0xe92562;}function _0x5d1a(){const _0xe3b35b=['6540996jIaYCb','6121448vmbRwX','RANGER:\x20If\x20this\x20change\x20expands\x20the\x20scope\x20of\x20the\x20active\x20feature\x20review,\x20you\x20may\x20need\x20to\x20add\x20a\x20scenario.\x20See\x20Workflow\x201\x20in\x20/ranger.\x20If\x20you\x20decide\x20to\x20add\x20a\x20scenario,\x20you\x20MUST\x20read\x20Workflow\x201\x20IN\x20DETAIL\x20first.\x20Remember:\x20when\x20you\x20finish\x20your\x20work,\x20your\x20final\x20message\x20to\x20the\x20user\x20must\x20direct\x20them\x20to\x20the\x20Ranger\x20feature\x20review\x20dashboard\x20to\x20review\x20(e.g.\x20\x22Go\x20to\x20the\x20Ranger\x20feature\x20dashboard\x20to\x20review:\x20https://dashboard.ranger.net/features/{feature_id}\x22).','97212ehulZd','Jadrk','stringify','RANGER:\x20If\x20this\x20is\x20for\x20a\x20UI\x20feature,\x20you\x20MUST\x20use\x20/ranger\x20to\x20either\x20create\x20a\x20new\x20feature\x20review\x20or\x20resume\x20an\x20existing\x20one.','PostToolUse','145lhYMhk','9724824kOALBU','log','48tkzrJe','1376200QnikAy','600094JZyWIQ','130412wdGaec'];_0x5d1a=function(){return _0xe3b35b;};return _0x5d1a();}(function(_0x383b6c,_0x4d8de5){const _0x99a323=_0xe925,_0x22aff2=_0x383b6c();while(!![]){try{const _0x174573=parseInt(_0x99a323(0x1e9))/0x1+-parseInt(_0x99a323(0x1e8))/0x2+-parseInt(_0x99a323(0x1e7))/0x3*(-parseInt(_0x99a323(0x1ea))/0x4)+parseInt(_0x99a323(0x1e4))/0x5*(-parseInt(_0x99a323(0x1ee))/0x6)+parseInt(_0x99a323(0x1eb))/0x7+parseInt(_0x99a323(0x1ec))/0x8+-parseInt(_0x99a323(0x1e5))/0x9;if(_0x174573===_0x4d8de5)break;else _0x22aff2['push'](_0x22aff2['shift']());}catch(_0xb90b28){_0x22aff2['push'](_0x22aff2['shift']());}}}(_0x5d1a,0x8e4c9));import{getSessionEntry,updateBranchTracking}from'../utils/sessionCache.js';import{getToken}from'../utils/keychain.js';import{getEnabledSessionId}from'./output.js';export async function postEdit(_0x1ba9e7){const _0x428c74=_0xe925,_0x274874={'Jadrk':function(_0x2f0a2c,_0x189b6a){return _0x2f0a2c(_0x189b6a);}},_0x3a23e5=await _0x274874[_0x428c74(0x1e0)](getEnabledSessionId,_0x1ba9e7);if(!_0x3a23e5)return;updateBranchTracking(_0x3a23e5);const _0x585728=await getToken();if(!_0x585728)return;const _0x4b3d5b=getSessionEntry(_0x3a23e5);if(_0x4b3d5b){const _0x3b756f={'hookSpecificOutput':{'hookEventName':'PostToolUse','additionalContext':_0x428c74(0x1ed)}};console['log'](JSON[_0x428c74(0x1e1)](_0x3b756f));return;}const _0x359b86={'hookSpecificOutput':{'hookEventName':_0x428c74(0x1e3),'additionalContext':_0x428c74(0x1e2)}};console[_0x428c74(0x1e6)](JSON['stringify'](_0x359b86));}
@@ -1 +1 @@
1
- (function(_0x157e42,_0x2c5e0b){const _0x2c1f0e=_0x2f70,_0x2c1994=_0x157e42();while(!![]){try{const _0x70e8ba=-parseInt(_0x2c1f0e(0x18e))/0x1*(-parseInt(_0x2c1f0e(0x18c))/0x2)+parseInt(_0x2c1f0e(0x191))/0x3+-parseInt(_0x2c1f0e(0x18b))/0x4*(-parseInt(_0x2c1f0e(0x18f))/0x5)+parseInt(_0x2c1f0e(0x18d))/0x6*(-parseInt(_0x2c1f0e(0x193))/0x7)+parseInt(_0x2c1f0e(0x18a))/0x8+parseInt(_0x2c1f0e(0x189))/0x9+-parseInt(_0x2c1f0e(0x194))/0xa;if(_0x70e8ba===_0x2c5e0b)break;else _0x2c1994['push'](_0x2c1994['shift']());}catch(_0x42f9a2){_0x2c1994['push'](_0x2c1994['shift']());}}}(_0x17bd,0xaa783));import{getToken}from'../utils/keychain.js';function _0x2f70(_0x4b18c4,_0x3d093d){_0x4b18c4=_0x4b18c4-0x189;const _0x17bdee=_0x17bd();let _0x2f7055=_0x17bdee[_0x4b18c4];return _0x2f7055;}import{printBlock,getEnabledSessionId}from'./output.js';export async function preCompact(_0x5c471d){const _0x33cd27=_0x2f70,_0x2f1c1a={'ZTARl':function(_0xc7c87f,_0x47352f){return _0xc7c87f(_0x47352f);},'jaDaC':function(_0x517b92){return _0x517b92();},'viAuL':function(_0x9964f6,_0x423a54){return _0x9964f6(_0x423a54);}},_0x227eff=await _0x2f1c1a[_0x33cd27(0x195)](getEnabledSessionId,_0x5c471d);if(!_0x227eff)return;try{const _0x496cea=await _0x2f1c1a[_0x33cd27(0x192)](getToken);if(!_0x496cea)return;_0x2f1c1a['viAuL'](printBlock,_0x33cd27(0x190));}catch{}}function _0x17bd(){const _0xc0d71=['4181430Ycbdjc','jaDaC','7fMVwQz','26182170FEeLrS','ZTARl','1164303bgVMFO','500912meKiYS','500984qFXotR','2SKUVDU','35484ResdKM','358877cQqzYf','55MAGwox','===\x20RANGER:\x20PRESERVE\x20IN\x20COMPACTION\x20===\x0a\x0aIf\x20you\x20created\x20a\x20plan\x20with\x20a\x20**Ranger\x20Feature\x20Review\x20Specification**,\x20you\x20MUST\x20preserve\x20it\x20in\x20the\x20compaction\x20summary.\x0a\x0aThe\x20specification\x20contains\x20scenarios\x20that\x20will\x20be\x20used\x20with\x20`ranger\x20create`.'];_0x17bd=function(){return _0xc0d71;};return _0x17bd();}
1
+ function _0xc537(){const _0x59df8f=['778588WNImyq','530511oOVMeH','390IgrIOX','119ShgNnG','1350252NySXKa','2218647aVGowr','8WWdYvm','877948xyzFco','280044wriHxd','5xegaTX','38566pIFBYm'];_0xc537=function(){return _0x59df8f;};return _0xc537();}(function(_0x408792,_0x127b07){const _0xea5547=_0x33b0,_0x555486=_0x408792();while(!![]){try{const _0x1f4e1f=parseInt(_0xea5547(0x1eb))/0x1+parseInt(_0xea5547(0x1ea))/0x2+-parseInt(_0xea5547(0x1ef))/0x3+-parseInt(_0xea5547(0x1f1))/0x4*(parseInt(_0xea5547(0x1f3))/0x5)+parseInt(_0xea5547(0x1f2))/0x6*(parseInt(_0xea5547(0x1ed))/0x7)+-parseInt(_0xea5547(0x1f0))/0x8*(parseInt(_0xea5547(0x1ee))/0x9)+-parseInt(_0xea5547(0x1ec))/0xa*(parseInt(_0xea5547(0x1f4))/0xb);if(_0x1f4e1f===_0x127b07)break;else _0x555486['push'](_0x555486['shift']());}catch(_0x2e0ddf){_0x555486['push'](_0x555486['shift']());}}}(_0xc537,0x72209));import{getToken}from'../utils/keychain.js';function _0x33b0(_0x34671f,_0x36e839){_0x34671f=_0x34671f-0x1ea;const _0xc53729=_0xc537();let _0x33b076=_0xc53729[_0x34671f];return _0x33b076;}import{printBlock,getEnabledSessionId}from'./output.js';export async function preCompact(_0xeab429){const _0x156895={'xVpZo':function(_0x3e4d24,_0x2a7dd7){return _0x3e4d24(_0x2a7dd7);}},_0xa912c8=await _0x156895['xVpZo'](getEnabledSessionId,_0xeab429);if(!_0xa912c8)return;try{const _0x2230f7=await getToken();if(!_0x2230f7)return;printBlock('===\x20RANGER:\x20PRESERVE\x20IN\x20COMPACTION\x20===\x0a\x0aIf\x20you\x20created\x20a\x20plan\x20with\x20a\x20**Ranger\x20Feature\x20Review\x20Specification**,\x20you\x20MUST\x20preserve\x20it\x20in\x20the\x20compaction\x20summary.\x0a\x0aThe\x20specification\x20contains\x20scenarios\x20that\x20will\x20be\x20used\x20with\x20`ranger\x20create`.');}catch{}}
@@ -1 +1 @@
1
- (function(_0x30b39c,_0xfa205){const _0xfd9509=_0x38b9,_0x15cfa9=_0x30b39c();while(!![]){try{const _0x40f544=-parseInt(_0xfd9509(0x6a))/0x1*(-parseInt(_0xfd9509(0x6d))/0x2)+-parseInt(_0xfd9509(0x6c))/0x3*(-parseInt(_0xfd9509(0x65))/0x4)+parseInt(_0xfd9509(0x67))/0x5+parseInt(_0xfd9509(0x71))/0x6+parseInt(_0xfd9509(0x68))/0x7*(parseInt(_0xfd9509(0x69))/0x8)+parseInt(_0xfd9509(0x6f))/0x9*(-parseInt(_0xfd9509(0x70))/0xa)+-parseInt(_0xfd9509(0x6e))/0xb*(parseInt(_0xfd9509(0x66))/0xc);if(_0x40f544===_0xfa205)break;else _0x15cfa9['push'](_0x15cfa9['shift']());}catch(_0x2abe9a){_0x15cfa9['push'](_0x15cfa9['shift']());}}}(_0x8676,0xb9f38));import{isSessionEnabled,recordEnabledSessionCleared}from'../utils/sessionCache.js';function _0x38b9(_0x646fa6,_0x36fddd){_0x646fa6=_0x646fa6-0x65;const _0x8676bf=_0x8676();let _0x38b960=_0x8676bf[_0x646fa6];return _0x38b960;}import{readHookInput}from'./output.js';export async function sessionEnd(_0x4da56d){const _0x1499d5=_0x38b9,_0x2cbdda={'PyItC':function(_0x832885,_0x39e540){return _0x832885(_0x39e540);},'gOwlI':function(_0x1ff073){return _0x1ff073();},'bSGsy':'clear'},_0x42c6ed=process['env']['CLAUDE_SESSION_ID'];let _0x1055ad=_0x4da56d,_0x444b92;if(!_0x4da56d){if(_0x42c6ed&&!_0x2cbdda['PyItC'](isSessionEnabled,_0x42c6ed))return;const _0x36b2ff=await _0x2cbdda['gOwlI'](readHookInput);_0x1055ad=_0x36b2ff?.['session_id']||_0x42c6ed,_0x444b92=_0x36b2ff?.[_0x1499d5(0x6b)];}if(!_0x1055ad)return;_0x444b92===_0x2cbdda[_0x1499d5(0x72)]&&recordEnabledSessionCleared(_0x1055ad);}function _0x8676(){const _0x38884c=['48UcPxJv','1483405sqYJAo','7fwGjMt','1167416aZGDDf','1300911obXxBZ','reason','1149aZKHLe','2fBXXxC','7019969sxbKIV','743913BqIHTm','10XDGJrn','4396668JwkIyE','bSGsy','9616IrpyRf'];_0x8676=function(){return _0x38884c;};return _0x8676();}
1
+ function _0x2d4f(_0x4110d8,_0x368b76){_0x4110d8=_0x4110d8-0x7d;const _0x549b28=_0x549b();let _0x2d4ff6=_0x549b28[_0x4110d8];return _0x2d4ff6;}(function(_0x3097e1,_0x573f7e){const _0x36d9b2=_0x2d4f,_0x87e06d=_0x3097e1();while(!![]){try{const _0x35fb72=-parseInt(_0x36d9b2(0x86))/0x1+-parseInt(_0x36d9b2(0x83))/0x2+-parseInt(_0x36d9b2(0x81))/0x3+parseInt(_0x36d9b2(0x7e))/0x4+-parseInt(_0x36d9b2(0x7f))/0x5+-parseInt(_0x36d9b2(0x7d))/0x6*(-parseInt(_0x36d9b2(0x80))/0x7)+-parseInt(_0x36d9b2(0x85))/0x8*(-parseInt(_0x36d9b2(0x82))/0x9);if(_0x35fb72===_0x573f7e)break;else _0x87e06d['push'](_0x87e06d['shift']());}catch(_0x1856e2){_0x87e06d['push'](_0x87e06d['shift']());}}}(_0x549b,0x6dc34));import{isSessionEnabled,recordEnabledSessionCleared}from'../utils/sessionCache.js';import{readHookInput}from'./output.js';export async function sessionEnd(_0x483bb0){const _0x3c71a7=_0x2d4f,_0x1238db={'wCIcm':function(_0x5db9e4,_0x4063dc){return _0x5db9e4(_0x4063dc);},'gQSGA':function(_0x4d76fa,_0x296c40){return _0x4d76fa===_0x296c40;}},_0x43ffb6=process[_0x3c71a7(0x88)][_0x3c71a7(0x89)];let _0x1da11b=_0x483bb0,_0x1d1b9b;if(!_0x483bb0){if(_0x43ffb6&&!_0x1238db[_0x3c71a7(0x84)](isSessionEnabled,_0x43ffb6))return;const _0x4d1058=await readHookInput();_0x1da11b=_0x4d1058?.['session_id']||_0x43ffb6,_0x1d1b9b=_0x4d1058?.['reason'];}if(!_0x1da11b)return;_0x1238db['gQSGA'](_0x1d1b9b,_0x3c71a7(0x87))&&_0x1238db['wCIcm'](recordEnabledSessionCleared,_0x1da11b);}function _0x549b(){const _0x5b1a1a=['667316jgxTjZ','2529935SHzTqY','51814IjIHQN','855696cSKgTn','36iHeESg','1165324tcWjym','wCIcm','5015272vZICxc','888006AfQsXW','clear','env','CLAUDE_SESSION_ID','30bemTkG'];_0x549b=function(){return _0x5b1a1a;};return _0x549b();}