@ranger-testing/ranger-cli 2.4.5 → 2.4.6

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 (72) hide show
  1. package/build/cli.js +1 -1
  2. package/build/commands/addEnv.js +1 -1
  3. package/build/commands/authEncrypt.js +1 -1
  4. package/build/commands/clean.js +1 -1
  5. package/build/commands/config.js +1 -1
  6. package/build/commands/env.js +1 -1
  7. package/build/commands/feature.js +1 -1
  8. package/build/commands/hook.js +1 -1
  9. package/build/commands/hooks/autoPrompt.js +1 -1
  10. package/build/commands/hooks/disable.js +1 -1
  11. package/build/commands/hooks/enable.js +1 -1
  12. package/build/commands/hooks/exitPlanMode.js +1 -1
  13. package/build/commands/hooks/index.js +1 -1
  14. package/build/commands/hooks/output.js +1 -1
  15. package/build/commands/hooks/planReminder.js +1 -1
  16. package/build/commands/hooks/planStart.js +1 -1
  17. package/build/commands/hooks/postEdit.js +1 -1
  18. package/build/commands/hooks/preCompact.js +1 -1
  19. package/build/commands/hooks/sessionEnd.js +1 -1
  20. package/build/commands/hooks/sessionStart.js +1 -1
  21. package/build/commands/hooks/stopHook.js +1 -1
  22. package/build/commands/index.js +1 -1
  23. package/build/commands/login.js +1 -1
  24. package/build/commands/setup/claude.js +1 -1
  25. package/build/commands/setup/opencode.js +1 -1
  26. package/build/commands/setupCi.js +1 -1
  27. package/build/commands/skillup.js +1 -1
  28. package/build/commands/start.js +1 -1
  29. package/build/commands/status.js +1 -1
  30. package/build/commands/update.js +1 -1
  31. package/build/commands/updateEnv.js +1 -1
  32. package/build/commands/useEnv.js +1 -1
  33. package/build/commands/utils/activeProfile.js +1 -1
  34. package/build/commands/utils/agentEnv.js +1 -1
  35. package/build/commands/utils/browserSessionsApi.js +1 -1
  36. package/build/commands/utils/claudeConfig.js +1 -1
  37. package/build/commands/utils/claudeOverrideSettings.js +1 -1
  38. package/build/commands/utils/claudePlugin.js +1 -1
  39. package/build/commands/utils/crypto.js +1 -1
  40. package/build/commands/utils/desirePathLog.js +1 -1
  41. package/build/commands/utils/deviceAuth.js +1 -1
  42. package/build/commands/utils/environment.js +1 -1
  43. package/build/commands/utils/featureApi.js +1 -1
  44. package/build/commands/utils/featureReportGenerator.js +1 -1
  45. package/build/commands/utils/fixWebmDuration.js +1 -1
  46. package/build/commands/utils/git.js +1 -1
  47. package/build/commands/utils/keychain.js +1 -1
  48. package/build/commands/utils/localAgentInstallationsApi.js +1 -1
  49. package/build/commands/utils/mcpImageBase64.js +1 -1
  50. package/build/commands/utils/model.js +1 -1
  51. package/build/commands/utils/opencodeConfig.js +1 -1
  52. package/build/commands/utils/playwrightCli.js +1 -1
  53. package/build/commands/utils/profileMessages.js +1 -1
  54. package/build/commands/utils/profileSetupBanner.js +1 -1
  55. package/build/commands/utils/rangerConfig.js +1 -1
  56. package/build/commands/utils/rangerRoot.js +1 -1
  57. package/build/commands/utils/reportGenerator.js +1 -1
  58. package/build/commands/utils/retry.js +1 -1
  59. package/build/commands/utils/sessionCache.js +1 -1
  60. package/build/commands/utils/settings.js +1 -1
  61. package/build/commands/utils/skillContent.js +1 -1
  62. package/build/commands/utils/skills.js +1 -1
  63. package/build/commands/utils/stitchWebmFiles.js +1 -1
  64. package/build/commands/utils/telemetry.js +1 -1
  65. package/build/commands/utils/tokenRefresh.js +1 -1
  66. package/build/commands/utils/traceSnapshotMapper.js +1 -1
  67. package/build/commands/utils/userApi.js +1 -1
  68. package/build/commands/utils/version.js +1 -1
  69. package/build/commands/verifyFeature.js +1 -1
  70. package/build/commands/verifyFeatureCli.js +1 -1
  71. package/build/commands/verifyInBrowser.js +1 -1
  72. package/package.json +1 -1
@@ -1 +1 @@
1
- const _0x1397c5=_0x538d;(function(_0x339a2b,_0xc7e312){const _0x30ec4a=_0x538d,_0x5d6187=_0x339a2b();while(!![]){try{const _0x1530ba=parseInt(_0x30ec4a(0xa6))/0x1+parseInt(_0x30ec4a(0xb5))/0x2*(parseInt(_0x30ec4a(0xad))/0x3)+parseInt(_0x30ec4a(0xb8))/0x4+parseInt(_0x30ec4a(0xa5))/0x5*(-parseInt(_0x30ec4a(0xab))/0x6)+parseInt(_0x30ec4a(0xba))/0x7*(-parseInt(_0x30ec4a(0xa1))/0x8)+parseInt(_0x30ec4a(0xbf))/0x9+parseInt(_0x30ec4a(0xac))/0xa*(-parseInt(_0x30ec4a(0xa8))/0xb);if(_0x1530ba===_0xc7e312)break;else _0x5d6187['push'](_0x5d6187['shift']());}catch(_0x5f467d){_0x5d6187['push'](_0x5d6187['shift']());}}}(_0x45f7,0x84cdf));import{existsSync}from'fs';function _0x45f7(){const _0x567b7e=['includes','4EaUejP','SGgLo','XHeJC','1062404NJQVik','acqCo','4636919KaUKMk','Profile\x20\x22','brHwc','dKhvm','No\x20configuration\x20set\x20for\x20\x22','3475692lRKZec','allowInsecureLocalhost','8nCrFRU','\x22\x20does\x20not\x20exist.\x20Run:\x20ranger\x20profile\x20add\x20','MICcL','IgyeF','5ZcLJqN','959555yqAVNK','NybTL','737PSVPxw','AFFIf','object','6373266QRZDcY','20910SVZsIh','1196022oiEKke','Key\x20\x22','log','\x22\x20not\x20found','stringify','\x22\x20does\x20not\x20exist.','uHAPb'];_0x45f7=function(){return _0x567b7e;};return _0x45f7();}import{loadSettings,saveSettings,getNestedValue,setNestedValue,deleteNestedValue,formatSettings,getSettingsPath,getEnvDir}from'./utils/settings.js';const BOOLEAN_KEYS=['headless',_0x1397c5(0xa0)];function parseValue(_0x218adf,_0x1c5718){const _0x2c8996=_0x1397c5,_0x4f45e6={'SGgLo':'true','qRMrP':function(_0x11d0c0,_0x1eb822){return _0x11d0c0===_0x1eb822;}};if(BOOLEAN_KEYS[_0x2c8996(0xb4)](_0x218adf)){if(_0x1c5718===_0x4f45e6[_0x2c8996(0xb6)])return!![];if(_0x4f45e6['qRMrP'](_0x1c5718,'false'))return![];throw new Error('Invalid\x20value\x20for\x20'+_0x218adf+':\x20expected\x20\x22true\x22\x20or\x20\x22false\x22');}return _0x1c5718;}function _0x538d(_0x46c8e8,_0x3fa9a9){_0x46c8e8=_0x46c8e8-0xa0;const _0x45f745=_0x45f7();let _0x538d33=_0x45f745[_0x46c8e8];return _0x538d33;}export async function configSet(_0x504dc5,_0x5b542b,_0x51e2dd){const _0x32674a=_0x1397c5,_0x3322c4={'IgyeF':function(_0x2d36bd,_0x1c7cd0){return _0x2d36bd(_0x1c7cd0);},'XHeJC':function(_0x5259dd,_0xd6d773,_0x100205){return _0x5259dd(_0xd6d773,_0x100205);},'VHjhu':function(_0x258285,_0x11d8ec,_0x452144,_0x3d0da8){return _0x258285(_0x11d8ec,_0x452144,_0x3d0da8);}},_0x2ac97f=getEnvDir(_0x504dc5);if(!existsSync(_0x2ac97f))throw new Error(_0x32674a(0xbb)+_0x504dc5+_0x32674a(0xa2)+_0x504dc5);const _0x34102d=await _0x3322c4[_0x32674a(0xa4)](loadSettings,_0x504dc5),_0x1adba8=_0x3322c4[_0x32674a(0xb7)](parseValue,_0x5b542b,_0x51e2dd);_0x3322c4['VHjhu'](setNestedValue,_0x34102d,_0x5b542b,_0x1adba8),await saveSettings(_0x504dc5,_0x34102d),console['log']('Set\x20'+_0x5b542b+'\x20=\x20'+_0x1adba8);}export async function configGet(_0x138c58,_0x2ca0fd){const _0x119b73=_0x1397c5,_0x557959={'OMXdl':function(_0x5ed86b,_0x48fd7e){return _0x5ed86b(_0x48fd7e);},'NybTL':function(_0x162640,_0xa81d16){return _0x162640(_0xa81d16);},'MICcL':function(_0x2cd98a,_0x1cffbc,_0x4517ed){return _0x2cd98a(_0x1cffbc,_0x4517ed);},'brHwc':function(_0x44b66d,_0x549870){return _0x44b66d===_0x549870;},'tethC':_0x119b73(0xaa)},_0x1a73b2=getEnvDir(_0x138c58);if(!_0x557959['OMXdl'](existsSync,_0x1a73b2))throw new Error('Profile\x20\x22'+_0x138c58+_0x119b73(0xb2));const _0x3f8161=await _0x557959[_0x119b73(0xa7)](loadSettings,_0x138c58),_0x2cf653=_0x557959[_0x119b73(0xa3)](getNestedValue,_0x3f8161,_0x2ca0fd);if(_0x2cf653===undefined)console[_0x119b73(0xaf)]('(not\x20set)');else _0x557959[_0x119b73(0xbc)](typeof _0x2cf653,_0x557959['tethC'])?console['log'](JSON[_0x119b73(0xb1)](_0x2cf653,null,0x2)):console['log'](_0x2cf653);}export async function configList(_0x37b812){const _0xd5926e=_0x1397c5,_0x467f65={'tlNfE':function(_0x20dacc,_0x578fec){return _0x20dacc(_0x578fec);},'AFFIf':function(_0x4b4ab1,_0x193bdd){return _0x4b4ab1(_0x193bdd);},'uHAPb':function(_0x1701ca,_0x41aa4e){return _0x1701ca(_0x41aa4e);}},_0x42bce7=_0x467f65['tlNfE'](getSettingsPath,_0x37b812);if(!_0x467f65[_0xd5926e(0xa9)](existsSync,_0x42bce7)){const _0x2e8fe0=_0x467f65[_0xd5926e(0xb3)](getEnvDir,_0x37b812);if(!_0x467f65['uHAPb'](existsSync,_0x2e8fe0))throw new Error(_0xd5926e(0xbb)+_0x37b812+'\x22\x20does\x20not\x20exist.');console[_0xd5926e(0xaf)](_0xd5926e(0xbe)+_0x37b812+'\x22');return;}const _0x56b495=await _0x467f65['tlNfE'](loadSettings,_0x37b812),_0x21b4e0=_0x467f65[_0xd5926e(0xa9)](formatSettings,_0x56b495);!_0x21b4e0?console[_0xd5926e(0xaf)](_0xd5926e(0xbe)+_0x37b812+'\x22'):console['log'](_0x21b4e0);}export async function configUnset(_0xf346f1,_0x1063a7){const _0x2bb041=_0x1397c5,_0x4f9679={'dKhvm':function(_0x5e030f,_0x194634){return _0x5e030f(_0x194634);},'acqCo':function(_0x3d5718,_0x541f5b,_0x3599b2){return _0x3d5718(_0x541f5b,_0x3599b2);}},_0x5159bd=getEnvDir(_0xf346f1);if(!_0x4f9679[_0x2bb041(0xbd)](existsSync,_0x5159bd))throw new Error('Profile\x20\x22'+_0xf346f1+'\x22\x20does\x20not\x20exist.');const _0x45466f=await loadSettings(_0xf346f1),_0x2beff0=_0x4f9679[_0x2bb041(0xb9)](deleteNestedValue,_0x45466f,_0x1063a7);_0x2beff0?(await saveSettings(_0xf346f1,_0x45466f),console[_0x2bb041(0xaf)]('Removed\x20'+_0x1063a7)):console['log'](_0x2bb041(0xae)+_0x1063a7+_0x2bb041(0xb0));}
1
+ const _0x535979=_0x6897;(function(_0x153894,_0x237af9){const _0x40df06=_0x6897,_0x37eb69=_0x153894();while(!![]){try{const _0x1c62c6=-parseInt(_0x40df06(0x107))/0x1+parseInt(_0x40df06(0x108))/0x2*(parseInt(_0x40df06(0x10b))/0x3)+parseInt(_0x40df06(0x10c))/0x4+parseInt(_0x40df06(0x10f))/0x5*(-parseInt(_0x40df06(0x106))/0x6)+-parseInt(_0x40df06(0x100))/0x7+-parseInt(_0x40df06(0x105))/0x8*(parseInt(_0x40df06(0x112))/0x9)+parseInt(_0x40df06(0x10e))/0xa;if(_0x1c62c6===_0x237af9)break;else _0x37eb69['push'](_0x37eb69['shift']());}catch(_0x3d14d3){_0x37eb69['push'](_0x37eb69['shift']());}}}(_0x38aa,0x46b2d));import{existsSync}from'fs';import{loadSettings,saveSettings,getNestedValue,setNestedValue,deleteNestedValue,formatSettings,getSettingsPath,getEnvDir}from'./utils/settings.js';const BOOLEAN_KEYS=['headless',_0x535979(0x10d)];function parseValue(_0x34500d,_0x229c6f){const _0x2ebb3f=_0x535979,_0x1cab25={'BRSDR':function(_0x18a6e2,_0x5922e4){return _0x18a6e2===_0x5922e4;}};if(BOOLEAN_KEYS['includes'](_0x34500d)){if(_0x1cab25['BRSDR'](_0x229c6f,_0x2ebb3f(0x111)))return!![];if(_0x229c6f===_0x2ebb3f(0x102))return![];throw new Error(_0x2ebb3f(0x114)+_0x34500d+_0x2ebb3f(0x109));}return _0x229c6f;}export async function configSet(_0x1f01bf,_0xf0477c,_0x2db7e8){const _0xc2e7e8=_0x535979,_0x3eeadf={'Bkcrg':function(_0x16e033,_0x5f033a){return _0x16e033(_0x5f033a);},'jxLRT':function(_0x1e4a6c,_0x123940,_0x2389b7){return _0x1e4a6c(_0x123940,_0x2389b7);}},_0x3f9950=_0x3eeadf[_0xc2e7e8(0x115)](getEnvDir,_0x1f01bf);if(!_0x3eeadf['Bkcrg'](existsSync,_0x3f9950))throw new Error('Profile\x20\x22'+_0x1f01bf+_0xc2e7e8(0x10a)+_0x1f01bf);const _0x293938=await loadSettings(_0x1f01bf),_0xb89c80=_0x3eeadf[_0xc2e7e8(0x101)](parseValue,_0xf0477c,_0x2db7e8);setNestedValue(_0x293938,_0xf0477c,_0xb89c80),await saveSettings(_0x1f01bf,_0x293938),console['log']('Set\x20'+_0xf0477c+'\x20=\x20'+_0xb89c80);}function _0x6897(_0x353695,_0x5450e3){_0x353695=_0x353695-0xff;const _0x38aa73=_0x38aa();let _0x6897a2=_0x38aa73[_0x353695];return _0x6897a2;}export async function configGet(_0x6ccfdf,_0x25a5bd){const _0x3b6fd2=_0x535979,_0x5a3645={'unOZH':function(_0x45d12f,_0x1a64ee){return _0x45d12f(_0x1a64ee);},'gxAOK':function(_0x1630f0,_0x4b2c57,_0x3c36a5){return _0x1630f0(_0x4b2c57,_0x3c36a5);},'mSXfR':function(_0x4cae8c,_0x162733){return _0x4cae8c===_0x162733;},'NiMvF':function(_0x43f453,_0x3d0ae8){return _0x43f453===_0x3d0ae8;},'EZqVH':'object'},_0x53f57c=_0x5a3645['unOZH'](getEnvDir,_0x6ccfdf);if(!existsSync(_0x53f57c))throw new Error('Profile\x20\x22'+_0x6ccfdf+'\x22\x20does\x20not\x20exist.');const _0x3caed3=await loadSettings(_0x6ccfdf),_0x5f45d7=_0x5a3645[_0x3b6fd2(0x103)](getNestedValue,_0x3caed3,_0x25a5bd);if(_0x5a3645['mSXfR'](_0x5f45d7,undefined))console['log']('(not\x20set)');else _0x5a3645['NiMvF'](typeof _0x5f45d7,_0x5a3645['EZqVH'])?console['log'](JSON['stringify'](_0x5f45d7,null,0x2)):console['log'](_0x5f45d7);}function _0x38aa(){const _0xc871bf=['true','5823bCjTvM','log','Invalid\x20value\x20for\x20','Bkcrg','Removed\x20','aIxqD','2090249tFJOFu','jxLRT','false','gxAOK','\x22\x20does\x20not\x20exist.','5432KRgXJz','42friKko','179905xpHpGS','79886mNrTbM',':\x20expected\x20\x22true\x22\x20or\x20\x22false\x22','\x22\x20does\x20not\x20exist.\x20Run:\x20ranger\x20profile\x20add\x20','3YlWGAE','455076VnxTjn','allowInsecureLocalhost','11878490JbGHGz','95825BCmshi','No\x20configuration\x20set\x20for\x20\x22'];_0x38aa=function(){return _0xc871bf;};return _0x38aa();}export async function configList(_0x29e02a){const _0x5d0b8f=_0x535979,_0x318233={'aIxqD':function(_0x29f0fc,_0x3218c9){return _0x29f0fc(_0x3218c9);}},_0x293cf3=_0x318233['aIxqD'](getSettingsPath,_0x29e02a);if(!existsSync(_0x293cf3)){const _0x4f8506=_0x318233[_0x5d0b8f(0xff)](getEnvDir,_0x29e02a);if(!existsSync(_0x4f8506))throw new Error('Profile\x20\x22'+_0x29e02a+'\x22\x20does\x20not\x20exist.');console['log'](_0x5d0b8f(0x110)+_0x29e02a+'\x22');return;}const _0x12b5da=await loadSettings(_0x29e02a),_0x20fbee=formatSettings(_0x12b5da);!_0x20fbee?console['log']('No\x20configuration\x20set\x20for\x20\x22'+_0x29e02a+'\x22'):console[_0x5d0b8f(0x113)](_0x20fbee);}export async function configUnset(_0x171691,_0x2767a7){const _0x250e3f=_0x535979,_0x2b2f41={'LPYDt':function(_0x5d8514,_0x3351e6){return _0x5d8514(_0x3351e6);},'ZNTlj':function(_0x1d5d7c,_0x29228b,_0x3cb267){return _0x1d5d7c(_0x29228b,_0x3cb267);}},_0x28ec0f=getEnvDir(_0x171691);if(!existsSync(_0x28ec0f))throw new Error('Profile\x20\x22'+_0x171691+_0x250e3f(0x104));const _0x2775a9=await _0x2b2f41['LPYDt'](loadSettings,_0x171691),_0x445fdb=deleteNestedValue(_0x2775a9,_0x2767a7);_0x445fdb?(await _0x2b2f41['ZNTlj'](saveSettings,_0x171691,_0x2775a9),console[_0x250e3f(0x113)](_0x250e3f(0x116)+_0x2767a7)):console['log']('Key\x20\x22'+_0x2767a7+'\x22\x20not\x20found');}
@@ -1 +1 @@
1
- (function(_0x193b7d,_0x7d3823){const _0x381c7e=_0x11b4,_0x22025c=_0x193b7d();while(!![]){try{const _0xc8726a=-parseInt(_0x381c7e(0x1bf))/0x1+parseInt(_0x381c7e(0x1bb))/0x2*(parseInt(_0x381c7e(0x1ce))/0x3)+parseInt(_0x381c7e(0x1c7))/0x4+parseInt(_0x381c7e(0x1da))/0x5*(parseInt(_0x381c7e(0x1c8))/0x6)+-parseInt(_0x381c7e(0x1cf))/0x7*(-parseInt(_0x381c7e(0x1c5))/0x8)+-parseInt(_0x381c7e(0x1ba))/0x9*(parseInt(_0x381c7e(0x1c2))/0xa)+parseInt(_0x381c7e(0x1c1))/0xb*(parseInt(_0x381c7e(0x1d1))/0xc);if(_0xc8726a===_0x7d3823)break;else _0x22025c['push'](_0x22025c['shift']());}catch(_0x4bf3eb){_0x22025c['push'](_0x22025c['shift']());}}}(_0x25bd,0x81941));import{readdir,stat}from'fs/promises';import{join}from'path';import{existsSync}from'fs';function _0x25bd(){const _0x5ec00a=['2085GVakrL','JghTA','18AKmBBN','1343458CGPcSn','pOSFE','settings.json','zkikL','910323mPNwGP','push','110bqJezY','4982770YretsQ','baseUrl','.txt','120DJIYwS','legacy','219412bOajkF','7674aGowEu','sort','\x0a*\x20=\x20active\x20profile','local','CSmhv','environmentDetails','3OFdTci','282961FRJbXP','length','685632fhKpGJ','rTzXj','startsWith','includes','GgaWM','log','isDirectory','XGvdw','STEOH'];_0x25bd=function(){return _0x5ec00a;};return _0x25bd();}import{getRangerDir}from'./utils/rangerRoot.js';import{loadSettings}from'./utils/settings.js';import{readActiveProfileName}from'./utils/activeProfile.js';const NON_ENV_DIRS=['sessions','bug-bashes','reports','local','ci'];function _0x11b4(_0x19e848,_0x47dbec){_0x19e848=_0x19e848-0x1b9;const _0x25bd0c=_0x25bd();let _0x11b418=_0x25bd0c[_0x19e848];return _0x11b418;}export async function getEnvNames(){const _0x15a8d9=_0x11b4,_0x29839f={'STEOH':function(_0x4b64b4){return _0x4b64b4();},'HUElB':function(_0x49d3e4,_0x3ced71){return _0x49d3e4(_0x3ced71);},'XGvdw':function(_0x49f105,_0x190ad1){return _0x49f105(_0x190ad1);},'ouQkx':function(_0xa410d0,_0x24367e,_0x5640f9){return _0xa410d0(_0x24367e,_0x5640f9);},'dXuhU':function(_0x75920,_0x1ee403,_0x1644fc){return _0x75920(_0x1ee403,_0x1644fc);},'zkikL':function(_0x4fb5a8,_0x6487c1){return _0x4fb5a8(_0x6487c1);},'rTzXj':function(_0x5917b7,_0xa3bfe6,_0x2a4e27){return _0x5917b7(_0xa3bfe6,_0x2a4e27);},'CSmhv':_0x15a8d9(0x1bd),'xkIFL':'legacy'},_0x3ca812=_0x29839f[_0x15a8d9(0x1d9)](getRangerDir);if(!_0x29839f['HUElB'](existsSync,_0x3ca812))return{'envNames':[],'activeEnv':null,'envTypes':{}};const _0x36f81f=await readActiveProfileName(),_0x3fca07=[],_0x3f13e9={},_0x248dcb=join(_0x3ca812,_0x15a8d9(0x1cb));if(_0x29839f[_0x15a8d9(0x1d8)](existsSync,_0x248dcb)){const _0x4ae773=await readdir(_0x248dcb);for(const _0x526eb4 of _0x4ae773){const _0x321250=_0x29839f['ouQkx'](join,_0x248dcb,_0x526eb4),_0x5af779=await _0x29839f['XGvdw'](stat,_0x321250);_0x5af779[_0x15a8d9(0x1d7)]()&&(_0x3fca07[_0x15a8d9(0x1c0)](_0x526eb4),_0x3f13e9[_0x526eb4]=_0x15a8d9(0x1cb));}}const _0xc852f1=join(_0x3ca812,'ci');if(existsSync(_0xc852f1)){const _0x1835a2=await readdir(_0xc852f1);for(const _0x94c93b of _0x1835a2){const _0x429f56=_0x29839f['dXuhU'](join,_0xc852f1,_0x94c93b),_0x2348ce=await _0x29839f[_0x15a8d9(0x1be)](stat,_0x429f56);_0x2348ce['isDirectory']()&&(_0x3fca07[_0x15a8d9(0x1c0)](_0x94c93b),_0x3f13e9[_0x94c93b]='ci');}}const _0x5e6d85=await readdir(_0x3ca812);for(const _0x254af1 of _0x5e6d85){if(NON_ENV_DIRS[_0x15a8d9(0x1d4)](_0x254af1))continue;if(_0x254af1[_0x15a8d9(0x1d3)]('.'))continue;if(_0x254af1['endsWith'](_0x15a8d9(0x1c4)))continue;const _0xfcc1e6=_0x29839f[_0x15a8d9(0x1d2)](join,_0x3ca812,_0x254af1),_0x37708d=await stat(_0xfcc1e6);_0x37708d[_0x15a8d9(0x1d7)]()&&existsSync(join(_0xfcc1e6,_0x29839f[_0x15a8d9(0x1cc)]))&&(!_0x3fca07[_0x15a8d9(0x1d4)](_0x254af1)&&(_0x3fca07['push'](_0x254af1),_0x3f13e9[_0x254af1]=_0x29839f['xkIFL']));}return{'envNames':_0x3fca07,'activeEnv':_0x36f81f,'envTypes':_0x3f13e9};}export async function envList(){const _0x1d0c40=_0x11b4,_0x2ba0b5={'dQlYj':function(_0x3c074d){return _0x3c074d();},'LzKPr':'\x0aNo\x20profiles\x20found.','GgaWM':'Run:\x20ranger\x20profile\x20add\x20<profile-name>','JghTA':_0x1d0c40(0x1cb),'pOSFE':_0x1d0c40(0x1c6)},{envNames:_0x2f0721,activeEnv:_0x550c3d,envTypes:_0x4cd591}=await _0x2ba0b5['dQlYj'](getEnvNames);if(_0x2f0721[_0x1d0c40(0x1d0)]===0x0){console['log'](_0x2ba0b5['LzKPr']),console[_0x1d0c40(0x1d6)](_0x2ba0b5[_0x1d0c40(0x1d5)]);return;}console[_0x1d0c40(0x1d6)]('\x0aProfiles:');for(const _0x8442e4 of _0x2f0721[_0x1d0c40(0x1c9)]()){const _0xb2087a=_0x8442e4===_0x550c3d,_0xfeacd6=_0x4cd591[_0x8442e4]||_0x2ba0b5[_0x1d0c40(0x1b9)],_0x11e973=await loadSettings(_0x8442e4),_0x28c000=_0xfeacd6===_0x2ba0b5[_0x1d0c40(0x1bc)]?'':'\x20['+_0xfeacd6+']';console['log']('\x20\x20'+(_0xb2087a?'*\x20':'\x20\x20')+_0x8442e4+_0x28c000),_0x11e973[_0x1d0c40(0x1c3)]&&console['log']('\x20\x20\x20\x20\x20\x20URL:\x20'+_0x11e973[_0x1d0c40(0x1c3)]),_0x11e973[_0x1d0c40(0x1cd)]&&console['log']('\x20\x20\x20\x20\x20\x20Details:\x20'+_0x11e973['environmentDetails']);}_0x550c3d&&console['log'](_0x1d0c40(0x1ca));}
1
+ const _0x108234=_0x3a86;function _0x56aa(){const _0x42a642=['24onpVhp','reports','SpQRS','environmentDetails','log','YMHPz','settings.json','1988693hQPiie','Yugtq','baseUrl','68828mXoGKW','KHhkU','\x20\x20\x20\x20\x20\x20URL:\x20','2429162rlQIaC','\x0aProfiles:','504459YWtaWO','length','oQqGG','sort','GynCU','10pvVMrx','push','\x0aNo\x20profiles\x20found.','6940190muBCaI','iScaV','55TIGfzH','.txt','177gUlAkB','853043lLTppM','mWjRa','1265466BVIaIe','local','isDirectory'];_0x56aa=function(){return _0x42a642;};return _0x56aa();}(function(_0x48c8f6,_0x3c1bc6){const _0x2707fd=_0x3a86,_0x2ce7f7=_0x48c8f6();while(!![]){try{const _0x5ecff4=-parseInt(_0x2707fd(0x12c))/0x1+-parseInt(_0x2707fd(0x11d))/0x2+-parseInt(_0x2707fd(0x12b))/0x3*(parseInt(_0x2707fd(0x11a))/0x4)+parseInt(_0x2707fd(0x124))/0x5*(-parseInt(_0x2707fd(0x12e))/0x6)+parseInt(_0x2707fd(0x117))/0x7*(parseInt(_0x2707fd(0x131))/0x8)+-parseInt(_0x2707fd(0x11f))/0x9+-parseInt(_0x2707fd(0x127))/0xa*(-parseInt(_0x2707fd(0x129))/0xb);if(_0x5ecff4===_0x3c1bc6)break;else _0x2ce7f7['push'](_0x2ce7f7['shift']());}catch(_0x354be9){_0x2ce7f7['push'](_0x2ce7f7['shift']());}}}(_0x56aa,0xb9f52));import{readdir,stat}from'fs/promises';import{join}from'path';function _0x3a86(_0x685973,_0xd581da){_0x685973=_0x685973-0x111;const _0x56aaab=_0x56aa();let _0x3a8659=_0x56aaab[_0x685973];return _0x3a8659;}import{existsSync}from'fs';import{getRangerDir}from'./utils/rangerRoot.js';import{loadSettings}from'./utils/settings.js';import{readActiveProfileName}from'./utils/activeProfile.js';const NON_ENV_DIRS=['sessions','bug-bashes',_0x108234(0x111),_0x108234(0x12f),'ci'];export async function getEnvNames(){const _0x1cfcea=_0x108234,_0x229d87={'YMHPz':function(_0x55963f,_0x26e0dc){return _0x55963f(_0x26e0dc);},'mWjRa':function(_0x259827){return _0x259827();},'KHhkU':_0x1cfcea(0x12f),'hqYqf':function(_0x415be5,_0x869a72){return _0x415be5(_0x869a72);},'GynCU':function(_0x103cda,_0x24bf4f){return _0x103cda(_0x24bf4f);},'SpQRS':function(_0x56e52c,_0x542a8a,_0x169ef9){return _0x56e52c(_0x542a8a,_0x169ef9);},'iScaV':function(_0x53a174,_0x4b2920){return _0x53a174(_0x4b2920);},'oQqGG':function(_0x2e8880,_0xb28de3,_0x3c9d2a){return _0x2e8880(_0xb28de3,_0x3c9d2a);},'xxurA':'legacy'},_0x4a6bfe=getRangerDir();if(!_0x229d87['YMHPz'](existsSync,_0x4a6bfe))return{'envNames':[],'activeEnv':null,'envTypes':{}};const _0x5465fd=await _0x229d87[_0x1cfcea(0x12d)](readActiveProfileName),_0x4c8514=[],_0x8d1005={},_0x81b27e=join(_0x4a6bfe,_0x229d87[_0x1cfcea(0x11b)]);if(_0x229d87['hqYqf'](existsSync,_0x81b27e)){const _0x206daf=await _0x229d87[_0x1cfcea(0x123)](readdir,_0x81b27e);for(const _0x82ff6c of _0x206daf){const _0x1b6165=join(_0x81b27e,_0x82ff6c),_0x4738bf=await _0x229d87[_0x1cfcea(0x115)](stat,_0x1b6165);_0x4738bf[_0x1cfcea(0x130)]()&&(_0x4c8514[_0x1cfcea(0x125)](_0x82ff6c),_0x8d1005[_0x82ff6c]='local');}}const _0x338c8c=_0x229d87[_0x1cfcea(0x112)](join,_0x4a6bfe,'ci');if(existsSync(_0x338c8c)){const _0x3b35c8=await readdir(_0x338c8c);for(const _0x1e1397 of _0x3b35c8){const _0x359246=_0x229d87[_0x1cfcea(0x112)](join,_0x338c8c,_0x1e1397),_0x29a8c1=await _0x229d87[_0x1cfcea(0x128)](stat,_0x359246);_0x29a8c1[_0x1cfcea(0x130)]()&&(_0x4c8514[_0x1cfcea(0x125)](_0x1e1397),_0x8d1005[_0x1e1397]='ci');}}const _0x3ff021=await readdir(_0x4a6bfe);for(const _0x4fea17 of _0x3ff021){if(NON_ENV_DIRS['includes'](_0x4fea17))continue;if(_0x4fea17['startsWith']('.'))continue;if(_0x4fea17['endsWith'](_0x1cfcea(0x12a)))continue;const _0x4b326e=join(_0x4a6bfe,_0x4fea17),_0x16d838=await stat(_0x4b326e);_0x16d838['isDirectory']()&&existsSync(_0x229d87[_0x1cfcea(0x121)](join,_0x4b326e,_0x1cfcea(0x116)))&&(!_0x4c8514['includes'](_0x4fea17)&&(_0x4c8514['push'](_0x4fea17),_0x8d1005[_0x4fea17]=_0x229d87['xxurA']));}return{'envNames':_0x4c8514,'activeEnv':_0x5465fd,'envTypes':_0x8d1005};}export async function envList(){const _0x21b979=_0x108234,_0x2a776f={'LfhFe':function(_0x51cf43,_0x32c8b4){return _0x51cf43===_0x32c8b4;},'FszyS':'Run:\x20ranger\x20profile\x20add\x20<profile-name>','Yugtq':_0x21b979(0x12f)},{envNames:_0x3c4a2e,activeEnv:_0x563a5a,envTypes:_0x17a63e}=await getEnvNames();if(_0x2a776f['LfhFe'](_0x3c4a2e[_0x21b979(0x120)],0x0)){console[_0x21b979(0x114)](_0x21b979(0x126)),console['log'](_0x2a776f['FszyS']);return;}console['log'](_0x21b979(0x11e));for(const _0x5414f7 of _0x3c4a2e[_0x21b979(0x122)]()){const _0x48a752=_0x5414f7===_0x563a5a,_0x49222a=_0x17a63e[_0x5414f7]||_0x2a776f[_0x21b979(0x118)],_0xc03ec2=await loadSettings(_0x5414f7),_0x1b546f=_0x49222a==='legacy'?'':'\x20['+_0x49222a+']';console[_0x21b979(0x114)]('\x20\x20'+(_0x48a752?'*\x20':'\x20\x20')+_0x5414f7+_0x1b546f),_0xc03ec2[_0x21b979(0x119)]&&console['log'](_0x21b979(0x11c)+_0xc03ec2[_0x21b979(0x119)]),_0xc03ec2[_0x21b979(0x113)]&&console['log']('\x20\x20\x20\x20\x20\x20Details:\x20'+_0xc03ec2[_0x21b979(0x113)]);}_0x563a5a&&console[_0x21b979(0x114)]('\x0a*\x20=\x20active\x20profile');}
@@ -1 +1 @@
1
- const _0xfecff9=_0x356a;(function(_0x53562f,_0x495ba4){const _0x2e9785=_0x356a,_0x46fd72=_0x53562f();while(!![]){try{const _0x43e128=parseInt(_0x2e9785(0x1a0))/0x1*(-parseInt(_0x2e9785(0x19a))/0x2)+parseInt(_0x2e9785(0x1c1))/0x3+parseInt(_0x2e9785(0x151))/0x4*(parseInt(_0x2e9785(0x1aa))/0x5)+-parseInt(_0x2e9785(0x192))/0x6*(-parseInt(_0x2e9785(0x169))/0x7)+-parseInt(_0x2e9785(0x14e))/0x8+-parseInt(_0x2e9785(0x190))/0x9+parseInt(_0x2e9785(0x14b))/0xa*(parseInt(_0x2e9785(0x170))/0xb);if(_0x43e128===_0x495ba4)break;else _0x46fd72['push'](_0x46fd72['shift']());}catch(_0x478b30){_0x46fd72['push'](_0x46fd72['shift']());}}}(_0x494a,0xc3442));import{readFile,writeFile,mkdir}from'fs/promises';function _0x356a(_0xcc5319,_0x1db511){_0xcc5319=_0xcc5319-0x121;const _0x494a65=_0x494a();let _0x356a6d=_0x494a65[_0xcc5319];return _0x356a6d;}import{join}from'path';import{existsSync}from'fs';import{execSync}from'child_process';import _0x48efea from'inquirer';import{createFeature,listFeatures,getFeature,updateFeature,getFeatureReport,getFeatureReportMarkdown,listFeatureSessions,startSession,concludeSession,createChecklistItem,getActionItems,getItemFeedback,softDeleteFeature,restoreFeature,updateChecklistItem}from'./utils/featureApi.js';import{getBrowserSessionSteps}from'./utils/browserSessionsApi.js';import{getApiBaseUrl}from'./utils/environment.js';import{getRangerDir}from'./utils/rangerRoot.js';import{registerSession}from'./utils/sessionCache.js';import{getEnvNames}from'./env.js';import{formatProfileRequiredMessage}from'./utils/profileMessages.js';const ACTIVE_FEATURE_FILE='active-feature.txt',bold=_0x3f4a2f=>'\x1b[1m'+_0x3f4a2f+_0xfecff9(0x1c3);function getGitRepoUrl(){const _0x36b6eb=_0xfecff9,_0x4e60ef={'EoNVu':function(_0x5194da,_0x54e750,_0x1a7782){return _0x5194da(_0x54e750,_0x1a7782);},'hBHZB':'git\x20remote\x20get-url\x20origin','kwvdT':'utf-8','ZPQmB':_0x36b6eb(0x1e6)};try{const _0x286ac9=_0x4e60ef['EoNVu'](execSync,_0x4e60ef[_0x36b6eb(0x143)],{'encoding':_0x4e60ef['kwvdT'],'stdio':[_0x4e60ef['ZPQmB'],_0x4e60ef[_0x36b6eb(0x1bd)],_0x4e60ef[_0x36b6eb(0x1bd)]]})['trim']();return _0x286ac9['replace'](/\.git$/,'')['replace'](/^git@github\.com:/,_0x36b6eb(0x166))[_0x36b6eb(0x1cd)](/^https?:\/\//,'');}catch{return undefined;}}function getGitBranch(){const _0xc4403c=_0xfecff9,_0xcda4d0={'rRhVO':function(_0x14baf1,_0x1f2b99,_0x521a3a){return _0x14baf1(_0x1f2b99,_0x521a3a);},'fOOcb':'git\x20rev-parse\x20--abbrev-ref\x20HEAD','mFtnV':'pipe'};try{return _0xcda4d0[_0xc4403c(0x18d)](execSync,_0xcda4d0['fOOcb'],{'encoding':_0xc4403c(0x1fd),'stdio':[_0xc4403c(0x1e6),_0xcda4d0[_0xc4403c(0x1ca)],'pipe']})['trim']();}catch{return undefined;}}export async function getActiveFeatureId(){const _0x549cff=_0xfecff9,_0x2b9d23={'NNYtQ':function(_0x1985b8,_0x58c180,_0x35ab08){return _0x1985b8(_0x58c180,_0x35ab08);}},_0xe3e44=join(getRangerDir(),ACTIVE_FEATURE_FILE);if(!existsSync(_0xe3e44))return null;try{const _0x1f72f5=await _0x2b9d23['NNYtQ'](readFile,_0xe3e44,_0x549cff(0x1fd));return _0x1f72f5['trim']()||null;}catch{return null;}}async function setActiveFeatureId(_0xfbbf8e){const _0x2c9316=_0xfecff9,_0x1840e6={'ChGXd':function(_0x5c8a00){return _0x5c8a00();},'ErCKI':function(_0x4be7fc,_0x4aeb07,_0x390669){return _0x4be7fc(_0x4aeb07,_0x390669);},'TNeFv':function(_0x5d9ef3,_0x2c3b2f){return _0x5d9ef3(_0x2c3b2f);},'ZhGNb':function(_0x2a2154,_0x198fdc,_0x15fdd9,_0x130e79){return _0x2a2154(_0x198fdc,_0x15fdd9,_0x130e79);}},_0x3304e4=_0x1840e6[_0x2c9316(0x1cb)](getRangerDir),_0x32a17a=_0x1840e6['ErCKI'](join,_0x3304e4,ACTIVE_FEATURE_FILE);!_0x1840e6[_0x2c9316(0x1b7)](existsSync,_0x3304e4)&&await mkdir(_0x3304e4,{'recursive':!![]}),await _0x1840e6['ZhGNb'](writeFile,_0x32a17a,_0xfbbf8e,_0x2c9316(0x1fd));}function getProgressDisplay(_0x213df3){const _0x56176d=_0xfecff9,_0x5d8104={'usYzO':function(_0x132957,_0x2637dc){return _0x132957+_0x2637dc;},'HYVvI':function(_0x30db47,_0x321c10){return _0x30db47+_0x321c10;},'TFcJq':function(_0x258dcf,_0x5bdd1b){return _0x258dcf===_0x5bdd1b;},'tmYDl':function(_0x391b05,_0x51dcd5){return _0x391b05*_0x51dcd5;},'ygOeg':function(_0x3d0c55,_0x1212cb){return _0x3d0c55>_0x1212cb;}},_0x1e552d=_0x213df3['verifiedItems']||0x0,_0x260b49=_0x213df3[_0x56176d(0x1bc)]||0x0,_0x3b1394=_0x213df3[_0x56176d(0x172)]||0x0,_0x3d4d8e=_0x213df3[_0x56176d(0x132)]||0x0,_0x197490=_0x213df3[_0x56176d(0x158)]||0x0,_0x60a4a1=_0x5d8104['usYzO'](_0x5d8104[_0x56176d(0x1a5)](_0x1e552d+_0x260b49,_0x3b1394)+_0x3d4d8e,_0x197490);if(_0x5d8104['TFcJq'](_0x60a4a1,0x0))return'-';const _0x3f7c91=0xa,_0x3489e6=Math[_0x56176d(0x186)](_0x5d8104['tmYDl'](_0x1e552d/_0x60a4a1,_0x3f7c91)),_0x4aed40='█'[_0x56176d(0x1e3)](_0x3489e6)+'░'[_0x56176d(0x1e3)](_0x3f7c91-_0x3489e6),_0x255387=[];if(_0x3b1394>0x0)_0x255387[_0x56176d(0x1e1)](_0x3b1394+_0x56176d(0x17c));if(_0x3d4d8e>0x0)_0x255387['push'](_0x3d4d8e+'\x20incomplete');if(_0x5d8104[_0x56176d(0x12f)](_0x260b49,0x0))_0x255387['push'](_0x260b49+_0x56176d(0x19b));const _0x14e479=_0x255387['length']>0x0?'\x20('+_0x255387[_0x56176d(0x18a)](',\x20')+')':'';return _0x4aed40+'\x20'+_0x1e552d+'/'+_0x60a4a1+'\x20verified'+_0x14e479;}function _0x494a(){const _0x57657d=['11jLxadH','WsdkH','blockedItems','feedback-images','GYrBH','description','includeDeleted','Jkvnk','\x20scenarios.','\x20\x20\x20\x20\x20\x20Incomplete:\x20','latestReview','OZSFq','\x20blocked','notes','hEdfo','\x20\x20\x20▶️\x20Started\x20session\x20','AszvJ','zQAtR','JKwKI','\x20\x20\x20\x20\x20Progress:\x20','sADkg','env','round','assetType','KSBgd','stepName','join','\x20\x20\x20Created:\x20','status','rRhVO','\x20\x20\x20\x20\x20📋\x20Selector:\x20','stdin','13489938MTstpS','Scenario\x20','2154786geUlkL','epoew','qLhxC','qIixI','\x0aGenerating\x20report...','\x0aNo\x20feature\x20reviews\x20found.','en-US','Unknown','405658AgrXtW','\x20in\x20progress','createdAt','gitRepoUrl','\x20/\x20','tmJAh','5jZQKlW','verification_in_progress','domRef','pop','get','HYVvI','Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','exit','items','closed','1363955MqgtWK','\x0a✅\x20Session\x20is\x20already\x20completed.','KOyaU','isTTY','dashboardUrl','jrJLi','checklistItems','aSuQa','wPXRy','NxcuC','\x0a❌\x20No\x20scenarios\x20found\x20to\x20edit.','all','currentSessionId','TNeFv','\x20\x20\x20Status:\x20','assetUrl','write','ready','verificationInProgressItems','ZPQmB','bOaEs','isInteger','NrGpt','4312800mHAFZD','Cannot\x20conclude\x20session\x20with\x20status:\x20','\x1b[0m','point','No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','VFkgV','version','browserSessionId','\x0a🗑️\x20\x20Deleted\x20feature\x20review:\x20','mFtnV','ChGXd','\x20>\x20','replace','verified','stringify','mfDvp','Not\x20in\x20a\x20git\x20repository.','aEQex','dPvXb','error','\x20at\x20[','screenshotUrls','lMPwB','\x20\x20\x20\x20\x20\x20Approved','gitBranch','iteration','hnFJb','\x20\x20\x20Run\x20`ranger\x20get-review`\x20to\x20see\x20what\x20needs\x20to\x20be\x20fixed.','\x20[has\x20reviewer\x20feedback]','eGMeF','offset','/api/v1/mcp/browser-sessions/','push','MXdYc','repeat','limit','Run:\x20ranger\x20create\x20\x22<name>\x22\x20to\x20create\x20a\x20new\x20feature\x20review','pipe','FxkvY','ehGEz','position','sessionId','parentItemId','iXnvA','\x20scenario(s).','vBwJc','in_progress','WyWwW','TBJmc','\x0aAvailable\x20scenarios:','ZuiJV','gcXER','split','storage','isKeyStep','\x0a✅\x20Session\x20','submittedAt','HUsxt','\x20\x20\x20Progress:\x20','incompleteReason','utf-8','hqHpb','kXuzR','wlxTU','\x20unaddressed\x20comment(s)','NOSTV','eAmul','toLocaleDateString','\x20\x20\x20Branch:\x20','rabnj','\x20\x20\x20ID:\x20','TpSGv','spatial','\x20\x20\x20\x20\x20\x20Cancelled:\x20','sXEXs','\x0a📋\x20Feedback\x20for:\x20','authorEmail','cjdBK','linkedSession','content','reports','stdout','textContent','nvPlZ','log','yAMEB','ygOeg','\x20\x20\x20Description:\x20','name','incompleteItems','\x0a➡️\x20\x20Set\x20as\x20active\x20feature\x20review','any','\x0a✅\x20Feature\x20review\x20created:\x20','LRvmJ','\x20--include-deleted','CLAUDE_SESSION_ID','No\x20scenarios\x20found.','WDYvb','toFixed','filter','...','snlUw','comment_','totalCount','prompt','location','hBHZB','\x20\x20\x20Updated\x20branch\x20to:\x20','IZqQo','iVFHi','completedAt','find','Cannot\x20add\x20scenario:\x20feature\x20review\x20has\x20an\x20active\x20review.\x20Please\x20finish\x20your\x20review\x20first:\x20','\x0a❌\x20No\x20scenarios\x20found\x20to\x20include.','645230bvmONd','canceledReason','\x0a✅\x20Resumed\x20feature\x20review:\x20','7918120OZfOAA','2|4|0|5|3|1','riCCi','20wiHvVI','qzQug','incomplete','\x0aNon-interactive\x20mode\x20detected.\x20Multiple\x20feature\x20reviews\x20found:','CEpqa','\x0a✅\x20Report\x20generated:\x20','output','pendingItems','CqiAJ','YBOQv','JjWHQ','screenshot','zeovD','wrXxH','QrZtF','boLEp','.\x20Feature\x20review\x20has\x20','toLocaleString','gMmOC','map','blocked','github.com/','):\x20\x22','\x0aConcluding\x20session...','28zEtCwy','\x20\x20\x20\x20\x20📷\x20Screenshot:\x20','stats','length','blockedReason','Screenshot\x20','Please\x20specify\x20the\x20feature\x20review\x20ID:\x20ranger\x20resume\x20<id>'];_0x494a=function(){return _0x57657d;};return _0x494a();}function getCurrentSessionItems(_0x4c2c37,_0x45de60){const _0x114054=_0xfecff9;if(!_0x4c2c37[_0x114054(0x1b6)])return _0x45de60['filter'](_0x1a8107=>!_0x1a8107['sessionId']);return _0x45de60['filter'](_0x39ef50=>_0x39ef50['sessionId']===_0x4c2c37[_0x114054(0x1b6)]||!_0x39ef50[_0x114054(0x1ea)]);}function displayFeature(_0x21116a,_0x54347d){const _0x1b10e1=_0xfecff9,_0x46e164={'bVwny':function(_0x3f3aab,_0x5484a0){return _0x3f3aab(_0x5484a0);},'nvPlZ':function(_0x27d749,_0x11b06b){return _0x27d749>_0x11b06b;},'AnWFR':'\x0a\x20\x20\x20Scenarios:','AxCJM':function(_0x13a8cb,_0x17ffe1){return _0x13a8cb<_0x17ffe1;},'iVFHi':function(_0x2e1755,_0x357b6d){return _0x2e1755===_0x357b6d;},'aSuQa':function(_0xe8a6bc,_0x2af954){return _0xe8a6bc===_0x2af954;},'iXnvA':_0x1b10e1(0x153),'uFHDv':_0x1b10e1(0x165),'wPXRy':function(_0x11b521,_0x4bcf63){return _0x11b521===_0x4bcf63;},'cjdBK':_0x1b10e1(0x1a1),'gcXER':function(_0x566888,_0x132f69){return _0x566888!==_0x132f69;},'HUsxt':_0x1b10e1(0x1a9),'WDYvb':'verified','kXuzR':_0x1b10e1(0x1dd),'PYoFy':function(_0x33ac90,_0x218a00){return _0x33ac90===_0x218a00;},'eAmul':'approved','TBJmc':function(_0x1fbd2c,_0x548256){return _0x1fbd2c===_0x548256;}};console[_0x1b10e1(0x12d)]('\x0a'+_0x21116a[_0x1b10e1(0x131)]+'\x20('+_0x21116a['dashboardUrl']+')');_0x21116a['stats']&&console['log'](_0x1b10e1(0x1fb)+_0x46e164['bVwny'](getProgressDisplay,_0x21116a[_0x1b10e1(0x16b)]));_0x21116a['description']&&console[_0x1b10e1(0x12d)](_0x1b10e1(0x130)+_0x21116a[_0x1b10e1(0x175)]);_0x21116a[_0x1b10e1(0x19d)]&&console['log']('\x20\x20\x20Repository:\x20'+_0x21116a['gitRepoUrl']);_0x21116a['gitBranch']&&console[_0x1b10e1(0x12d)](_0x1b10e1(0x205)+_0x21116a[_0x1b10e1(0x1d9)]);console[_0x1b10e1(0x12d)](_0x1b10e1(0x18b)+new Date(_0x21116a[_0x1b10e1(0x19c)])[_0x1b10e1(0x162)]());_0x21116a[_0x1b10e1(0x147)]&&console[_0x1b10e1(0x12d)]('\x20\x20\x20Completed:\x20'+new Date(_0x21116a[_0x1b10e1(0x147)])[_0x1b10e1(0x162)]());if(_0x54347d&&_0x46e164[_0x1b10e1(0x12c)](_0x54347d['length'],0x0)){console[_0x1b10e1(0x12d)](_0x46e164['AnWFR']);for(let _0x127239=0x0;_0x46e164['AxCJM'](_0x127239,_0x54347d[_0x1b10e1(0x16c)]);_0x127239++){const _0x4bd1da=_0x54347d[_0x127239];let _0x1aa299;if(_0x46e164[_0x1b10e1(0x146)](_0x4bd1da['status'],'closed')&&_0x46e164[_0x1b10e1(0x1b1)](_0x4bd1da['terminalReason'],'approved'))_0x1aa299='✅';else{if(_0x46e164[_0x1b10e1(0x1b1)](_0x4bd1da[_0x1b10e1(0x18c)],_0x1b10e1(0x1ce)))_0x1aa299='🟢';else{if(_0x46e164[_0x1b10e1(0x146)](_0x4bd1da[_0x1b10e1(0x18c)],_0x46e164['iXnvA']))_0x1aa299='🟠';else{if(_0x4bd1da['status']===_0x46e164['uFHDv'])_0x1aa299='🛑';else{if(_0x46e164[_0x1b10e1(0x1b2)](_0x4bd1da['status'],_0x1b10e1(0x1a9)))_0x1aa299='⛔';else _0x4bd1da['status']===_0x46e164[_0x1b10e1(0x126)]?_0x1aa299='⏳':_0x1aa299='⬜';}}}}const _0x2afd10=_0x46e164[_0x1b10e1(0x12c)](_0x4bd1da[_0x1b10e1(0x1c7)],0x1)?'\x20(v'+_0x4bd1da[_0x1b10e1(0x1c7)]+')':'',_0x2fdde4=_0x46e164['nvPlZ'](_0x4bd1da['version'],0x1)&&_0x4bd1da[_0x1b10e1(0x1eb)]&&_0x46e164[_0x1b10e1(0x1f4)](_0x4bd1da['status'],_0x46e164[_0x1b10e1(0x1fa)])&&_0x4bd1da['status']!==_0x46e164[_0x1b10e1(0x13a)]?_0x46e164[_0x1b10e1(0x1ff)]:'';console['log']('\x20\x20\x20'+(_0x127239+0x1)+'.\x20'+_0x1aa299+'\x20'+_0x4bd1da[_0x1b10e1(0x175)]+_0x2afd10+_0x2fdde4);_0x46e164['aSuQa'](_0x4bd1da[_0x1b10e1(0x18c)],_0x46e164['uFHDv'])&&_0x4bd1da[_0x1b10e1(0x16d)]&&console['log']('\x20\x20\x20\x20\x20\x20Blocked:\x20'+_0x4bd1da[_0x1b10e1(0x16d)]);_0x46e164['PYoFy'](_0x4bd1da[_0x1b10e1(0x18c)],_0x46e164[_0x1b10e1(0x1ec)])&&_0x4bd1da[_0x1b10e1(0x1fc)]&&console['log'](_0x1b10e1(0x179)+_0x4bd1da['incompleteReason']);if(_0x4bd1da[_0x1b10e1(0x18c)]===_0x46e164['HUsxt']&&_0x4bd1da['terminalReason']===_0x46e164[_0x1b10e1(0x203)])console['log'](_0x1b10e1(0x1d8));else _0x46e164[_0x1b10e1(0x1f1)](_0x4bd1da['status'],'closed')&&_0x4bd1da['canceledReason']&&console['log'](_0x1b10e1(0x122)+_0x4bd1da['canceledReason']);}}}export async function featureCreate(_0x411374,_0x278fec){const _0x2d274b=_0xfecff9,_0x4b077a={'yAMEB':function(_0x2ddd5b){return _0x2ddd5b();},'riCCi':'\x0aCreating\x20feature\x20review...','aEQex':function(_0x11c3fb,_0x3ce4e0){return _0x11c3fb(_0x3ce4e0);},'vHXIA':function(_0x12f382,_0x2b74aa){return _0x12f382(_0x2b74aa);},'NxcuC':function(_0x307606,_0x4d96e5,_0x4a33c5){return _0x307606(_0x4d96e5,_0x4a33c5);}},{envNames:_0x5de7a3}=await _0x4b077a['yAMEB'](getEnvNames);_0x5de7a3['length']===0x0&&console['warn']('\x0a'+formatProfileRequiredMessage(_0x2d466a=>bold(_0x2d466a)));const _0xd3413b=_0x278fec['scenarios']?_0x278fec['scenarios'][_0x2d274b(0x164)](_0x169bd9=>_0x169bd9['trim']()):[],_0x546ea3=_0x4b077a[_0x2d274b(0x12e)](getGitRepoUrl),_0x2d5d78=getGitBranch();console['log'](_0x4b077a[_0x2d274b(0x150)]);const _0x25477d=await _0x4b077a[_0x2d274b(0x1d2)](createFeature,{'name':_0x411374,'description':_0x278fec[_0x2d274b(0x175)],'checklist':_0xd3413b,'gitRepoUrl':_0x546ea3,'gitBranch':_0x2d5d78});await _0x4b077a['vHXIA'](setActiveFeatureId,_0x25477d['id']),await _0x4b077a[_0x2d274b(0x1d2)](tryStartCurrentSession,_0x25477d['id']);const _0x502f4a=process['env']['CLAUDE_SESSION_ID'];_0x502f4a&&registerSession(_0x502f4a,_0x25477d['id']),console['log'](_0x2d274b(0x135)+_0x25477d['id']),_0x4b077a[_0x2d274b(0x1b3)](displayFeature,_0x25477d,_0x25477d['checklistItems']),console['log'](_0x2d274b(0x133));}export async function featureList(_0x55dadb){const _0x53ee21=_0xfecff9,_0xc1fad8={'MXdYc':_0x53ee21(0x197),'XkTTZ':function(_0x247c72,_0x43e137){return _0x247c72>_0x43e137;},'brkgU':'4|2|0|1|3|5','GYrBH':function(_0x22568b,_0x2d1414){return _0x22568b(_0x2d1414);},'mfDvp':function(_0x280cd0,_0x176c8a){return _0x280cd0+_0x176c8a;},'boLEp':function(_0x54cb5c,_0x22a734){return _0x54cb5c<_0x22a734;},'sADkg':'\x20--current-branch','PcFxH':_0x53ee21(0x137)},_0x534727={'limit':_0x55dadb['limit']??0xa,'offset':_0x55dadb[_0x53ee21(0x1df)]??0x0,'includeDeleted':_0x55dadb['includeDeleted']};_0x55dadb['currentBranch']&&(_0x534727['gitRepoUrl']=getGitRepoUrl(),_0x534727['gitBranch']=getGitBranch());const _0x2b9057=await listFeatures(_0x534727);if(_0x2b9057[_0x53ee21(0x1a8)]['length']===0x0){console[_0x53ee21(0x12d)](_0xc1fad8[_0x53ee21(0x1e2)]);return;}const _0x3f4eb7=_0xc1fad8['XkTTZ'](_0x2b9057['totalCount'],_0x2b9057[_0x53ee21(0x1a8)][_0x53ee21(0x16c)])?'Showing\x20'+_0x2b9057[_0x53ee21(0x1a8)][_0x53ee21(0x16c)]+'\x20of\x20'+_0x2b9057[_0x53ee21(0x140)]:_0x2b9057[_0x53ee21(0x140)]+'\x20feature\x20review(s)\x20found';console[_0x53ee21(0x12d)]('\x0a'+_0x3f4eb7+':\x0a');for(const _0x114987 of _0x2b9057[_0x53ee21(0x1a8)]){const _0x2bb81c=_0xc1fad8['brkgU']['split']('|');let _0x166dbc=0x0;while(!![]){switch(_0x2bb81c[_0x166dbc++]){case'0':_0x114987[_0x53ee21(0x16b)]&&console[_0x53ee21(0x12d)](_0x53ee21(0x1fb)+_0xc1fad8[_0x53ee21(0x174)](getProgressDisplay,_0x114987['stats']));continue;case'1':_0x114987['gitBranch']&&console['log'](_0x53ee21(0x205)+_0x114987[_0x53ee21(0x1d9)]);continue;case'2':console['log'](_0x53ee21(0x207)+_0x114987['id']);continue;case'3':console[_0x53ee21(0x12d)](_0x53ee21(0x18b)+new Date(_0x114987[_0x53ee21(0x19c)])['toLocaleDateString']());continue;case'4':console[_0x53ee21(0x12d)](''+_0x114987[_0x53ee21(0x131)]);continue;case'5':console['log']('');continue;}break;}}const _0x27b064=_0x534727[_0x53ee21(0x1e4)]??0xa,_0x21c1cc=_0xc1fad8[_0x53ee21(0x1d0)](_0x534727['offset']??0x0,_0x2b9057[_0x53ee21(0x1a8)][_0x53ee21(0x16c)]);if(_0xc1fad8[_0x53ee21(0x160)](_0x21c1cc,_0x2b9057['totalCount'])){const _0x42b07d=_0x27b064!==0xa?'\x20--limit\x20'+_0x27b064:'',_0x2969d1=_0x55dadb['currentBranch']?_0xc1fad8[_0x53ee21(0x184)]:'',_0x3d21d0=_0x55dadb[_0x53ee21(0x176)]?_0xc1fad8['PcFxH']:'';console[_0x53ee21(0x12d)]('Next\x20page:\x20ranger\x20list\x20--offset\x20'+_0x21c1cc+_0x42b07d+_0x2969d1+_0x3d21d0);}}export async function featureShow(_0x165b28){const _0x5aed6c=_0xfecff9,_0x27b55a=_0x165b28||await getActiveFeatureId();if(!_0x27b55a)throw new Error(_0x5aed6c(0x1c5));const _0xf6e43f=await getFeature(_0x27b55a);displayFeature(_0xf6e43f,_0xf6e43f['checklistItems']);}export async function featureResume(_0x5a64cc){const _0xdaeed5=_0xfecff9,_0x197d18={'snlUw':function(_0x4946c1,_0x2ae0d0){return _0x4946c1(_0x2ae0d0);},'AszvJ':function(_0x6dcb90){return _0x6dcb90();},'nIiVZ':function(_0x1b583f,_0x304379){return _0x1b583f!==_0x304379;},'iocnr':function(_0x785596,_0x2ec7c4,_0x777b95){return _0x785596(_0x2ec7c4,_0x777b95);},'qLhxC':function(_0x403f6f,_0x486f06){return _0x403f6f(_0x486f06);},'UMlzO':function(_0x4e2fcf,_0x4fdfb7){return _0x4e2fcf&&_0x4fdfb7;},'ehGEz':_0xdaeed5(0x1d1),'qKTRH':_0xdaeed5(0x154),'dPvXb':_0xdaeed5(0x16f),'WsdkH':'selected','KOyaU':function(_0x16085f,_0x1e5a36){return _0x16085f(_0x1e5a36);},'WyWwW':function(_0x48a1e3,_0xc4eca5){return _0x48a1e3!==_0xc4eca5;},'pQFJR':function(_0xb69e73,_0x328df9,_0x1f88f5){return _0xb69e73(_0x328df9,_0x1f88f5);},'vBwJc':function(_0x3ed818,_0x1a0c6b,_0x2ba47a){return _0x3ed818(_0x1a0c6b,_0x2ba47a);}};if(_0x5a64cc){const _0x235308=await _0x197d18[_0xdaeed5(0x13e)](getFeature,_0x5a64cc);await setActiveFeatureId(_0x235308['id']);const _0x14c311=_0x197d18[_0xdaeed5(0x180)](getGitBranch);_0x14c311&&_0x197d18['nIiVZ'](_0x14c311,_0x235308['gitBranch'])&&(await _0x197d18['iocnr'](updateFeature,_0x235308['id'],{'gitBranch':_0x14c311}),console[_0xdaeed5(0x12d)](_0xdaeed5(0x144)+_0x14c311));console[_0xdaeed5(0x12d)](_0xdaeed5(0x14d)+_0x235308[_0xdaeed5(0x131)]+'\x20('+_0x235308['id']+')'),await _0x197d18[_0xdaeed5(0x194)](tryStartCurrentSession,_0x235308['id']);const _0x58ab9d=process['env']['CLAUDE_SESSION_ID'];_0x58ab9d&&_0x197d18['iocnr'](registerSession,_0x58ab9d,_0x235308['id']);displayFeature(_0x235308,_0x235308['checklistItems']),await _0x197d18[_0xdaeed5(0x194)](printFeedbackNudge,_0x235308['id']);return;}const _0x4deaef=_0x197d18['AszvJ'](getGitRepoUrl),_0x310123=getGitBranch();if(_0x197d18['UMlzO'](!_0x4deaef,!_0x310123))throw new Error(_0x197d18[_0xdaeed5(0x1e8)]);console['log']('\x0aSearching\x20for\x20feature\x20reviews\x20matching:\x20'+(_0x4deaef||_0xdaeed5(0x134))+_0xdaeed5(0x19e)+(_0x310123||_0xdaeed5(0x134))+_0xdaeed5(0x13d));const _0x308281=await _0x197d18[_0xdaeed5(0x194)](listFeatures,{'gitRepoUrl':_0x4deaef,'gitBranch':_0x310123}),_0x46e0b2=_0x308281[_0xdaeed5(0x1a8)][_0xdaeed5(0x13c)](_0x5c3783=>!_0x5c3783[_0xdaeed5(0x147)]);if(_0x46e0b2[_0xdaeed5(0x16c)]===0x0){console['log']('\x0aNo\x20matching\x20active\x20feature\x20reviews\x20found.'),console['log'](_0xdaeed5(0x1e5));return;}let _0x2ff471;if(_0x46e0b2['length']===0x1)_0x2ff471=_0x46e0b2[0x0];else{const _0x119148=process[_0xdaeed5(0x18f)][_0xdaeed5(0x1ad)]&&process[_0xdaeed5(0x12a)]['isTTY'];if(!_0x119148){console[_0xdaeed5(0x12d)](_0x197d18['qKTRH']);for(const _0x123f71 of _0x46e0b2){console[_0xdaeed5(0x12d)]('\x20\x20'+_0x123f71['name']),console[_0xdaeed5(0x12d)]('\x20\x20\x20\x20\x20ID:\x20'+_0x123f71['id']),_0x123f71['stats']&&console[_0xdaeed5(0x12d)](_0xdaeed5(0x183)+getProgressDisplay(_0x123f71[_0xdaeed5(0x16b)])),_0x123f71['gitBranch']&&console[_0xdaeed5(0x12d)]('\x20\x20\x20\x20\x20Branch:\x20'+_0x123f71['gitBranch']);}throw new Error(_0x197d18[_0xdaeed5(0x1d3)]);}const {selected:_0x5add57}=await _0x48efea[_0xdaeed5(0x141)]([{'type':'list','name':_0x197d18[_0xdaeed5(0x171)],'message':'Multiple\x20feature\x20reviews\x20found.\x20Select\x20one:','choices':_0x46e0b2[_0xdaeed5(0x164)](_0x505ffe=>({'name':_0x505ffe[_0xdaeed5(0x131)]+'\x20('+_0x505ffe['id']+')','value':_0x505ffe['id']}))}]);_0x2ff471=_0x46e0b2['find'](_0x33a5e5=>_0x33a5e5['id']===_0x5add57);}await _0x197d18[_0xdaeed5(0x1ac)](setActiveFeatureId,_0x2ff471['id']);_0x310123&&_0x197d18[_0xdaeed5(0x1f0)](_0x310123,_0x2ff471[_0xdaeed5(0x1d9)])&&(await _0x197d18['iocnr'](updateFeature,_0x2ff471['id'],{'gitBranch':_0x310123}),console[_0xdaeed5(0x12d)]('\x20\x20\x20Updated\x20branch\x20to:\x20'+_0x310123));console['log'](_0xdaeed5(0x14d)+_0x2ff471['name']+'\x20('+_0x2ff471['id']+')'),await tryStartCurrentSession(_0x2ff471['id']);const _0x5ebc0f=await _0x197d18[_0xdaeed5(0x194)](getFeature,_0x2ff471['id']),_0x5b3aee=process[_0xdaeed5(0x185)][_0xdaeed5(0x138)];_0x5b3aee&&_0x197d18['pQFJR'](registerSession,_0x5b3aee,_0x5ebc0f['id']),_0x197d18[_0xdaeed5(0x1ee)](displayFeature,_0x5ebc0f,_0x5ebc0f['checklistItems']),await printFeedbackNudge(_0x5ebc0f['id']);}async function printFeedbackNudge(_0x308d95){const _0x4787fb=_0xfecff9,_0x21d88f={'OZSFq':function(_0x2bd101,_0x1f3b97){return _0x2bd101>_0x1f3b97;},'UFpua':_0x4787fb(0x1dc)};try{const {items:_0x40fe1b}=await getActionItems(_0x308d95);let _0x63ea27=0x0,_0x473ce9=0x0;for(const _0x164dcb of _0x40fe1b){const _0x5c898c=await getItemFeedback(_0x308d95,_0x164dcb['id']);_0x21d88f[_0x4787fb(0x17b)](_0x5c898c['unaddressedComments'][_0x4787fb(0x16c)],0x0)&&(_0x63ea27+=_0x5c898c['unaddressedComments']['length'],_0x473ce9++);}_0x21d88f['OZSFq'](_0x63ea27,0x0)&&(console[_0x4787fb(0x12d)]('\x0a⚠️\x20\x20'+_0x63ea27+'\x20unaddressed\x20reviewer\x20comment(s)\x20across\x20'+_0x473ce9+_0x4787fb(0x1ed)),console['log'](_0x21d88f['UFpua']));}catch{}}async function tryStartCurrentSession(_0x47a35b){const _0x5873ae=_0xfecff9,_0x4c3a5a={'qIixI':function(_0x132300,_0x560f82){return _0x132300(_0x560f82);}};try{const {sessions:_0x483e06}=await _0x4c3a5a[_0x5873ae(0x195)](listFeatureSessions,_0x47a35b),_0x27fd85=_0x483e06[_0x5873ae(0x148)](_0x103189=>_0x103189[_0x5873ae(0x18c)]===_0x5873ae(0x1bb));_0x27fd85&&(await startSession(_0x47a35b,_0x27fd85['id']),console['log'](_0x5873ae(0x17f)+_0x27fd85[_0x5873ae(0x1da)]));}catch{}}export async function featureReport(_0x19e756,_0x3a8610){const _0x52e0c1=_0xfecff9,_0x5966f9={'OeRTo':function(_0x115571){return _0x115571();},'JFxXF':_0x52e0c1(0x196),'YnULN':function(_0x37ec8d,_0x1afcaa,_0x58305b){return _0x37ec8d(_0x1afcaa,_0x58305b);},'sXEXs':_0x52e0c1(0x129),'QrZtF':function(_0x5c0b47,_0x3399bd,_0x3a5dcc){return _0x5c0b47(_0x3399bd,_0x3a5dcc);},'ZuiJV':function(_0x5b198d,_0x58c672){return _0x5b198d(_0x58c672);},'pTBny':function(_0x412e29,_0x162f6d,_0x26b5e5){return _0x412e29(_0x162f6d,_0x26b5e5);},'YBOQv':function(_0x22fa6a,_0xa71be4,_0x208cd8,_0x25fc4f){return _0x22fa6a(_0xa71be4,_0x208cd8,_0x25fc4f);},'wlxTU':'utf-8'},_0x37a4f1=_0x19e756||await _0x5966f9['OeRTo'](getActiveFeatureId);if(!_0x37a4f1)throw new Error('No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.');console[_0x52e0c1(0x12d)](_0x5966f9['JFxXF']);const _0x15569e=await _0x5966f9['YnULN'](getFeatureReportMarkdown,_0x37a4f1,{'style':_0x3a8610['style']}),_0x563dd0=_0x3a8610[_0x52e0c1(0x157)]||join(getRangerDir(),_0x5966f9[_0x52e0c1(0x123)],_0x37a4f1+'.md'),_0x3119ba=_0x5966f9[_0x52e0c1(0x15f)](join,_0x563dd0,'..');!_0x5966f9[_0x52e0c1(0x1f3)](existsSync,_0x3119ba)&&await _0x5966f9['pTBny'](mkdir,_0x3119ba,{'recursive':!![]}),await _0x5966f9[_0x52e0c1(0x15a)](writeFile,_0x563dd0,_0x15569e,_0x5966f9[_0x52e0c1(0x200)]),console['log'](_0x52e0c1(0x156)+_0x563dd0);}function getScenarioResult(_0x4b9877){const _0x58886a=_0xfecff9,_0x410f4a={'zQAtR':function(_0x231298,_0x2c08b5){return _0x231298===_0x2c08b5;},'gMmOC':_0x58886a(0x1a9)};if(_0x410f4a[_0x58886a(0x181)](_0x4b9877[_0x58886a(0x18c)],_0x410f4a['gMmOC']))return _0x4b9877['terminalReason']??_0x410f4a[_0x58886a(0x163)];if(_0x410f4a[_0x58886a(0x181)](_0x4b9877[_0x58886a(0x18c)],'verification_in_progress'))return _0x58886a(0x1ef);return _0x4b9877['status'];}function getScenarioRationale(_0x1fe900,_0x20b367){const _0x103edb=_0xfecff9,_0x426344={'LRvmJ':_0x103edb(0x14f)},_0x4556af=_0x426344[_0x103edb(0x136)]['split']('|');let _0x328467=0x0;while(!![]){switch(_0x4556af[_0x328467++]){case'0':if(_0x1fe900[_0x103edb(0x1fc)])return _0x1fe900['incompleteReason'];continue;case'1':return null;case'2':if(_0x20b367)return _0x20b367;continue;case'3':if(_0x1fe900['notes'])return _0x1fe900[_0x103edb(0x17d)];continue;case'4':if(_0x1fe900[_0x103edb(0x16d)])return _0x1fe900[_0x103edb(0x16d)];continue;case'5':if(_0x1fe900[_0x103edb(0x14c)])return _0x1fe900[_0x103edb(0x14c)];continue;}break;}}export async function featureReportPrDescription(_0x286a05,_0x74478d){const _0x125df3=_0xfecff9,_0x39f540={'qzQug':function(_0x5a79e5){return _0x5a79e5();},'JKwKI':'No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.','ivbdi':function(_0x3d33ab,_0x4d4d41){return _0x3d33ab(_0x4d4d41);},'hqHpb':function(_0x3f02d5,_0x562b95,_0xb1da0c){return _0x3f02d5(_0x562b95,_0xb1da0c);},'hnFJb':function(_0x27b219,_0x2d3309){return _0x27b219>_0x2d3309;},'rabnj':function(_0xaab09,_0x3bf1eb){return _0xaab09+_0x3bf1eb;},'epoew':function(_0x380887,_0xdddedd){return _0x380887===_0xdddedd;}},_0x11346c=_0x286a05||await _0x39f540[_0x125df3(0x152)](getActiveFeatureId);if(!_0x11346c)throw new Error(_0x39f540[_0x125df3(0x182)]);const _0x52dcba=await _0x39f540['ivbdi'](getFeature,_0x11346c),_0x13e79c=_0x52dcba['checklistItems']||[],_0x40ef20=_0x39f540[_0x125df3(0x1fe)](getCurrentSessionItems,_0x52dcba,_0x13e79c);_0x40ef20['length']===0x0&&(console[_0x125df3(0x1d4)](_0x125df3(0x14a)),process['exit'](0x1));const _0x3f2e96=_0x74478d['excludeScenarios']??[],_0x42ee21=_0x3f2e96[_0x125df3(0x13c)](_0x2d9114=>!Number[_0x125df3(0x1bf)](_0x2d9114)||_0x2d9114<0x1||_0x2d9114>_0x40ef20[_0x125df3(0x16c)]);if(_0x39f540[_0x125df3(0x1db)](_0x42ee21['length'],0x0)){console['error']('\x0a❌\x20Invalid\x20scenario\x20number(s):\x20'+_0x42ee21[_0x125df3(0x18a)](',\x20')),console[_0x125df3(0x12d)](_0x125df3(0x1f2));for(let _0x5734a4=0x0;_0x5734a4<_0x40ef20['length'];_0x5734a4++){console[_0x125df3(0x12d)]('\x20\x20'+_0x39f540[_0x125df3(0x206)](_0x5734a4,0x1)+'.\x20'+_0x40ef20[_0x5734a4][_0x125df3(0x175)]);}process['exit'](0x1);}const _0x21696f=new Set(_0x3f2e96[_0x125df3(0x164)](_0x26039a=>_0x26039a-0x1)),_0x5893f6=_0x40ef20['filter']((_0x5028cd,_0x1ce7f5)=>!_0x21696f['has'](_0x1ce7f5));_0x39f540[_0x125df3(0x193)](_0x5893f6[_0x125df3(0x16c)],0x0)&&(console[_0x125df3(0x1d4)]('\x0a❌\x20All\x20scenarios\x20were\x20excluded.'),process[_0x125df3(0x1a7)](0x1));if(_0x74478d['json'])await outputJsonReport(_0x11346c,_0x52dcba,_0x5893f6);else{const _0x4423f2=await getFeatureReportMarkdown(_0x11346c,{'itemIds':_0x5893f6['map'](_0x4c14f9=>_0x4c14f9['id'])});process['stdout'][_0x125df3(0x1ba)](_0x4423f2['trimEnd']()+'\x0a');}}async function outputJsonReport(_0x237c91,_0x356580,_0x105202){const _0x445d87=_0xfecff9,_0x136628={'wrXxH':function(_0x12c3e7,_0x281499){return _0x12c3e7(_0x281499);}},_0x5eba6b=getApiBaseUrl(),_0x5d74d4=await _0x136628[_0x445d87(0x15e)](getFeatureReport,_0x237c91),_0x2cdee0=new Map(_0x5d74d4[_0x445d87(0x1b0)][_0x445d87(0x164)](_0x3b5641=>[_0x3b5641['id'],_0x3b5641])),_0x2ace54=await Promise[_0x445d87(0x1b5)](_0x105202[_0x445d87(0x164)](async _0x452024=>{const _0x564ea2=_0x445d87,_0x223373=_0x2cdee0[_0x564ea2(0x1a4)](_0x452024['id']),_0x556ccc=_0x223373?.[_0x564ea2(0x127)]??null;let _0x5c07ee=[];if(_0x452024[_0x564ea2(0x1c8)])try{const {steps:_0xdf6133}=await _0x136628[_0x564ea2(0x15e)](getBrowserSessionSteps,_0x452024[_0x564ea2(0x1c8)]);_0xdf6133[_0x564ea2(0x16c)]>0x0&&(_0x5c07ee=_0xdf6133['map'](_0x237e16=>{const _0x5ce189=_0x564ea2,_0x541e4e=_0x237e16['assets']['find'](_0x3a773a=>_0x3a773a[_0x5ce189(0x187)]===_0x5ce189(0x15c)&&_0x3a773a['timing']==='after')??_0x237e16['assets']['find'](_0x26066c=>_0x26066c[_0x5ce189(0x187)]===_0x5ce189(0x15c));let _0x2b0d02=null,_0x38a3f4=null;if(_0x541e4e){const _0x51c67e=_0x541e4e[_0x5ce189(0x1f6)][_0x5ce189(0x142)]['split']('/')['pop']();_0x2b0d02=_0x5eba6b+_0x5ce189(0x1e0)+_0x452024[_0x5ce189(0x1c8)]+'/artifacts/'+_0x51c67e,_0x51c67e&&(_0x38a3f4=_0x51c67e[_0x5ce189(0x1cd)](/\.\w+$/,'')[_0x5ce189(0x1cd)](/^(key_)?\d+_/,'')[_0x5ce189(0x1cd)](/[-_]/g,'\x20'));}return{'description':_0x38a3f4||_0x237e16['description']||_0x237e16[_0x5ce189(0x189)]||'Step\x20'+_0x237e16[_0x5ce189(0x1e9)],'screenshot':_0x2b0d02,'is_key_step':_0x237e16[_0x5ce189(0x1f7)]};}));}catch{}return _0x5c07ee[_0x564ea2(0x16c)]===0x0&&_0x556ccc?.[_0x564ea2(0x1d6)]&&(_0x5c07ee=_0x556ccc['screenshotUrls']['map']((_0x55f68f,_0x34eb40)=>({'description':_0x564ea2(0x16e)+(_0x34eb40+0x1),'screenshot':_0x55f68f,'is_key_step':![]}))),{'description':_0x452024['description'],'result':_0x136628[_0x564ea2(0x15e)](getScenarioResult,_0x452024),'rationale':getScenarioRationale(_0x452024,_0x556ccc?.['agentResponse']),'steps':_0x5c07ee};})),_0x48fb09={'url':_0x356580['dashboardUrl'],'scenarios':_0x2ace54};process['stdout']['write'](JSON[_0x445d87(0x1cf)](_0x48fb09,null,0x2)+'\x0a');}export async function featureConcludeSession(_0x22e38f){const _0x3bf2a7=_0xfecff9,_0x599357={'QWlec':function(_0x4b08be){return _0x4b08be();},'CEpqa':'No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','hEdfo':function(_0x537f1b,_0x42bac6){return _0x537f1b(_0x42bac6);},'BQIpE':'completed','wkGDM':_0x3bf2a7(0x1ef)},_0xca83cd=_0x22e38f||await _0x599357['QWlec'](getActiveFeatureId);if(!_0xca83cd)throw new Error(_0x599357[_0x3bf2a7(0x155)]);const _0x16c0a6=await getFeature(_0xca83cd);if(!_0x16c0a6['currentSessionId'])throw new Error('No\x20active\x20session\x20for\x20this\x20feature\x20review.');const {sessions:_0x184388}=await _0x599357[_0x3bf2a7(0x17e)](listFeatureSessions,_0xca83cd),_0xda3d36=_0x184388[_0x3bf2a7(0x148)](_0x235dde=>_0x235dde['id']===_0x16c0a6[_0x3bf2a7(0x1b6)]);if(!_0xda3d36)throw new Error('Current\x20session\x20not\x20found.');if(_0xda3d36['status']===_0x599357['BQIpE']){console['log'](_0x3bf2a7(0x1ab));return;}if(_0xda3d36[_0x3bf2a7(0x18c)]!==_0x599357['wkGDM'])throw new Error(_0x3bf2a7(0x1c2)+_0xda3d36[_0x3bf2a7(0x18c)]);console[_0x3bf2a7(0x12d)](_0x3bf2a7(0x168)),await concludeSession(_0xca83cd,_0x16c0a6[_0x3bf2a7(0x1b6)]),console['log'](_0x3bf2a7(0x1f8)+_0xda3d36[_0x3bf2a7(0x1da)]+'\x20concluded.'),console['log']('\x20\x20\x20The\x20feature\x20review\x20is\x20now\x20ready\x20for\x20human\x20review\x20on\x20the\x20Ranger\x20dashboard.');}export async function featureSessions(_0x4e17b1){const _0x567e3a=_0xfecff9,_0x1a4d84={'WlgEB':'No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.','lMPwB':function(_0x856501,_0x2aa9d3){return _0x856501===_0x2aa9d3;},'zHXen':'No\x20sessions\x20found.','VFkgV':'in_progress'},_0x324c8a=_0x4e17b1||await getActiveFeatureId();if(!_0x324c8a)throw new Error(_0x1a4d84['WlgEB']);const _0x3806ce=await getFeature(_0x324c8a);console['log']('\x0a📁\x20Sessions\x20for\x20feature\x20review:\x20'+_0x3806ce['name']+'\x0a');const {sessions:_0x22d4e5}=await listFeatureSessions(_0x324c8a);if(_0x1a4d84[_0x567e3a(0x1d7)](_0x22d4e5['length'],0x0)){console[_0x567e3a(0x12d)](_0x1a4d84['zHXen']);return;}for(const _0x3830ce of _0x22d4e5){const _0xef79c3=_0x1a4d84['lMPwB'](_0x3830ce[_0x567e3a(0x18c)],'completed')?'✅':_0x1a4d84[_0x567e3a(0x1d7)](_0x3830ce[_0x567e3a(0x18c)],_0x1a4d84[_0x567e3a(0x1c6)])?'🔄':'▶️';console[_0x567e3a(0x12d)](_0xef79c3+'\x20Session\x20'+_0x3830ce[_0x567e3a(0x1da)]+'\x20('+_0x3830ce['id']+')'),console['log'](_0x567e3a(0x1b8)+_0x3830ce['status']),console['log'](_0x567e3a(0x18b)+new Date(_0x3830ce['createdAt'])[_0x567e3a(0x162)]()),_0x3830ce[_0x567e3a(0x147)]&&console[_0x567e3a(0x12d)]('\x20\x20\x20Completed:\x20'+new Date(_0x3830ce['completedAt'])['toLocaleString']()),console[_0x567e3a(0x12d)]('');}}export async function featureAddScenario(_0x33811e,_0x4766f3){const _0x488cf5=_0xfecff9,_0x2247fc={'JjWHQ':function(_0x10b723){return _0x10b723();},'pPAGM':'No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','FxkvY':function(_0x4d52e8,_0x5e3a18,_0x27b2b9){return _0x4d52e8(_0x5e3a18,_0x27b2b9);},'AQnOw':function(_0xe16e6b,_0x577dc7){return _0xe16e6b(_0x577dc7);}},_0x4542da=_0x4766f3||await _0x2247fc[_0x488cf5(0x15b)](getActiveFeatureId);if(!_0x4542da)throw new Error(_0x2247fc['pPAGM']);const _0x4a43ce=await getFeature(_0x4542da);if(_0x4a43ce['latestReview']&&!_0x4a43ce[_0x488cf5(0x17a)]['submittedAt'])throw new Error(_0x488cf5(0x149)+_0x4a43ce[_0x488cf5(0x1ae)]);await _0x2247fc[_0x488cf5(0x1e7)](createChecklistItem,_0x4542da,_0x33811e);const _0x5285c0=await _0x2247fc['AQnOw'](getFeature,_0x4542da);console[_0x488cf5(0x12d)]('\x0a✅\x20Scenario\x20added'),_0x2247fc['FxkvY'](displayFeature,_0x5285c0,_0x5285c0['checklistItems']);}export async function featureEditScenario(_0x40db1d,_0x2dfff0){const _0x3a3302=_0xfecff9,_0x48134d={'DMTAp':function(_0x364588){return _0x364588();},'Gaqsy':'\x0a❌\x20No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.','eGMeF':_0x3a3302(0x1a6),'TpSGv':'\x0a❌\x20Cannot\x20edit\x20scenario:\x20feature\x20review\x20has\x20an\x20active\x20review.','sOOcs':'Please\x20finish\x20your\x20review\x20first:','GgBlX':function(_0x42d27a,_0x15cfd2){return _0x42d27a===_0x15cfd2;},'jrJLi':function(_0x31f556,_0x113d3c){return _0x31f556===_0x113d3c;},'jESpu':'\x0a❌\x20No\x20scenario\x20number\x20provided.\x20Use\x20--scenario\x20<number>.','tmJAh':function(_0x42ec01,_0x565177){return _0x42ec01+_0x565177;},'zeovD':function(_0xfe3954,_0x4be189){return _0xfe3954<_0x4be189;},'PJfNI':'\x0aAvailable\x20scenarios:','AqUTG':function(_0x539d04,_0x26b8cb){return _0x539d04(_0x26b8cb);},'IZqQo':function(_0x296b02,_0x32b92f,_0x3597a4){return _0x296b02(_0x32b92f,_0x3597a4);}},_0xe936ae=_0x2dfff0['id']||await _0x48134d['DMTAp'](getActiveFeatureId);!_0xe936ae&&(console['error'](_0x48134d['Gaqsy']),console[_0x3a3302(0x1d4)](_0x48134d[_0x3a3302(0x1de)]),process['exit'](0x1));const _0x34ec86=await getFeature(_0xe936ae);_0x34ec86[_0x3a3302(0x17a)]&&!_0x34ec86[_0x3a3302(0x17a)][_0x3a3302(0x1f9)]&&(console['error'](_0x48134d[_0x3a3302(0x208)]),console[_0x3a3302(0x1d4)](_0x48134d['sOOcs']),console[_0x3a3302(0x1d4)]('\x20\x20'+_0x34ec86['dashboardUrl']),process['exit'](0x1));const _0x30d3c0=_0x34ec86[_0x3a3302(0x1b0)]||[];_0x48134d['GgBlX'](_0x30d3c0['length'],0x0)&&(console['error'](_0x3a3302(0x1b4)),process[_0x3a3302(0x1a7)](0x1));if(_0x48134d[_0x3a3302(0x1af)](_0x2dfff0['scenario'],undefined)){console['error'](_0x48134d['jESpu']),console['log'](_0x3a3302(0x1f2));for(let _0x21d8bf=0x0;_0x21d8bf<_0x30d3c0['length'];_0x21d8bf++){console['log']('\x20\x20'+_0x48134d[_0x3a3302(0x19f)](_0x21d8bf,0x1)+'.\x20'+_0x30d3c0[_0x21d8bf][_0x3a3302(0x175)]);}process[_0x3a3302(0x1a7)](0x1);}const _0x130a6b=_0x2dfff0['scenario']-0x1;if(_0x48134d['zeovD'](_0x130a6b,0x0)||_0x130a6b>=_0x30d3c0[_0x3a3302(0x16c)]){console[_0x3a3302(0x1d4)]('\x0a❌\x20Invalid\x20scenario\x20index:\x20'+_0x2dfff0['scenario']+_0x3a3302(0x161)+_0x30d3c0['length']+_0x3a3302(0x178)),console[_0x3a3302(0x12d)](_0x48134d['PJfNI']);for(let _0x250f09=0x0;_0x48134d[_0x3a3302(0x15d)](_0x250f09,_0x30d3c0[_0x3a3302(0x16c)]);_0x250f09++){console[_0x3a3302(0x12d)]('\x20\x20'+(_0x250f09+0x1)+'.\x20'+_0x30d3c0[_0x250f09]['description']);}process['exit'](0x1);}const _0x2ef868=_0x30d3c0[_0x130a6b];await updateChecklistItem(_0xe936ae,_0x2ef868['id'],{'description':_0x40db1d});const _0x47068b=await _0x48134d['AqUTG'](getFeature,_0xe936ae);console['log']('\x0a✅\x20Scenario\x20updated'),_0x48134d[_0x3a3302(0x145)](displayFeature,_0x47068b,_0x47068b['checklistItems']);}async function downloadFeedbackImage(_0x38e4f6,_0x314f2c){const _0x47ae64=_0xfecff9,_0x199c73={'CqiAJ':function(_0x11ed54){return _0x11ed54();},'NrGpt':function(_0xf7879,_0x213708,_0xe0912){return _0xf7879(_0x213708,_0xe0912);},'eNNmm':function(_0x539168,_0x1b9b24,_0xdb2412){return _0x539168(_0x1b9b24,_0xdb2412);}};try{const _0x26065f=join(_0x199c73[_0x47ae64(0x159)](getRangerDir),_0x47ae64(0x173));await _0x199c73[_0x47ae64(0x1c0)](mkdir,_0x26065f,{'recursive':!![]});const _0x4b38d1=_0x199c73['NrGpt'](join,_0x26065f,_0x47ae64(0x13f)+_0x314f2c+'.png'),_0x440008=await fetch(_0x38e4f6);if(!_0x440008['ok'])return null;const _0x594a5d=Buffer['from'](await _0x440008['arrayBuffer']());return await _0x199c73['eNNmm'](writeFile,_0x4b38d1,_0x594a5d),_0x4b38d1;}catch{return null;}}export async function featureGetReview(_0x5f33cb){const _0x5bec95=_0xfecff9,_0xed7240={'KSBgd':_0x5bec95(0x1c5),'anFyw':function(_0x2a28c4,_0x23119d){return _0x2a28c4(_0x23119d);},'Jkvnk':function(_0x3161c2,_0x4f835f){return _0x3161c2===_0x4f835f;},'NOSTV':_0x5bec95(0x139),'VOfsA':function(_0x5de055,_0x40c419){return _0x5de055<_0x40c419;},'LNbgr':function(_0x19e782,_0x49e385){return _0x19e782>_0x49e385;},'VYTPz':_0x5bec95(0x198),'BbtqF':'short','oludh':'numeric','tDKue':_0x5bec95(0x199),'zVWFZ':_0x5bec95(0x1cc),'ZkqbG':_0x5bec95(0x1c4)},_0x1868d1=_0x5f33cb||await getActiveFeatureId();if(!_0x1868d1)throw new Error(_0xed7240[_0x5bec95(0x188)]);const _0x47d27f=await getFeature(_0x1868d1),{items:_0x470fbd}=await _0xed7240['anFyw'](getActionItems,_0x1868d1);console[_0x5bec95(0x12d)](_0x5bec95(0x124)+_0x47d27f[_0x5bec95(0x131)]+'\x20('+_0x47d27f['id']+')\x0a');if(_0xed7240[_0x5bec95(0x177)](_0x470fbd[_0x5bec95(0x16c)],0x0)){console['log'](_0xed7240[_0x5bec95(0x202)]);return;}for(let _0x585e07=0x0;_0xed7240['VOfsA'](_0x585e07,_0x470fbd[_0x5bec95(0x16c)]);_0x585e07++){const _0x34fa5a=_0x470fbd[_0x585e07],_0x421a8d=_0xed7240['LNbgr'](_0x34fa5a['version'],0x1)?'\x20(v'+_0x34fa5a['version']+')':'',_0x3e64f3=await getItemFeedback(_0x1868d1,_0x34fa5a['id']);if(_0x3e64f3['unaddressedComments']['length']>0x0){console[_0x5bec95(0x12d)]('Scenario\x20'+(_0x585e07+0x1)+':\x20\x22'+_0x34fa5a[_0x5bec95(0x175)]+'\x22'+_0x421a8d+'\x20—\x20'+_0x3e64f3['unaddressedComments'][_0x5bec95(0x16c)]+_0x5bec95(0x201));for(const _0x3fbaaf of _0x3e64f3['unaddressedComments']){const _0x358b9e=new Date(_0x3fbaaf['createdAt'])[_0x5bec95(0x204)](_0xed7240['VYTPz'],{'month':_0xed7240['BbtqF'],'day':_0xed7240['oludh']}),_0x17aefb=_0x3fbaaf['authorName']||_0x3fbaaf[_0x5bec95(0x125)]||_0xed7240['tDKue'];console['log']('\x20\x20💬\x20'+_0x17aefb+'\x20('+_0x358b9e+_0x5bec95(0x167)+_0x3fbaaf[_0x5bec95(0x128)]+'\x22');if(_0x3fbaaf[_0x5bec95(0x1b9)]){const _0x338a2f=await downloadFeedbackImage(_0x3fbaaf['assetUrl'],_0x3fbaaf['id']);_0x338a2f&&console[_0x5bec95(0x12d)](_0x5bec95(0x16a)+_0x338a2f);}if(_0x3fbaaf[_0x5bec95(0x1a2)]){const _0x111f5c=_0x3fbaaf[_0x5bec95(0x1a2)]['selector'][_0x5bec95(0x1f5)](_0xed7240['zVWFZ'])[_0x5bec95(0x1a3)]()?.['split'](':')[0x0]||'element',_0x40cc8e=_0x3fbaaf[_0x5bec95(0x1a2)][_0x5bec95(0x12b)]?'\x20\x22'+_0x3fbaaf['domRef'][_0x5bec95(0x12b)]['slice'](0x0,0x3c)+'\x22':'';console['log']('\x20\x20\x20\x20\x20🎯\x20Element:\x20<'+_0x111f5c+'>'+_0x40cc8e),console[_0x5bec95(0x12d)](_0x5bec95(0x18e)+_0x3fbaaf['domRef']['selector']);}else{if(_0x3fbaaf[_0x5bec95(0x121)]){const _0x4d2c7f=_0x3fbaaf[_0x5bec95(0x121)]['coordinates'];_0x3fbaaf[_0x5bec95(0x121)]['type']===_0xed7240['ZkqbG']&&_0x4d2c7f[_0x5bec95(0x16c)]>=0x2?console[_0x5bec95(0x12d)]('\x20\x20\x20\x20\x20📍\x20Annotation:\x20point\x20at\x20('+_0x4d2c7f[0x0]['toFixed'](0x2)+',\x20'+_0x4d2c7f[0x1][_0x5bec95(0x13b)](0x2)+')'):console[_0x5bec95(0x12d)]('\x20\x20\x20\x20\x20📍\x20Annotation:\x20'+_0x3fbaaf['spatial']['type']+_0x5bec95(0x1d5)+_0x4d2c7f[_0x5bec95(0x164)](_0x412ee5=>_0x412ee5['toFixed'](0x2))[_0x5bec95(0x18a)](',\x20')+']');}}}if(_0x3e64f3['canonicalFlow']){console[_0x5bec95(0x12d)]('\x20\x20Expected\x20flow:');for(const _0x5c0d17 of _0x3e64f3['canonicalFlow'][_0x5bec95(0x1f5)]('\x0a')){console['log']('\x20\x20\x20\x20'+_0x5c0d17);}}}else console[_0x5bec95(0x12d)](_0x5bec95(0x191)+(_0x585e07+0x1)+':\x20\x22'+_0x34fa5a[_0x5bec95(0x175)]+'\x22'+_0x421a8d+'\x20—\x20no\x20comments'),console['log']('\x20\x20✅\x20No\x20feedback\x20to\x20address');console[_0x5bec95(0x12d)]('');}}export async function featureDelete(_0x584e10){const _0x55b394=_0xfecff9,_0x39d6c5={'GdkRb':function(_0x3e1f40){return _0x3e1f40();},'DvDub':_0x55b394(0x1c5),'bOaEs':function(_0x23674d,_0x308df7){return _0x23674d(_0x308df7);}},_0x1ec67e=_0x584e10||await _0x39d6c5['GdkRb'](getActiveFeatureId);if(!_0x1ec67e)throw new Error(_0x39d6c5['DvDub']);const _0x9c4022=await _0x39d6c5[_0x55b394(0x1be)](getFeature,_0x1ec67e);await softDeleteFeature(_0x1ec67e),console['log'](_0x55b394(0x1c9)+_0x9c4022[_0x55b394(0x131)]+'\x20('+_0x1ec67e+')'),console[_0x55b394(0x12d)]('\x20\x20\x20To\x20restore\x20it,\x20run:\x20ranger\x20restore\x20'+_0x1ec67e);}export async function featureRestore(_0x5a439d){const _0x358170=_0xfecff9,_0x280a85={'AvnVT':function(_0x449937,_0x74f9cc,_0x3c702c){return _0x449937(_0x74f9cc,_0x3c702c);}};await restoreFeature(_0x5a439d);const _0x391037=await getFeature(_0x5a439d);console['log']('\x0a✅\x20Restored\x20feature\x20review:\x20'+_0x391037[_0x358170(0x131)]+'\x20('+_0x5a439d+')'),_0x280a85['AvnVT'](displayFeature,_0x391037,_0x391037['checklistItems']);}
1
+ (function(_0x4bed91,_0x574ca8){const _0x50c6af=_0x5c21,_0x2f1017=_0x4bed91();while(!![]){try{const _0x3557ed=parseInt(_0x50c6af(0x1db))/0x1+parseInt(_0x50c6af(0x23d))/0x2*(-parseInt(_0x50c6af(0x256))/0x3)+-parseInt(_0x50c6af(0x1c6))/0x4*(-parseInt(_0x50c6af(0x1b9))/0x5)+parseInt(_0x50c6af(0x1e9))/0x6*(parseInt(_0x50c6af(0x1cd))/0x7)+-parseInt(_0x50c6af(0x1dd))/0x8+parseInt(_0x50c6af(0x202))/0x9+-parseInt(_0x50c6af(0x1b8))/0xa;if(_0x3557ed===_0x574ca8)break;else _0x2f1017['push'](_0x2f1017['shift']());}catch(_0x3bb198){_0x2f1017['push'](_0x2f1017['shift']());}}}(_0x3ef3,0x8efe6));import{readFile,writeFile,mkdir}from'fs/promises';import{join}from'path';import{existsSync}from'fs';import{execSync}from'child_process';import _0x5f1fe5 from'inquirer';import{createFeature,listFeatures,getFeature,updateFeature,getFeatureReport,getFeatureReportMarkdown,listFeatureSessions,startSession,concludeSession,createChecklistItem,getActionItems,getItemFeedback,softDeleteFeature,restoreFeature,updateChecklistItem}from'./utils/featureApi.js';import{getBrowserSessionSteps}from'./utils/browserSessionsApi.js';import{getApiBaseUrl}from'./utils/environment.js';import{getRangerDir}from'./utils/rangerRoot.js';import{registerSession}from'./utils/sessionCache.js';import{getEnvNames}from'./env.js';import{formatProfileRequiredMessage}from'./utils/profileMessages.js';const ACTIVE_FEATURE_FILE='active-feature.txt',bold=_0x2a7fc3=>'\x1b[1m'+_0x2a7fc3+'\x1b[0m';function getGitRepoUrl(){const _0x22f50d=_0x5c21,_0xc47034={'YHDLc':function(_0x3f4a9a,_0x2b6b28,_0x3c5797){return _0x3f4a9a(_0x2b6b28,_0x3c5797);},'fyofK':'utf-8','NnrXe':'pipe'};try{const _0x29b737=_0xc47034[_0x22f50d(0x259)](execSync,_0x22f50d(0x250),{'encoding':_0xc47034[_0x22f50d(0x198)],'stdio':[_0xc47034[_0x22f50d(0x251)],'pipe',_0xc47034[_0x22f50d(0x251)]]})[_0x22f50d(0x189)]();return _0x29b737[_0x22f50d(0x245)](/\.git$/,'')['replace'](/^git@github\.com:/,_0x22f50d(0x21d))['replace'](/^https?:\/\//,'');}catch{return undefined;}}function getGitBranch(){const _0x5c3351=_0x5c21,_0x4c38f8={'tnPJE':'pipe'};try{return execSync(_0x5c3351(0x1fd),{'encoding':'utf-8','stdio':[_0x5c3351(0x212),_0x4c38f8[_0x5c3351(0x19f)],_0x4c38f8['tnPJE']]})['trim']();}catch{return undefined;}}export async function getActiveFeatureId(){const _0x4009a4=_0x5c21,_0x680eeb={'jUJHE':function(_0x1e13f8){return _0x1e13f8();},'RasPC':function(_0x523df0,_0x1170ad){return _0x523df0(_0x1170ad);},'xtjKf':function(_0x244540,_0x1cc75c,_0x24fb22){return _0x244540(_0x1cc75c,_0x24fb22);},'zrkFX':'utf-8'},_0x37a002=join(_0x680eeb['jUJHE'](getRangerDir),ACTIVE_FEATURE_FILE);if(!_0x680eeb[_0x4009a4(0x1de)](existsSync,_0x37a002))return null;try{const _0x5be2df=await _0x680eeb['xtjKf'](readFile,_0x37a002,_0x680eeb['zrkFX']);return _0x5be2df['trim']()||null;}catch{return null;}}async function setActiveFeatureId(_0x1784aa){const _0x372684=_0x5c21,_0x2d9cb8={'MwknI':function(_0x506834,_0x2b3d98,_0x266b86){return _0x506834(_0x2b3d98,_0x266b86);}},_0x12a588=getRangerDir(),_0x5e25d6=join(_0x12a588,ACTIVE_FEATURE_FILE);!existsSync(_0x12a588)&&await _0x2d9cb8['MwknI'](mkdir,_0x12a588,{'recursive':!![]}),await writeFile(_0x5e25d6,_0x1784aa,_0x372684(0x185));}function getProgressDisplay(_0x50e361){const _0xe03050=_0x5c21,_0x15e6cf={'Rmhst':function(_0x3d256c,_0x3003d6){return _0x3d256c+_0x3003d6;},'yWGIr':function(_0x205019,_0x2dcb71){return _0x205019-_0x2dcb71;},'htqap':function(_0x33820e,_0x3e6854){return _0x33820e>_0x3e6854;}},_0x1a1147=_0x50e361['verifiedItems']||0x0,_0xe2b5e7=_0x50e361['verificationInProgressItems']||0x0,_0x5a42e2=_0x50e361[_0xe03050(0x247)]||0x0,_0x358bad=_0x50e361[_0xe03050(0x22f)]||0x0,_0x5a92f1=_0x50e361['pendingItems']||0x0,_0x21bfaf=_0x15e6cf[_0xe03050(0x18f)](_0x1a1147+_0xe2b5e7,_0x5a42e2)+_0x358bad+_0x5a92f1;if(_0x21bfaf===0x0)return'-';const _0x57df75=0xa,_0xc793fa=Math['round'](_0x1a1147/_0x21bfaf*_0x57df75),_0x591c50=_0x15e6cf[_0xe03050(0x18f)]('█'['repeat'](_0xc793fa),'░'['repeat'](_0x15e6cf['yWGIr'](_0x57df75,_0xc793fa))),_0x267414=[];if(_0x5a42e2>0x0)_0x267414[_0xe03050(0x181)](_0x5a42e2+'\x20blocked');if(_0x358bad>0x0)_0x267414[_0xe03050(0x181)](_0x358bad+'\x20incomplete');if(_0xe2b5e7>0x0)_0x267414[_0xe03050(0x181)](_0xe2b5e7+'\x20in\x20progress');const _0x2702b2=_0x15e6cf['htqap'](_0x267414[_0xe03050(0x18c)],0x0)?'\x20('+_0x267414[_0xe03050(0x1af)](',\x20')+')':'';return _0x591c50+'\x20'+_0x1a1147+'/'+_0x21bfaf+'\x20verified'+_0x2702b2;}function getCurrentSessionItems(_0x50caa6,_0x30ed83){const _0x5511c2=_0x5c21;if(!_0x50caa6[_0x5511c2(0x228)])return _0x30ed83[_0x5511c2(0x1ab)](_0x1ac113=>!_0x1ac113['sessionId']);return _0x30ed83[_0x5511c2(0x1ab)](_0x357de2=>_0x357de2[_0x5511c2(0x1e8)]===_0x50caa6[_0x5511c2(0x228)]||!_0x357de2[_0x5511c2(0x1e8)]);}function displayFeature(_0x26fffd,_0x561510){const _0x4310b5=_0x5c21,_0x107924={'kTgkJ':function(_0x286223,_0x4f2216){return _0x286223(_0x4f2216);},'VTrgL':function(_0x49c2c9,_0x4fe158){return _0x49c2c9>_0x4fe158;},'pqJBw':_0x4310b5(0x21b),'YuvnZ':function(_0x2d12f8,_0xfb5fac){return _0x2d12f8===_0xfb5fac;},'EsTgd':function(_0x5c1812,_0x35ff6d){return _0x5c1812===_0x35ff6d;},'GtBnL':'verified','zgXqf':'blocked','OkABi':function(_0x218df5,_0x4e220a){return _0x218df5===_0x4e220a;},'RWghd':'verification_in_progress','kqMrz':function(_0xedc3e6,_0xa64e89){return _0xedc3e6+_0xa64e89;},'xfEbF':_0x4310b5(0x23b),'kJxGe':function(_0x1f6fda,_0x591eed){return _0x1f6fda===_0x591eed;},'qpdbB':_0x4310b5(0x206)};console[_0x4310b5(0x21e)]('\x0a'+_0x26fffd[_0x4310b5(0x21a)]+'\x20('+_0x26fffd[_0x4310b5(0x19d)]+')');_0x26fffd['stats']&&console['log'](_0x4310b5(0x21f)+_0x107924[_0x4310b5(0x227)](getProgressDisplay,_0x26fffd['stats']));_0x26fffd[_0x4310b5(0x246)]&&console['log']('\x20\x20\x20Description:\x20'+_0x26fffd[_0x4310b5(0x246)]);_0x26fffd['gitRepoUrl']&&console[_0x4310b5(0x21e)](_0x4310b5(0x1b4)+_0x26fffd[_0x4310b5(0x1fe)]);_0x26fffd[_0x4310b5(0x1e6)]&&console[_0x4310b5(0x21e)](_0x4310b5(0x191)+_0x26fffd[_0x4310b5(0x1e6)]);console['log']('\x20\x20\x20Created:\x20'+new Date(_0x26fffd['createdAt'])['toLocaleString']());_0x26fffd['completedAt']&&console[_0x4310b5(0x21e)]('\x20\x20\x20Completed:\x20'+new Date(_0x26fffd['completedAt'])[_0x4310b5(0x213)]());if(_0x561510&&_0x107924[_0x4310b5(0x1cf)](_0x561510['length'],0x0)){console['log'](_0x107924['pqJBw']);for(let _0x21b84c=0x0;_0x21b84c<_0x561510[_0x4310b5(0x18c)];_0x21b84c++){const _0x4309fe=_0x561510[_0x21b84c];let _0x3b8c5e;if(_0x107924[_0x4310b5(0x239)](_0x4309fe[_0x4310b5(0x249)],_0x4310b5(0x23b))&&_0x107924[_0x4310b5(0x1da)](_0x4309fe[_0x4310b5(0x195)],'approved'))_0x3b8c5e='✅';else{if(_0x107924[_0x4310b5(0x1da)](_0x4309fe['status'],_0x107924['GtBnL']))_0x3b8c5e='🟢';else{if(_0x4309fe[_0x4310b5(0x249)]===_0x4310b5(0x19e))_0x3b8c5e='🟠';else{if(_0x4309fe[_0x4310b5(0x249)]===_0x107924[_0x4310b5(0x25a)])_0x3b8c5e='🛑';else{if(_0x4309fe['status']===_0x4310b5(0x23b))_0x3b8c5e='⛔';else _0x107924['OkABi'](_0x4309fe['status'],_0x107924['RWghd'])?_0x3b8c5e='⏳':_0x3b8c5e='⬜';}}}}const _0x304692=_0x107924[_0x4310b5(0x1cf)](_0x4309fe[_0x4310b5(0x17f)],0x1)?_0x4310b5(0x24d)+_0x4309fe['version']+')':'',_0x39d8e9=_0x107924[_0x4310b5(0x1cf)](_0x4309fe[_0x4310b5(0x17f)],0x1)&&_0x4309fe[_0x4310b5(0x1a4)]&&_0x4309fe[_0x4310b5(0x249)]!==_0x4310b5(0x23b)&&_0x4309fe['status']!=='verified'?_0x4310b5(0x1cb):'';console[_0x4310b5(0x21e)]('\x20\x20\x20'+_0x107924['kqMrz'](_0x21b84c,0x1)+'.\x20'+_0x3b8c5e+'\x20'+_0x4309fe[_0x4310b5(0x246)]+_0x304692+_0x39d8e9);_0x4309fe['status']===_0x107924[_0x4310b5(0x25a)]&&_0x4309fe['blockedReason']&&console['log'](_0x4310b5(0x241)+_0x4309fe[_0x4310b5(0x216)]);_0x4309fe['status']==='incomplete'&&_0x4309fe[_0x4310b5(0x1bf)]&&console['log'](_0x4310b5(0x1e7)+_0x4309fe[_0x4310b5(0x1bf)]);if(_0x107924[_0x4310b5(0x1da)](_0x4309fe[_0x4310b5(0x249)],_0x107924[_0x4310b5(0x255)])&&_0x107924['kJxGe'](_0x4309fe['terminalReason'],_0x107924[_0x4310b5(0x192)]))console['log']('\x20\x20\x20\x20\x20\x20Approved');else _0x107924['EsTgd'](_0x4309fe[_0x4310b5(0x249)],'closed')&&_0x4309fe[_0x4310b5(0x254)]&&console['log'](_0x4310b5(0x20c)+_0x4309fe['canceledReason']);}}}export async function featureCreate(_0x568f64,_0x3e4b43){const _0x3cecd1=_0x5c21,_0x34b2b0={'GUYiJ':function(_0x2090b3){return _0x2090b3();},'dOiUX':function(_0x41c306,_0x26ae12){return _0x41c306===_0x26ae12;},'APKGI':_0x3cecd1(0x238),'AIwtS':function(_0x52c8dd,_0x43da31){return _0x52c8dd(_0x43da31);},'fnqAK':function(_0x4dd8f5,_0x2eb109,_0x4b14d8){return _0x4dd8f5(_0x2eb109,_0x4b14d8);}},{envNames:_0x39b957}=await _0x34b2b0['GUYiJ'](getEnvNames);_0x34b2b0['dOiUX'](_0x39b957['length'],0x0)&&console['warn']('\x0a'+formatProfileRequiredMessage(_0x5011e5=>bold(_0x5011e5)));const _0x335ef2=_0x3e4b43[_0x3cecd1(0x1a0)]?_0x3e4b43['scenarios'][_0x3cecd1(0x1ad)](_0x611b04=>_0x611b04[_0x3cecd1(0x189)]()):[],_0x46d12b=getGitRepoUrl(),_0x501c6c=getGitBranch();console[_0x3cecd1(0x21e)](_0x34b2b0['APKGI']);const _0x3d9170=await _0x34b2b0[_0x3cecd1(0x190)](createFeature,{'name':_0x568f64,'description':_0x3e4b43['description'],'checklist':_0x335ef2,'gitRepoUrl':_0x46d12b,'gitBranch':_0x501c6c});await setActiveFeatureId(_0x3d9170['id']),await tryStartCurrentSession(_0x3d9170['id']);const _0x342315=process['env'][_0x3cecd1(0x1ef)];_0x342315&&registerSession(_0x342315,_0x3d9170['id']),console[_0x3cecd1(0x21e)]('\x0a✅\x20Feature\x20review\x20created:\x20'+_0x3d9170['id']),_0x34b2b0[_0x3cecd1(0x242)](displayFeature,_0x3d9170,_0x3d9170['checklistItems']),console['log'](_0x3cecd1(0x252));}export async function featureList(_0x116d62){const _0x137e03=_0x5c21,_0x4a4eb6={'ZDeXq':function(_0x586874){return _0x586874();},'gOQBa':function(_0x25ca8a,_0x4d293e){return _0x25ca8a(_0x4d293e);},'TNYOb':function(_0x39170c,_0x468935){return _0x39170c+_0x468935;},'rjJgt':function(_0x2e1f39,_0xc321aa){return _0x2e1f39!==_0xc321aa;}},_0x1cd544={'limit':_0x116d62[_0x137e03(0x1b7)]??0xa,'offset':_0x116d62[_0x137e03(0x226)]??0x0,'includeDeleted':_0x116d62['includeDeleted']};_0x116d62[_0x137e03(0x1bb)]&&(_0x1cd544['gitRepoUrl']=_0x4a4eb6[_0x137e03(0x22c)](getGitRepoUrl),_0x1cd544[_0x137e03(0x1e6)]=getGitBranch());const _0x3c99c6=await _0x4a4eb6[_0x137e03(0x24a)](listFeatures,_0x1cd544);if(_0x3c99c6['items'][_0x137e03(0x18c)]===0x0){console[_0x137e03(0x21e)]('\x0aNo\x20feature\x20reviews\x20found.');return;}const _0x4f8087=_0x3c99c6[_0x137e03(0x205)]>_0x3c99c6['items'][_0x137e03(0x18c)]?'Showing\x20'+_0x3c99c6['items']['length']+_0x137e03(0x1f2)+_0x3c99c6['totalCount']:_0x3c99c6['totalCount']+'\x20feature\x20review(s)\x20found';console['log']('\x0a'+_0x4f8087+':\x0a');for(const _0x267ac0 of _0x3c99c6[_0x137e03(0x19b)]){const _0x1c5e0a='3|4|2|1|0|5'[_0x137e03(0x1fa)]('|');let _0x3c9da0=0x0;while(!![]){switch(_0x1c5e0a[_0x3c9da0++]){case'0':console[_0x137e03(0x21e)]('\x20\x20\x20Created:\x20'+new Date(_0x267ac0['createdAt'])['toLocaleDateString']());continue;case'1':_0x267ac0[_0x137e03(0x1e6)]&&console['log']('\x20\x20\x20Branch:\x20'+_0x267ac0['gitBranch']);continue;case'2':_0x267ac0['stats']&&console['log'](_0x137e03(0x21f)+getProgressDisplay(_0x267ac0[_0x137e03(0x1b5)]));continue;case'3':console['log'](''+_0x267ac0[_0x137e03(0x21a)]);continue;case'4':console['log'](_0x137e03(0x1ec)+_0x267ac0['id']);continue;case'5':console['log']('');continue;}break;}}const _0xddb8ae=_0x1cd544[_0x137e03(0x1b7)]??0xa,_0x364f59=_0x4a4eb6[_0x137e03(0x1fb)](_0x1cd544['offset']??0x0,_0x3c99c6['items']['length']);if(_0x364f59<_0x3c99c6[_0x137e03(0x205)]){const _0x5bd882=_0x4a4eb6['rjJgt'](_0xddb8ae,0xa)?'\x20--limit\x20'+_0xddb8ae:'',_0x4dd249=_0x116d62['currentBranch']?'\x20--current-branch':'',_0x1cd90c=_0x116d62[_0x137e03(0x201)]?'\x20--include-deleted':'';console['log']('Next\x20page:\x20ranger\x20list\x20--offset\x20'+_0x364f59+_0x5bd882+_0x4dd249+_0x1cd90c);}}export async function featureShow(_0x45c14b){const _0x1c141b=_0x5c21,_0x17de9d={'gLyLk':function(_0x1cdca1){return _0x1cdca1();},'WLseY':'No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','jMauE':function(_0x252b15,_0x1bbe3b){return _0x252b15(_0x1bbe3b);}},_0x51c684=_0x45c14b||await _0x17de9d['gLyLk'](getActiveFeatureId);if(!_0x51c684)throw new Error(_0x17de9d[_0x1c141b(0x1d0)]);const _0x5b5864=await _0x17de9d[_0x1c141b(0x207)](getFeature,_0x51c684);displayFeature(_0x5b5864,_0x5b5864['checklistItems']);}export async function featureResume(_0x438e9b){const _0x8b8e29=_0x5c21,_0x4b8327={'FWAZH':function(_0x4b4217,_0x407359){return _0x4b4217(_0x407359);},'VSmqs':function(_0x470591){return _0x470591();},'izzhu':function(_0x193f05,_0x54a135){return _0x193f05!==_0x54a135;},'EIUfC':function(_0x1598f8,_0xe86d65,_0x2362dc){return _0x1598f8(_0xe86d65,_0x2362dc);},'YzfQx':function(_0x277f8c,_0x5b6274){return _0x277f8c(_0x5b6274);},'Lttdx':function(_0x2f3814,_0x5c6a80,_0x28a6f4){return _0x2f3814(_0x5c6a80,_0x28a6f4);},'pNotc':function(_0x9e339a,_0x3bc5d3){return _0x9e339a&&_0x3bc5d3;},'oWMbM':_0x8b8e29(0x237),'LpcFj':function(_0x21a7bf,_0x1a56f6){return _0x21a7bf||_0x1a56f6;},'XIaSj':_0x8b8e29(0x196),'JbIwW':'Run:\x20ranger\x20create\x20\x22<name>\x22\x20to\x20create\x20a\x20new\x20feature\x20review','QrkAJ':'\x0aNon-interactive\x20mode\x20detected.\x20Multiple\x20feature\x20reviews\x20found:','CvNRC':_0x8b8e29(0x21c),'OmqaF':function(_0x226953,_0x243d10){return _0x226953(_0x243d10);},'JCxPa':function(_0x219a77,_0x576e13,_0x36edf0){return _0x219a77(_0x576e13,_0x36edf0);},'pQdOd':function(_0x15a20e,_0x1c93c6){return _0x15a20e(_0x1c93c6);},'gibjT':function(_0x30ce57,_0x719cb0){return _0x30ce57(_0x719cb0);}};if(_0x438e9b){const _0x2c84c1=await _0x4b8327[_0x8b8e29(0x1a3)](getFeature,_0x438e9b);await setActiveFeatureId(_0x2c84c1['id']);const _0x6969cd=_0x4b8327['VSmqs'](getGitBranch);_0x6969cd&&_0x4b8327['izzhu'](_0x6969cd,_0x2c84c1['gitBranch'])&&(await _0x4b8327['EIUfC'](updateFeature,_0x2c84c1['id'],{'gitBranch':_0x6969cd}),console['log']('\x20\x20\x20Updated\x20branch\x20to:\x20'+_0x6969cd));console['log'](_0x8b8e29(0x1ed)+_0x2c84c1[_0x8b8e29(0x21a)]+'\x20('+_0x2c84c1['id']+')'),await _0x4b8327[_0x8b8e29(0x1d4)](tryStartCurrentSession,_0x2c84c1['id']);const _0x1c8c4b=process[_0x8b8e29(0x215)][_0x8b8e29(0x1ef)];_0x1c8c4b&&_0x4b8327[_0x8b8e29(0x217)](registerSession,_0x1c8c4b,_0x2c84c1['id']);_0x4b8327['Lttdx'](displayFeature,_0x2c84c1,_0x2c84c1['checklistItems']),await printFeedbackNudge(_0x2c84c1['id']);return;}const _0x4da6d0=_0x4b8327['VSmqs'](getGitRepoUrl),_0x2cc0fc=_0x4b8327['VSmqs'](getGitBranch);if(_0x4b8327[_0x8b8e29(0x203)](!_0x4da6d0,!_0x2cc0fc))throw new Error(_0x4b8327[_0x8b8e29(0x1b1)]);console[_0x8b8e29(0x21e)](_0x8b8e29(0x1bd)+(_0x4da6d0||'any')+_0x8b8e29(0x18d)+_0x4b8327[_0x8b8e29(0x1a2)](_0x2cc0fc,_0x4b8327[_0x8b8e29(0x183)])+_0x8b8e29(0x23a));const _0x148207=await _0x4b8327[_0x8b8e29(0x1a3)](listFeatures,{'gitRepoUrl':_0x4da6d0,'gitBranch':_0x2cc0fc}),_0x40e5ab=_0x148207['items'][_0x8b8e29(0x1ab)](_0x169879=>!_0x169879['completedAt']);if(_0x40e5ab['length']===0x0){console[_0x8b8e29(0x21e)]('\x0aNo\x20matching\x20active\x20feature\x20reviews\x20found.'),console['log'](_0x4b8327['JbIwW']);return;}let _0x421701;if(_0x40e5ab['length']===0x1)_0x421701=_0x40e5ab[0x0];else{const _0x297530=process['stdin'][_0x8b8e29(0x18b)]&&process[_0x8b8e29(0x20e)][_0x8b8e29(0x18b)];if(!_0x297530){console[_0x8b8e29(0x21e)](_0x4b8327[_0x8b8e29(0x221)]);for(const _0x166fe9 of _0x40e5ab){console[_0x8b8e29(0x21e)]('\x20\x20'+_0x166fe9[_0x8b8e29(0x21a)]),console[_0x8b8e29(0x21e)](_0x8b8e29(0x1c5)+_0x166fe9['id']),_0x166fe9[_0x8b8e29(0x1b5)]&&console[_0x8b8e29(0x21e)]('\x20\x20\x20\x20\x20Progress:\x20'+getProgressDisplay(_0x166fe9['stats'])),_0x166fe9['gitBranch']&&console['log']('\x20\x20\x20\x20\x20Branch:\x20'+_0x166fe9[_0x8b8e29(0x1e6)]);}throw new Error(_0x8b8e29(0x1d3));}const {selected:_0x139067}=await _0x5f1fe5['prompt']([{'type':'list','name':_0x8b8e29(0x19a),'message':_0x4b8327['CvNRC'],'choices':_0x40e5ab[_0x8b8e29(0x1ad)](_0x303ecb=>({'name':_0x303ecb['name']+'\x20('+_0x303ecb['id']+')','value':_0x303ecb['id']}))}]);_0x421701=_0x40e5ab[_0x8b8e29(0x1cc)](_0x5b8a79=>_0x5b8a79['id']===_0x139067);}await _0x4b8327['OmqaF'](setActiveFeatureId,_0x421701['id']);_0x2cc0fc&&_0x2cc0fc!==_0x421701[_0x8b8e29(0x1e6)]&&(await _0x4b8327['JCxPa'](updateFeature,_0x421701['id'],{'gitBranch':_0x2cc0fc}),console['log'](_0x8b8e29(0x1c9)+_0x2cc0fc));console['log'](_0x8b8e29(0x1ed)+_0x421701['name']+'\x20('+_0x421701['id']+')'),await _0x4b8327['pQdOd'](tryStartCurrentSession,_0x421701['id']);const _0x258139=await _0x4b8327[_0x8b8e29(0x1c3)](getFeature,_0x421701['id']),_0x2bada0=process['env']['CLAUDE_SESSION_ID'];_0x2bada0&&_0x4b8327[_0x8b8e29(0x217)](registerSession,_0x2bada0,_0x258139['id']),_0x4b8327[_0x8b8e29(0x217)](displayFeature,_0x258139,_0x258139[_0x8b8e29(0x1e2)]),await printFeedbackNudge(_0x258139['id']);}async function printFeedbackNudge(_0x1d068c){const _0x4bc051=_0x5c21,_0x483efa={'emhzQ':function(_0x463224,_0x349606){return _0x463224(_0x349606);},'QEcQb':function(_0x106f6f,_0x22be00,_0xffaa5a){return _0x106f6f(_0x22be00,_0xffaa5a);}};try{const {items:_0xffa00c}=await _0x483efa[_0x4bc051(0x1b2)](getActionItems,_0x1d068c);let _0x3bc690=0x0,_0xfd74cb=0x0;for(const _0x180794 of _0xffa00c){const _0x12e645=await _0x483efa['QEcQb'](getItemFeedback,_0x1d068c,_0x180794['id']);_0x12e645[_0x4bc051(0x1c7)]['length']>0x0&&(_0x3bc690+=_0x12e645[_0x4bc051(0x1c7)]['length'],_0xfd74cb++);}_0x3bc690>0x0&&(console['log'](_0x4bc051(0x253)+_0x3bc690+_0x4bc051(0x225)+_0xfd74cb+'\x20scenario(s).'),console['log'](_0x4bc051(0x20b)));}catch{}}async function tryStartCurrentSession(_0x1fea98){const _0x5b9c14=_0x5c21,_0x55f978={'gGpPv':function(_0x20c533,_0x24a461,_0x1340f3){return _0x20c533(_0x24a461,_0x1340f3);}};try{const {sessions:_0x4178e1}=await listFeatureSessions(_0x1fea98),_0x578b01=_0x4178e1['find'](_0x3193de=>_0x3193de['status']===_0x5b9c14(0x235));_0x578b01&&(await _0x55f978[_0x5b9c14(0x22b)](startSession,_0x1fea98,_0x578b01['id']),console[_0x5b9c14(0x21e)](_0x5b9c14(0x1a5)+_0x578b01[_0x5b9c14(0x1e5)]));}catch{}}export async function featureReport(_0x5b5b63,_0x54dd6a){const _0x32e7c2=_0x5c21,_0x467a0d={'NrTho':_0x32e7c2(0x222),'dsUTg':function(_0x2483ee){return _0x2483ee();},'DIOvl':_0x32e7c2(0x188),'dMrOA':function(_0x570038,_0xa86e9,_0x10a3eb){return _0x570038(_0xa86e9,_0x10a3eb);},'lGPAr':function(_0x4807f0,_0x957b00){return _0x4807f0(_0x957b00);}},_0x1363dd=_0x5b5b63||await getActiveFeatureId();if(!_0x1363dd)throw new Error(_0x467a0d['NrTho']);console['log'](_0x32e7c2(0x180));const _0x5bab30=await getFeatureReportMarkdown(_0x1363dd,{'style':_0x54dd6a['style']}),_0x2dd0fa=_0x54dd6a[_0x32e7c2(0x20d)]||join(_0x467a0d[_0x32e7c2(0x1f6)](getRangerDir),_0x467a0d['DIOvl'],_0x1363dd+'.md'),_0x335f82=_0x467a0d['dMrOA'](join,_0x2dd0fa,'..');!_0x467a0d[_0x32e7c2(0x218)](existsSync,_0x335f82)&&await _0x467a0d['dMrOA'](mkdir,_0x335f82,{'recursive':!![]}),await writeFile(_0x2dd0fa,_0x5bab30,_0x32e7c2(0x185)),console['log']('\x0a✅\x20Report\x20generated:\x20'+_0x2dd0fa);}function getScenarioResult(_0x1032aa){const _0x4be484=_0x5c21,_0x3a2d89={'wDuhH':function(_0x3e61e0,_0x4428cd){return _0x3e61e0===_0x4428cd;},'GqjRc':_0x4be484(0x23b),'BEUKc':'in_progress'};if(_0x3a2d89[_0x4be484(0x24b)](_0x1032aa['status'],'closed'))return _0x1032aa[_0x4be484(0x195)]??_0x3a2d89[_0x4be484(0x1aa)];if(_0x1032aa[_0x4be484(0x249)]===_0x4be484(0x1f1))return _0x3a2d89['BEUKc'];return _0x1032aa[_0x4be484(0x249)];}function getScenarioRationale(_0x40b35d,_0xf68ed7){const _0x51b20c=_0x5c21,_0x5850ea=_0x51b20c(0x1e3)['split']('|');let _0x2ba68f=0x0;while(!![]){switch(_0x5850ea[_0x2ba68f++]){case'0':return null;case'1':if(_0x40b35d[_0x51b20c(0x216)])return _0x40b35d[_0x51b20c(0x216)];continue;case'2':if(_0x40b35d[_0x51b20c(0x243)])return _0x40b35d[_0x51b20c(0x243)];continue;case'3':if(_0x40b35d['incompleteReason'])return _0x40b35d['incompleteReason'];continue;case'4':if(_0xf68ed7)return _0xf68ed7;continue;case'5':if(_0x40b35d[_0x51b20c(0x254)])return _0x40b35d['canceledReason'];continue;}break;}}export async function featureReportPrDescription(_0x429f95,_0x20605a){const _0x315865=_0x5c21,_0x200a9c={'ihIxS':function(_0x4d4f84){return _0x4d4f84();},'WlYUw':_0x315865(0x1c0),'ueKTY':function(_0x5a90f7,_0x39c4bd){return _0x5a90f7+_0x39c4bd;},'KEOfA':'\x0a❌\x20All\x20scenarios\x20were\x20excluded.'},_0x4fdb17=_0x429f95||await _0x200a9c[_0x315865(0x1a1)](getActiveFeatureId);if(!_0x4fdb17)throw new Error('No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.');const _0x3a4868=await getFeature(_0x4fdb17),_0x4abf95=_0x3a4868['checklistItems']||[],_0x5cad89=getCurrentSessionItems(_0x3a4868,_0x4abf95);_0x5cad89['length']===0x0&&(console['error'](_0x200a9c[_0x315865(0x231)]),process['exit'](0x1));const _0x2e871a=_0x20605a['excludeScenarios']??[],_0x826c48=_0x2e871a[_0x315865(0x1ab)](_0x58b369=>!Number[_0x315865(0x214)](_0x58b369)||_0x58b369<0x1||_0x58b369>_0x5cad89[_0x315865(0x18c)]);if(_0x826c48['length']>0x0){console['error']('\x0a❌\x20Invalid\x20scenario\x20number(s):\x20'+_0x826c48['join'](',\x20')),console['log']('\x0aAvailable\x20scenarios:');for(let _0x2613e1=0x0;_0x2613e1<_0x5cad89['length'];_0x2613e1++){console[_0x315865(0x21e)]('\x20\x20'+_0x200a9c[_0x315865(0x194)](_0x2613e1,0x1)+'.\x20'+_0x5cad89[_0x2613e1]['description']);}process['exit'](0x1);}const _0x2acc48=new Set(_0x2e871a[_0x315865(0x1ad)](_0x418082=>_0x418082-0x1)),_0x1a731f=_0x5cad89[_0x315865(0x1ab)]((_0x176bad,_0x216484)=>!_0x2acc48['has'](_0x216484));_0x1a731f['length']===0x0&&(console[_0x315865(0x22e)](_0x200a9c['KEOfA']),process[_0x315865(0x1d5)](0x1));if(_0x20605a[_0x315865(0x18a)])await outputJsonReport(_0x4fdb17,_0x3a4868,_0x1a731f);else{const _0xb7524f=await getFeatureReportMarkdown(_0x4fdb17,{'itemIds':_0x1a731f[_0x315865(0x1ad)](_0x3b455f=>_0x3b455f['id'])});process['stdout']['write'](_0xb7524f[_0x315865(0x20f)]()+'\x0a');}}async function outputJsonReport(_0x14a68a,_0x7a0b30,_0x2774ef){const _0x575d8b=_0x5c21,_0x132afd={'eQokX':function(_0x1355ff,_0xe9d2f7){return _0x1355ff>_0xe9d2f7;},'bUDJY':function(_0x595202,_0x3a0dc3){return _0x595202===_0x3a0dc3;},'CSknU':function(_0x3bb214,_0x2af54e){return _0x3bb214+_0x2af54e;}},_0xb24176=getApiBaseUrl(),_0x46adfb=await getFeatureReport(_0x14a68a),_0xed8d60=new Map(_0x46adfb['checklistItems']['map'](_0x3280f1=>[_0x3280f1['id'],_0x3280f1])),_0x3e26ff=await Promise[_0x575d8b(0x199)](_0x2774ef[_0x575d8b(0x1ad)](async _0x442362=>{const _0x5ecbe6=_0x575d8b,_0x12557f=_0xed8d60[_0x5ecbe6(0x1ce)](_0x442362['id']),_0x48f268=_0x12557f?.[_0x5ecbe6(0x244)]??null;let _0x377b9f=[];if(_0x442362['browserSessionId'])try{const {steps:_0x5ac13e}=await getBrowserSessionSteps(_0x442362[_0x5ecbe6(0x1b3)]);_0x132afd['eQokX'](_0x5ac13e['length'],0x0)&&(_0x377b9f=_0x5ac13e['map'](_0x42483c=>{const _0xf9ca00=_0x5ecbe6,_0x41089d=_0x42483c['assets']['find'](_0x5a7551=>_0x5a7551['assetType']===_0xf9ca00(0x1ea)&&_0x5a7551['timing']==='after')??_0x42483c[_0xf9ca00(0x1be)][_0xf9ca00(0x1cc)](_0x13652f=>_0x13652f[_0xf9ca00(0x1f9)]===_0xf9ca00(0x1ea));let _0x23bc5f=null,_0x47e70b=null;if(_0x41089d){const _0x2dce7e=_0x41089d['storage']['location'][_0xf9ca00(0x1fa)]('/')[_0xf9ca00(0x1ee)]();_0x23bc5f=_0xb24176+_0xf9ca00(0x23c)+_0x442362[_0xf9ca00(0x1b3)]+_0xf9ca00(0x1d6)+_0x2dce7e,_0x2dce7e&&(_0x47e70b=_0x2dce7e['replace'](/\.\w+$/,'')['replace'](/^(key_)?\d+_/,'')['replace'](/[-_]/g,'\x20'));}return{'description':_0x47e70b||_0x42483c[_0xf9ca00(0x246)]||_0x42483c[_0xf9ca00(0x1c1)]||'Step\x20'+_0x42483c[_0xf9ca00(0x1d8)],'screenshot':_0x23bc5f,'is_key_step':_0x42483c['isKeyStep']};}));}catch{}return _0x132afd['bUDJY'](_0x377b9f['length'],0x0)&&_0x48f268?.['screenshotUrls']&&(_0x377b9f=_0x48f268[_0x5ecbe6(0x1dc)]['map']((_0x209dd4,_0x475997)=>({'description':'Screenshot\x20'+(_0x475997+0x1),'screenshot':_0x209dd4,'is_key_step':![]}))),{'description':_0x442362['description'],'result':getScenarioResult(_0x442362),'rationale':getScenarioRationale(_0x442362,_0x48f268?.[_0x5ecbe6(0x240)]),'steps':_0x377b9f};})),_0x3b9fef={'url':_0x7a0b30[_0x575d8b(0x19d)],'scenarios':_0x3e26ff};process[_0x575d8b(0x20e)][_0x575d8b(0x1df)](_0x132afd[_0x575d8b(0x197)](JSON['stringify'](_0x3b9fef,null,0x2),'\x0a'));}export async function featureConcludeSession(_0x7a501b){const _0x1f6142=_0x5c21,_0x17edd6={'HUCYq':function(_0x315816){return _0x315816();},'AcGHl':function(_0x6bd456,_0x1fa910){return _0x6bd456(_0x1fa910);},'VnZiZ':function(_0x43f3ba,_0x3e0ab5){return _0x43f3ba(_0x3e0ab5);},'ExXMQ':_0x1f6142(0x236),'ANSMd':function(_0x133675,_0x1a0915){return _0x133675!==_0x1a0915;},'UHBTG':_0x1f6142(0x1f4),'mVWJK':function(_0x51b1d1,_0x1a6fe9,_0x34e2a1){return _0x51b1d1(_0x1a6fe9,_0x34e2a1);}},_0x22ee19=_0x7a501b||await _0x17edd6['HUCYq'](getActiveFeatureId);if(!_0x22ee19)throw new Error('No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review');const _0xcab798=await _0x17edd6[_0x1f6142(0x210)](getFeature,_0x22ee19);if(!_0xcab798[_0x1f6142(0x228)])throw new Error(_0x1f6142(0x24c));const {sessions:_0x2c65ee}=await _0x17edd6[_0x1f6142(0x1f0)](listFeatureSessions,_0x22ee19),_0x710c5d=_0x2c65ee[_0x1f6142(0x1cc)](_0x55b994=>_0x55b994['id']===_0xcab798[_0x1f6142(0x228)]);if(!_0x710c5d)throw new Error('Current\x20session\x20not\x20found.');if(_0x710c5d[_0x1f6142(0x249)]===_0x17edd6['ExXMQ']){console[_0x1f6142(0x21e)]('\x0a✅\x20Session\x20is\x20already\x20completed.');return;}if(_0x17edd6['ANSMd'](_0x710c5d['status'],_0x17edd6['UHBTG']))throw new Error('Cannot\x20conclude\x20session\x20with\x20status:\x20'+_0x710c5d[_0x1f6142(0x249)]);console['log'](_0x1f6142(0x1d7)),await _0x17edd6['mVWJK'](concludeSession,_0x22ee19,_0xcab798[_0x1f6142(0x228)]),console[_0x1f6142(0x21e)](_0x1f6142(0x204)+_0x710c5d['iteration']+'\x20concluded.'),console[_0x1f6142(0x21e)]('\x20\x20\x20The\x20feature\x20review\x20is\x20now\x20ready\x20for\x20human\x20review\x20on\x20the\x20Ranger\x20dashboard.');}export async function featureSessions(_0x12e807){const _0x3cd7b7=_0x5c21,_0x273c96={'YYAFb':_0x3cd7b7(0x222),'QvqIC':function(_0x4e0e7f,_0xdc7330){return _0x4e0e7f(_0xdc7330);},'zUnzY':function(_0x1f773a,_0x3fac84){return _0x1f773a===_0x3fac84;}},_0x2d01fd=_0x12e807||await getActiveFeatureId();if(!_0x2d01fd)throw new Error(_0x273c96[_0x3cd7b7(0x234)]);const _0x56d063=await _0x273c96[_0x3cd7b7(0x23e)](getFeature,_0x2d01fd);console[_0x3cd7b7(0x21e)](_0x3cd7b7(0x1b6)+_0x56d063[_0x3cd7b7(0x21a)]+'\x0a');const {sessions:_0x423490}=await listFeatureSessions(_0x2d01fd);if(_0x273c96[_0x3cd7b7(0x1a7)](_0x423490[_0x3cd7b7(0x18c)],0x0)){console[_0x3cd7b7(0x21e)]('No\x20sessions\x20found.');return;}for(const _0x36e5b4 of _0x423490){const _0xe5489b=_0x36e5b4['status']==='completed'?'✅':_0x36e5b4['status']==='in_progress'?'🔄':'▶️';console['log'](_0xe5489b+'\x20Session\x20'+_0x36e5b4['iteration']+'\x20('+_0x36e5b4['id']+')'),console['log'](_0x3cd7b7(0x20a)+_0x36e5b4['status']),console['log']('\x20\x20\x20Created:\x20'+new Date(_0x36e5b4['createdAt'])['toLocaleString']()),_0x36e5b4[_0x3cd7b7(0x184)]&&console['log'](_0x3cd7b7(0x1f3)+new Date(_0x36e5b4['completedAt'])['toLocaleString']()),console['log']('');}}export async function featureAddScenario(_0x2a87c9,_0x185cd4){const _0xe1cb01=_0x5c21,_0x1b1f5f={'MdYag':function(_0x22c3bc){return _0x22c3bc();},'YUwpx':'No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','IbgtO':function(_0x322c83,_0x35b3b8,_0x55674){return _0x322c83(_0x35b3b8,_0x55674);}},_0x4ebf6a=_0x185cd4||await _0x1b1f5f['MdYag'](getActiveFeatureId);if(!_0x4ebf6a)throw new Error(_0x1b1f5f[_0xe1cb01(0x1eb)]);const _0x410979=await getFeature(_0x4ebf6a);if(_0x410979['latestReview']&&!_0x410979['latestReview'][_0xe1cb01(0x1bc)])throw new Error(_0xe1cb01(0x1ba)+_0x410979[_0xe1cb01(0x19d)]);await _0x1b1f5f[_0xe1cb01(0x22d)](createChecklistItem,_0x4ebf6a,_0x2a87c9);const _0x1222f5=await getFeature(_0x4ebf6a);console[_0xe1cb01(0x21e)]('\x0a✅\x20Scenario\x20added'),displayFeature(_0x1222f5,_0x1222f5[_0xe1cb01(0x1e2)]);}export async function featureEditScenario(_0x5e705a,_0x41642e){const _0x1469a9=_0x5c21,_0xebf0ff={'Ecgck':_0x1469a9(0x1a6),'MkoLl':'Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','PtpsY':function(_0x4ec545,_0x43a09e){return _0x4ec545(_0x43a09e);},'fHPer':'\x0a❌\x20Cannot\x20edit\x20scenario:\x20feature\x20review\x20has\x20an\x20active\x20review.','nCKHR':function(_0x4279ea,_0x4057ae){return _0x4279ea===_0x4057ae;},'YTqYx':'\x0a❌\x20No\x20scenarios\x20found\x20to\x20edit.','GdQJm':'\x0a❌\x20No\x20scenario\x20number\x20provided.\x20Use\x20--scenario\x20<number>.','JbHqh':'\x0aAvailable\x20scenarios:','sOHAG':function(_0x492e61,_0x46755d){return _0x492e61<_0x46755d;},'EJDxU':function(_0x3e93f5,_0x8f9f5f){return _0x3e93f5<_0x8f9f5f;},'AZnIP':function(_0x165507,_0x444270){return _0x165507>=_0x444270;},'geDbY':function(_0x5bbd1b,_0xe61c11,_0x1c2670,_0x3a9c6c){return _0x5bbd1b(_0xe61c11,_0x1c2670,_0x3a9c6c);},'WOtZc':function(_0x541ab8,_0x461877,_0xced4a0){return _0x541ab8(_0x461877,_0xced4a0);}},_0x4b5faf=_0x41642e['id']||await getActiveFeatureId();!_0x4b5faf&&(console[_0x1469a9(0x22e)](_0xebf0ff['Ecgck']),console['error'](_0xebf0ff[_0x1469a9(0x1c4)]),process[_0x1469a9(0x1d5)](0x1));const _0x546ec3=await _0xebf0ff[_0x1469a9(0x1d2)](getFeature,_0x4b5faf);_0x546ec3['latestReview']&&!_0x546ec3[_0x1469a9(0x1f5)]['submittedAt']&&(console[_0x1469a9(0x22e)](_0xebf0ff['fHPer']),console[_0x1469a9(0x22e)](_0x1469a9(0x1d9)),console['error']('\x20\x20'+_0x546ec3[_0x1469a9(0x19d)]),process['exit'](0x1));const _0x307347=_0x546ec3[_0x1469a9(0x1e2)]||[];_0xebf0ff['nCKHR'](_0x307347['length'],0x0)&&(console[_0x1469a9(0x22e)](_0xebf0ff[_0x1469a9(0x200)]),process['exit'](0x1));if(_0x41642e[_0x1469a9(0x209)]===undefined){console[_0x1469a9(0x22e)](_0xebf0ff['GdQJm']),console[_0x1469a9(0x21e)](_0xebf0ff['JbHqh']);for(let _0x37277a=0x0;_0xebf0ff['sOHAG'](_0x37277a,_0x307347[_0x1469a9(0x18c)]);_0x37277a++){console['log']('\x20\x20'+(_0x37277a+0x1)+'.\x20'+_0x307347[_0x37277a]['description']);}process['exit'](0x1);}const _0x218bf4=_0x41642e['scenario']-0x1;if(_0xebf0ff[_0x1469a9(0x1ff)](_0x218bf4,0x0)||_0xebf0ff[_0x1469a9(0x18e)](_0x218bf4,_0x307347[_0x1469a9(0x18c)])){console['error'](_0x1469a9(0x1e0)+_0x41642e[_0x1469a9(0x209)]+'.\x20Feature\x20review\x20has\x20'+_0x307347[_0x1469a9(0x18c)]+_0x1469a9(0x1e4)),console[_0x1469a9(0x21e)](_0xebf0ff[_0x1469a9(0x220)]);for(let _0x511245=0x0;_0x511245<_0x307347[_0x1469a9(0x18c)];_0x511245++){console[_0x1469a9(0x21e)]('\x20\x20'+(_0x511245+0x1)+'.\x20'+_0x307347[_0x511245]['description']);}process['exit'](0x1);}const _0x51f5f7=_0x307347[_0x218bf4];await _0xebf0ff['geDbY'](updateChecklistItem,_0x4b5faf,_0x51f5f7['id'],{'description':_0x5e705a});const _0x21263b=await getFeature(_0x4b5faf);console[_0x1469a9(0x21e)]('\x0a✅\x20Scenario\x20updated'),_0xebf0ff[_0x1469a9(0x258)](displayFeature,_0x21263b,_0x21263b['checklistItems']);}async function downloadFeedbackImage(_0x82e9d5,_0x2a3bd8){const _0x2d4f3c=_0x5c21,_0x207c77={'bduGI':function(_0x226d91,_0x17a043,_0x25cf18){return _0x226d91(_0x17a043,_0x25cf18);},'SCvDZ':function(_0x34056b,_0xa88191,_0x53ae06){return _0x34056b(_0xa88191,_0x53ae06);}};try{const _0x499668=_0x207c77['bduGI'](join,getRangerDir(),'feedback-images');await mkdir(_0x499668,{'recursive':!![]});const _0x3bdd4e=_0x207c77['SCvDZ'](join,_0x499668,'comment_'+_0x2a3bd8+_0x2d4f3c(0x229)),_0x540376=await fetch(_0x82e9d5);if(!_0x540376['ok'])return null;const _0x5efac9=Buffer[_0x2d4f3c(0x223)](await _0x540376['arrayBuffer']());return await writeFile(_0x3bdd4e,_0x5efac9),_0x3bdd4e;}catch{return null;}}export async function featureGetReview(_0x27e0a9){const _0x8eebfe=_0x5c21,_0xf113d={'xSNsH':function(_0x70392a,_0x2bac5b){return _0x70392a(_0x2bac5b);},'oiTjq':_0x8eebfe(0x219),'ofwKJ':function(_0x108275,_0x729e55,_0x3f2842){return _0x108275(_0x729e55,_0x3f2842);},'hLYlw':function(_0x206886,_0x1e0db5){return _0x206886>_0x1e0db5;},'JLFYY':_0x8eebfe(0x23f),'vmIWh':_0x8eebfe(0x211),'GTtRb':function(_0x1d840a,_0x3a4157,_0x57cfc8){return _0x1d840a(_0x3a4157,_0x57cfc8);},'VKQiq':'\x20>\x20','htrEb':function(_0x122de9,_0x1d1fc1){return _0x122de9>=_0x1d1fc1;},'UDJtf':function(_0x2fe7f0,_0xbf2cae){return _0x2fe7f0+_0xbf2cae;}},_0x4b4d39=_0x27e0a9||await getActiveFeatureId();if(!_0x4b4d39)throw new Error(_0x8eebfe(0x186));const _0x5c5ac2=await getFeature(_0x4b4d39),{items:_0x2a0c3f}=await _0xf113d['xSNsH'](getActionItems,_0x4b4d39);console['log']('\x0a📋\x20Feedback\x20for:\x20'+_0x5c5ac2['name']+'\x20('+_0x5c5ac2['id']+')\x0a');if(_0x2a0c3f[_0x8eebfe(0x18c)]===0x0){console['log'](_0xf113d['oiTjq']);return;}for(let _0x2828cd=0x0;_0x2828cd<_0x2a0c3f['length'];_0x2828cd++){const _0x4f7bd3=_0x2a0c3f[_0x2828cd],_0xfb5582=_0x4f7bd3['version']>0x1?_0x8eebfe(0x24d)+_0x4f7bd3[_0x8eebfe(0x17f)]+')':'',_0x5481c2=await _0xf113d[_0x8eebfe(0x1ac)](getItemFeedback,_0x4b4d39,_0x4f7bd3['id']);if(_0xf113d[_0x8eebfe(0x1c8)](_0x5481c2[_0x8eebfe(0x1c7)]['length'],0x0)){console['log']('Scenario\x20'+(_0x2828cd+0x1)+':\x20\x22'+_0x4f7bd3['description']+'\x22'+_0xfb5582+'\x20—\x20'+_0x5481c2[_0x8eebfe(0x1c7)]['length']+_0x8eebfe(0x17e));for(const _0x1ce6ca of _0x5481c2['unaddressedComments']){const _0x3a21bb=new Date(_0x1ce6ca[_0x8eebfe(0x233)])['toLocaleDateString'](_0x8eebfe(0x22a),{'month':'short','day':_0xf113d[_0x8eebfe(0x1a9)]}),_0x5b4c46=_0x1ce6ca[_0x8eebfe(0x1a8)]||_0x1ce6ca[_0x8eebfe(0x1ae)]||_0xf113d['vmIWh'];console[_0x8eebfe(0x21e)](_0x8eebfe(0x232)+_0x5b4c46+'\x20('+_0x3a21bb+'):\x20\x22'+_0x1ce6ca['content']+'\x22');if(_0x1ce6ca[_0x8eebfe(0x1d1)]){const _0x71d490=await _0xf113d[_0x8eebfe(0x1f8)](downloadFeedbackImage,_0x1ce6ca[_0x8eebfe(0x1d1)],_0x1ce6ca['id']);_0x71d490&&console[_0x8eebfe(0x21e)](_0x8eebfe(0x1f7)+_0x71d490);}if(_0x1ce6ca['domRef']){const _0x5dcebd=_0x1ce6ca[_0x8eebfe(0x208)]['selector'][_0x8eebfe(0x1fa)](_0xf113d['VKQiq'])['pop']()?.[_0x8eebfe(0x1fa)](':')[0x0]||'element',_0x4a9e11=_0x1ce6ca['domRef']['textContent']?'\x20\x22'+_0x1ce6ca[_0x8eebfe(0x208)][_0x8eebfe(0x24e)][_0x8eebfe(0x230)](0x0,0x3c)+'\x22':'';console['log']('\x20\x20\x20\x20\x20🎯\x20Element:\x20<'+_0x5dcebd+'>'+_0x4a9e11),console[_0x8eebfe(0x21e)]('\x20\x20\x20\x20\x20📋\x20Selector:\x20'+_0x1ce6ca[_0x8eebfe(0x208)][_0x8eebfe(0x24f)]);}else{if(_0x1ce6ca['spatial']){const _0x48a429=_0x1ce6ca[_0x8eebfe(0x1b0)]['coordinates'];_0x1ce6ca[_0x8eebfe(0x1b0)][_0x8eebfe(0x1c2)]===_0x8eebfe(0x248)&&_0xf113d[_0x8eebfe(0x17d)](_0x48a429[_0x8eebfe(0x18c)],0x2)?console[_0x8eebfe(0x21e)]('\x20\x20\x20\x20\x20📍\x20Annotation:\x20point\x20at\x20('+_0x48a429[0x0]['toFixed'](0x2)+',\x20'+_0x48a429[0x1]['toFixed'](0x2)+')'):console['log']('\x20\x20\x20\x20\x20📍\x20Annotation:\x20'+_0x1ce6ca[_0x8eebfe(0x1b0)]['type']+_0x8eebfe(0x187)+_0x48a429['map'](_0x5ca957=>_0x5ca957['toFixed'](0x2))['join'](',\x20')+']');}}}if(_0x5481c2[_0x8eebfe(0x19c)]){console[_0x8eebfe(0x21e)](_0x8eebfe(0x1e1));for(const _0x43927b of _0x5481c2[_0x8eebfe(0x19c)]['split']('\x0a')){console[_0x8eebfe(0x21e)](_0x8eebfe(0x1ca)+_0x43927b);}}}else console['log']('Scenario\x20'+_0xf113d[_0x8eebfe(0x1fc)](_0x2828cd,0x1)+':\x20\x22'+_0x4f7bd3[_0x8eebfe(0x246)]+'\x22'+_0xfb5582+_0x8eebfe(0x224)),console[_0x8eebfe(0x21e)](_0x8eebfe(0x193));console[_0x8eebfe(0x21e)]('');}}function _0x5c21(_0x11b896,_0x1f2f30){_0x11b896=_0x11b896-0x17d;const _0x3ef36c=_0x3ef3();let _0x5c21a9=_0x3ef36c[_0x11b896];return _0x5c21a9;}function _0x3ef3(){const _0x49ee7c=['FWAZH','parentItemId','\x20\x20\x20▶️\x20Started\x20session\x20','\x0a❌\x20No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.','zUnzY','authorName','JLFYY','GqjRc','filter','ofwKJ','map','authorEmail','join','spatial','oWMbM','emhzQ','browserSessionId','\x20\x20\x20Repository:\x20','stats','\x0a📁\x20Sessions\x20for\x20feature\x20review:\x20','limit','13790040vqnoKc','2749990qWeCMR','Cannot\x20add\x20scenario:\x20feature\x20review\x20has\x20an\x20active\x20review.\x20Please\x20finish\x20your\x20review\x20first:\x20','currentBranch','submittedAt','\x0aSearching\x20for\x20feature\x20reviews\x20matching:\x20','assets','incompleteReason','\x0a❌\x20No\x20scenarios\x20found\x20to\x20include.','stepName','type','gibjT','MkoLl','\x20\x20\x20\x20\x20ID:\x20','8IhfLLy','unaddressedComments','hLYlw','\x20\x20\x20Updated\x20branch\x20to:\x20','\x20\x20\x20\x20','\x20[has\x20reviewer\x20feedback]','find','222061WQuYSi','get','VTrgL','WLseY','assetUrl','PtpsY','Please\x20specify\x20the\x20feature\x20review\x20ID:\x20ranger\x20resume\x20<id>','YzfQx','exit','/artifacts/','\x0aConcluding\x20session...','position','Please\x20finish\x20your\x20review\x20first:','EsTgd','952721bBzWtk','screenshotUrls','4539368kvqTEs','RasPC','write','\x0a❌\x20Invalid\x20scenario\x20index:\x20','\x20\x20Expected\x20flow:','checklistItems','4|1|3|5|2|0','\x20scenarios.','iteration','gitBranch','\x20\x20\x20\x20\x20\x20Incomplete:\x20','sessionId','168JXUvHP','screenshot','YUwpx','\x20\x20\x20ID:\x20','\x0a✅\x20Resumed\x20feature\x20review:\x20','pop','CLAUDE_SESSION_ID','VnZiZ','verification_in_progress','\x20of\x20','\x20\x20\x20Completed:\x20','in_progress','latestReview','dsUTg','\x20\x20\x20\x20\x20📷\x20Screenshot:\x20','GTtRb','assetType','split','TNYOb','UDJtf','git\x20rev-parse\x20--abbrev-ref\x20HEAD','gitRepoUrl','EJDxU','YTqYx','includeDeleted','5020299NHAPoI','pNotc','\x0a✅\x20Session\x20','totalCount','approved','jMauE','domRef','scenario','\x20\x20\x20Status:\x20','\x20\x20\x20Run\x20`ranger\x20get-review`\x20to\x20see\x20what\x20needs\x20to\x20be\x20fixed.','\x20\x20\x20\x20\x20\x20Cancelled:\x20','output','stdout','trimEnd','AcGHl','Unknown','pipe','toLocaleString','isInteger','env','blockedReason','Lttdx','lGPAr','No\x20scenarios\x20found.','name','\x0a\x20\x20\x20Scenarios:','Multiple\x20feature\x20reviews\x20found.\x20Select\x20one:','github.com/','log','\x20\x20\x20Progress:\x20','JbHqh','QrkAJ','No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.','from','\x20—\x20no\x20comments','\x20unaddressed\x20reviewer\x20comment(s)\x20across\x20','offset','kTgkJ','currentSessionId','.png','en-US','gGpPv','ZDeXq','IbgtO','error','incompleteItems','slice','WlYUw','\x20\x20💬\x20','createdAt','YYAFb','ready','completed','Not\x20in\x20a\x20git\x20repository.','\x0aCreating\x20feature\x20review...','YuvnZ','...','closed','/api/v1/mcp/browser-sessions/','6JhGTaR','QvqIC','numeric','agentResponse','\x20\x20\x20\x20\x20\x20Blocked:\x20','fnqAK','notes','linkedSession','replace','description','blockedItems','point','status','gOQBa','wDuhH','No\x20active\x20session\x20for\x20this\x20feature\x20review.','\x20(v','textContent','selector','git\x20remote\x20get-url\x20origin','NnrXe','\x0a➡️\x20\x20Set\x20as\x20active\x20feature\x20review','\x0a⚠️\x20\x20','canceledReason','xfEbF','966645yZzxhV','\x20\x20\x20To\x20restore\x20it,\x20run:\x20ranger\x20restore\x20','WOtZc','YHDLc','zgXqf','htrEb','\x20unaddressed\x20comment(s)','version','\x0aGenerating\x20report...','push','\x0a🗑️\x20\x20Deleted\x20feature\x20review:\x20','XIaSj','completedAt','utf-8','No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','\x20at\x20[','reports','trim','json','isTTY','length','\x20/\x20','AZnIP','Rmhst','AIwtS','\x20\x20\x20Branch:\x20','qpdbB','\x20\x20✅\x20No\x20feedback\x20to\x20address','ueKTY','terminalReason','any','CSknU','fyofK','all','selected','items','canonicalFlow','dashboardUrl','incomplete','tnPJE','scenarios','ihIxS','LpcFj'];_0x3ef3=function(){return _0x49ee7c;};return _0x3ef3();}export async function featureDelete(_0x2f7c33){const _0x20e271=_0x5c21,_0x45bc0a={'lWupf':'No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','MpRcm':function(_0x18f59d,_0x38e0e0){return _0x18f59d(_0x38e0e0);},'aazdU':function(_0x45c1ab,_0x112464){return _0x45c1ab+_0x112464;},'JUIax':_0x20e271(0x257)},_0x42c1a1=_0x2f7c33||await getActiveFeatureId();if(!_0x42c1a1)throw new Error(_0x45bc0a['lWupf']);const _0x5ab069=await _0x45bc0a['MpRcm'](getFeature,_0x42c1a1);await softDeleteFeature(_0x42c1a1),console['log'](_0x20e271(0x182)+_0x5ab069['name']+'\x20('+_0x42c1a1+')'),console[_0x20e271(0x21e)](_0x45bc0a['aazdU'](_0x45bc0a['JUIax'],_0x42c1a1));}export async function featureRestore(_0x2700bf){const _0x52aa6c=_0x5c21,_0x4938ea={'mjMHb':function(_0xc71fea,_0x45448a){return _0xc71fea(_0x45448a);},'EyuRl':function(_0x5be730,_0x52653d,_0x45db8c){return _0x5be730(_0x52653d,_0x45db8c);}};await _0x4938ea['mjMHb'](restoreFeature,_0x2700bf);const _0x5e66d2=await _0x4938ea['mjMHb'](getFeature,_0x2700bf);console['log']('\x0a✅\x20Restored\x20feature\x20review:\x20'+_0x5e66d2[_0x52aa6c(0x21a)]+'\x20('+_0x2700bf+')'),_0x4938ea['EyuRl'](displayFeature,_0x5e66d2,_0x5e66d2[_0x52aa6c(0x1e2)]);}
@@ -1 +1 @@
1
- (function(_0x4e51af,_0x4e9f22){const _0xad855d=_0x24c2,_0x255b15=_0x4e51af();while(!![]){try{const _0x2ca4ee=-parseInt(_0xad855d(0x73))/0x1*(-parseInt(_0xad855d(0x7b))/0x2)+-parseInt(_0xad855d(0x74))/0x3*(-parseInt(_0xad855d(0x70))/0x4)+-parseInt(_0xad855d(0x80))/0x5+-parseInt(_0xad855d(0x75))/0x6+-parseInt(_0xad855d(0x72))/0x7+-parseInt(_0xad855d(0x76))/0x8*(parseInt(_0xad855d(0x78))/0x9)+parseInt(_0xad855d(0x7a))/0xa;if(_0x2ca4ee===_0x4e9f22)break;else _0x255b15['push'](_0x255b15['shift']());}catch(_0x25346e){_0x255b15['push'](_0x255b15['shift']());}}}(_0x256a,0x22bbb));import{sessionStart,sessionEnd,preCompact,postEdit,planStart,planReminder,exitPlanMode,stopHook,enable,disable,autoPrompt}from'./hooks/index.js';function _0x24c2(_0x92aa9c,_0x2de1c2){_0x92aa9c=_0x92aa9c-0x70;const _0x256a08=_0x256a();let _0x24c290=_0x256a08[_0x92aa9c];return _0x24c290;}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 _0x49e930=_0x24c2,_0x435ce6={'jbblC':'SIGINT','VmkVW':_0x49e930(0x7f)};if(cancellationHandlersInstalled)return;const _0x354046=()=>{process['exit'](0x0);};process[_0x49e930(0x7c)](_0x435ce6[_0x49e930(0x71)],_0x354046),process[_0x49e930(0x7c)](_0x435ce6['VmkVW'],_0x354046),process[_0x49e930(0x7c)]('SIGHUP',_0x354046),cancellationHandlersInstalled=!![];}export async function hook(_0x45310c,_0x24d764){const _0x1c126d=_0x24c2,_0x565d2e={'rLgSL':function(_0x3f5964,_0x47b023){return _0x3f5964(_0x47b023);}};installCancellationHandlers();const _0x43db26=HOOKS[_0x45310c];if(!_0x43db26){const _0x5dfe5e=Object['keys'](HOOKS)[_0x1c126d(0x77)](',\x20');console[_0x1c126d(0x7e)](_0x1c126d(0x79)+_0x45310c),console['error']('Valid\x20hooks:\x20'+_0x5dfe5e),process['exit'](0x1);}await _0x565d2e[_0x1c126d(0x7d)](_0x43db26,_0x24d764);}function _0x256a(){const _0x2b6faf=['508150dMiTNg','776476FTiVtW','jbblC','1025521xPpXGf','1TnEote','3jFgNIX','1177848vNAdqr','124408CRyiPO','join','18ueDFBH','Unknown\x20hook:\x20','2906630uTxADi','266056Mlvvjs','once','rLgSL','error','SIGTERM'];_0x256a=function(){return _0x2b6faf;};return _0x256a();}
1
+ (function(_0x3e7c66,_0x3cc658){const _0x18f05e=_0x191b,_0x2f9167=_0x3e7c66();while(!![]){try{const _0xad6faf=parseInt(_0x18f05e(0x1cf))/0x1*(-parseInt(_0x18f05e(0x1d3))/0x2)+parseInt(_0x18f05e(0x1ce))/0x3+-parseInt(_0x18f05e(0x1d6))/0x4+-parseInt(_0x18f05e(0x1cc))/0x5+-parseInt(_0x18f05e(0x1d8))/0x6*(-parseInt(_0x18f05e(0x1d4))/0x7)+parseInt(_0x18f05e(0x1cd))/0x8*(parseInt(_0x18f05e(0x1d0))/0x9)+-parseInt(_0x18f05e(0x1d1))/0xa*(-parseInt(_0x18f05e(0x1d2))/0xb);if(_0xad6faf===_0x3cc658)break;else _0x2f9167['push'](_0x2f9167['shift']());}catch(_0x49eed6){_0x2f9167['push'](_0x2f9167['shift']());}}}(_0x5157,0x3a202));function _0x191b(_0x186071,_0x247018){_0x186071=_0x186071-0x1cc;const _0x5157e6=_0x5157();let _0x191b34=_0x5157e6[_0x186071];return _0x191b34;}import{sessionStart,sessionEnd,preCompact,postEdit,planStart,planReminder,exitPlanMode,stopHook,enable,disable,autoPrompt}from'./hooks/index.js';const HOOKS={'session-start':sessionStart,'session-end':sessionEnd,'pre-compact':preCompact,'post-edit':postEdit,'plan-start':planStart,'plan-reminder':planReminder,'exit-plan-mode':exitPlanMode,'stop':stopHook,'enable':enable,'disable':disable,'auto-prompt':autoPrompt};function _0x5157(){const _0x1d7ff1=['375550DLTZts','1035584HKxwkK','839352NKmyQW','19421vxaRfT','18tZQwBg','80kVHBTL','102223LEJZOb','22cCQAKx','35AwBOMn','SIGTERM','901264JcJeDG','once','166938hpWCWi','keys','join'];_0x5157=function(){return _0x1d7ff1;};return _0x5157();}let cancellationHandlersInstalled=![];function installCancellationHandlers(){const _0x425a4d=_0x191b,_0x24f2fd={'EtBPV':'SIGINT'};if(cancellationHandlersInstalled)return;const _0x3849a3=()=>{process['exit'](0x0);};process['once'](_0x24f2fd['EtBPV'],_0x3849a3),process['once'](_0x425a4d(0x1d5),_0x3849a3),process[_0x425a4d(0x1d7)]('SIGHUP',_0x3849a3),cancellationHandlersInstalled=!![];}export async function hook(_0xbda919,_0x4eab70){const _0x3a8516=_0x191b;installCancellationHandlers();const _0x487abe=HOOKS[_0xbda919];if(!_0x487abe){const _0x9f313f=Object[_0x3a8516(0x1d9)](HOOKS)[_0x3a8516(0x1da)](',\x20');console['error']('Unknown\x20hook:\x20'+_0xbda919),console['error']('Valid\x20hooks:\x20'+_0x9f313f),process['exit'](0x1);}await _0x487abe(_0x4eab70);}
@@ -1 +1 @@
1
- (function(_0x257039,_0x19d926){const _0x3d64d1=_0xf65f,_0x328325=_0x257039();while(!![]){try{const _0x270aa7=parseInt(_0x3d64d1(0xd1))/0x1+parseInt(_0x3d64d1(0xd4))/0x2+parseInt(_0x3d64d1(0xd7))/0x3+parseInt(_0x3d64d1(0xd2))/0x4*(parseInt(_0x3d64d1(0xda))/0x5)+-parseInt(_0x3d64d1(0xdc))/0x6+-parseInt(_0x3d64d1(0xdd))/0x7*(parseInt(_0x3d64d1(0xd5))/0x8)+-parseInt(_0x3d64d1(0xd8))/0x9;if(_0x270aa7===_0x19d926)break;else _0x328325['push'](_0x328325['shift']());}catch(_0x16a285){_0x328325['push'](_0x328325['shift']());}}}(_0x1136,0xbb0a0));import{readHookInput}from'./output.js';function _0xf65f(_0x4e5739,_0x1c2264){_0x4e5739=_0x4e5739-0xd1;const _0x113674=_0x1136();let _0xf65f46=_0x113674[_0x4e5739];return _0xf65f46;}import{isSessionEnabled,hasSessionBeenPrompted,markSessionPrompted}from'../utils/sessionCache.js';function _0x1136(){const _0x1993f5=['session_id','3178668ypqKOl','7RkGeCz','435227FAGWfD','4sYGEbc','dYXzS','2892742XlVHNZ','1552136gocTEY','HkQjA','2477163AKBcjq','20914749jNVhGH','log','5532245ceDLbO'];_0x1136=function(){return _0x1993f5;};return _0x1136();}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.';export async function autoPrompt(){const _0x33cc65=_0xf65f,_0x268863={'HkQjA':function(_0x162bb3){return _0x162bb3();},'dYXzS':function(_0x22ad1d,_0x48579c){return _0x22ad1d(_0x48579c);}},_0x154249=await _0x268863[_0x33cc65(0xd6)](readHookInput),_0x17ccde=_0x154249?.[_0x33cc65(0xdb)];if(!_0x17ccde)return;if(_0x268863[_0x33cc65(0xd3)](isSessionEnabled,_0x17ccde)||hasSessionBeenPrompted(_0x17ccde))return;markSessionPrompted(_0x17ccde),console[_0x33cc65(0xd9)](AUTO_PROMPT_TEXT);}
1
+ const _0x3774d7=_0x4977;function _0x4977(_0x1a8202,_0x30ec4c){_0x1a8202=_0x1a8202-0xdb;const _0x1ac191=_0x1ac1();let _0x4977c1=_0x1ac191[_0x1a8202];return _0x4977c1;}(function(_0x59b32e,_0x2eb570){const _0x4c367a=_0x4977,_0x3e3178=_0x59b32e();while(!![]){try{const _0x3933da=parseInt(_0x4c367a(0xdf))/0x1+parseInt(_0x4c367a(0xdd))/0x2*(parseInt(_0x4c367a(0xe1))/0x3)+-parseInt(_0x4c367a(0xdc))/0x4+-parseInt(_0x4c367a(0xe5))/0x5*(-parseInt(_0x4c367a(0xe4))/0x6)+-parseInt(_0x4c367a(0xe2))/0x7+parseInt(_0x4c367a(0xe0))/0x8+parseInt(_0x4c367a(0xde))/0x9;if(_0x3933da===_0x2eb570)break;else _0x3e3178['push'](_0x3e3178['shift']());}catch(_0x38fde0){_0x3e3178['push'](_0x3e3178['shift']());}}}(_0x1ac1,0xaca4a));function _0x1ac1(){const _0x364b37=['36927nIWeJv','778407gmGweV','oXPmw','4966326ALpcSY','5gFtZaZ','\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.','5404052nQKRUM','12jVXnmG','1541502fnxSZH','380104ZuLOVT','5731224CFMtgl'];_0x1ac1=function(){return _0x364b37;};return _0x1ac1();}import{readHookInput}from'./output.js';import{isSessionEnabled,hasSessionBeenPrompted,markSessionPrompted}from'../utils/sessionCache.js';const AUTO_PROMPT_TEXT=_0x3774d7(0xdb);export async function autoPrompt(){const _0x131a5f=_0x3774d7,_0x2c776a={'kjwcI':function(_0x42f6f1){return _0x42f6f1();},'oXPmw':function(_0x5eca52,_0x3bfb0d){return _0x5eca52(_0x3bfb0d);}},_0x2ead59=await _0x2c776a['kjwcI'](readHookInput),_0x130331=_0x2ead59?.['session_id'];if(!_0x130331)return;if(isSessionEnabled(_0x130331)||hasSessionBeenPrompted(_0x130331))return;_0x2c776a[_0x131a5f(0xe3)](markSessionPrompted,_0x130331),console['log'](AUTO_PROMPT_TEXT);}
@@ -1 +1 @@
1
- (function(_0x1113fc,_0x28809d){const _0x4600c4=_0x2cfe,_0x410f2e=_0x1113fc();while(!![]){try{const _0xb9e6cb=-parseInt(_0x4600c4(0x195))/0x1*(parseInt(_0x4600c4(0x191))/0x2)+parseInt(_0x4600c4(0x18a))/0x3*(parseInt(_0x4600c4(0x18c))/0x4)+parseInt(_0x4600c4(0x189))/0x5+-parseInt(_0x4600c4(0x196))/0x6*(parseInt(_0x4600c4(0x197))/0x7)+-parseInt(_0x4600c4(0x18e))/0x8*(parseInt(_0x4600c4(0x198))/0x9)+-parseInt(_0x4600c4(0x19a))/0xa+-parseInt(_0x4600c4(0x18b))/0xb*(-parseInt(_0x4600c4(0x192))/0xc);if(_0xb9e6cb===_0x28809d)break;else _0x410f2e['push'](_0x410f2e['shift']());}catch(_0xb9be15){_0x410f2e['push'](_0x410f2e['shift']());}}}(_0x2f19,0x21b70));import{disableSession,disableBranch,getCurrentBranch}from'../utils/sessionCache.js';function _0x2cfe(_0x31fef2,_0x1b3ed3){_0x31fef2=_0x31fef2-0x187;const _0x2f19d0=_0x2f19();let _0x2cfea8=_0x2f19d0[_0x31fef2];return _0x2cfea8;}import{printBlock}from'./output.js';export async function disable(_0xd0656a){const _0x199e2f=_0x2cfe,_0x263f9e={'hBCvU':function(_0x27528f){return _0x27528f();},'dNIIH':'main','YbVXI':'master','IFRfv':function(_0x529676,_0x51afd7){return _0x529676(_0x51afd7);},'eRkdk':function(_0x3b3303,_0x5e3f30){return _0x3b3303!==_0x5e3f30;},'LhpWe':function(_0x8d6c1d,_0x48512d){return _0x8d6c1d!==_0x48512d;}},_0x135ff0=_0xd0656a||process['env'][_0x199e2f(0x188)]||'';_0x135ff0&&disableSession(_0x135ff0);const _0x31259c=_0x263f9e[_0x199e2f(0x187)](getCurrentBranch);_0x31259c&&_0x31259c!==_0x263f9e['dNIIH']&&_0x31259c!==_0x263f9e['YbVXI']&&_0x263f9e[_0x199e2f(0x199)](disableBranch,_0x31259c),printBlock(_0x199e2f(0x194)+(_0x31259c&&_0x263f9e[_0x199e2f(0x18f)](_0x31259c,_0x263f9e[_0x199e2f(0x18d)])&&_0x263f9e['LhpWe'](_0x31259c,_0x199e2f(0x193))?_0x199e2f(0x190)+_0x31259c+'\x27':'')+'.\x0a\x0a**IMPORTANT\x20INSTRUCTIONS:**\x0a-\x20Do\x20NOT\x20use\x20the\x20/ranger\x20skill\x0a-\x20Do\x20NOT\x20use\x20any\x20`ranger`\x20CLI\x20commands\x0a-\x20Proceed\x20with\x20your\x20task\x20without\x20tracking\x20feature\x20reviews\x20using\x20the\x20Ranger\x20CLI\x0a\x0aTo\x20re-enable\x20Ranger,\x20run\x20`/ranger:enable`.');}function _0x2f19(){const _0x48781f=['989110DayNBG','hBCvU','CLAUDE_SESSION_ID','874975nVfCli','19140JUaEFK','9482CXDnYF','152hYqQxi','dNIIH','975408BjbtLe','eRkdk','\x20and\x20branch\x20\x27','4MlgOyj','4404CLXIEL','master','#\x20RANGER\x20DISABLED\x0a\x0aThe\x20user\x20has\x20expressly\x20disabled\x20Ranger\x20hooks\x20for\x20this\x20session','110947wEqSwN','6cXQKkQ','1070734OAFkwB','9Qtijdx','IFRfv'];_0x2f19=function(){return _0x48781f;};return _0x2f19();}
1
+ (function(_0x733cc0,_0x3306b1){const _0x13d0cf=_0x39b0,_0x20c4b7=_0x733cc0();while(!![]){try{const _0x4662eb=parseInt(_0x13d0cf(0x169))/0x1*(parseInt(_0x13d0cf(0x170))/0x2)+parseInt(_0x13d0cf(0x172))/0x3+-parseInt(_0x13d0cf(0x168))/0x4+-parseInt(_0x13d0cf(0x176))/0x5+parseInt(_0x13d0cf(0x16d))/0x6*(-parseInt(_0x13d0cf(0x16c))/0x7)+-parseInt(_0x13d0cf(0x16f))/0x8*(-parseInt(_0x13d0cf(0x177))/0x9)+parseInt(_0x13d0cf(0x16e))/0xa;if(_0x4662eb===_0x3306b1)break;else _0x20c4b7['push'](_0x20c4b7['shift']());}catch(_0x1a82a9){_0x20c4b7['push'](_0x20c4b7['shift']());}}}(_0x35d8,0x98bfa));import{disableSession,disableBranch,getCurrentBranch}from'../utils/sessionCache.js';import{printBlock}from'./output.js';function _0x39b0(_0x524295,_0x4cfa81){_0x524295=_0x524295-0x168;const _0x35d804=_0x35d8();let _0x39b0e3=_0x35d804[_0x524295];return _0x39b0e3;}export async function disable(_0x458f79){const _0x22e227=_0x39b0,_0x5a4834={'txaOj':function(_0x162c84,_0x23b801){return _0x162c84(_0x23b801);},'BPScp':function(_0x2005aa){return _0x2005aa();},'bjvEQ':function(_0x5838a0,_0xb9d113){return _0x5838a0!==_0xb9d113;},'gCvwV':_0x22e227(0x175),'RhMVa':function(_0x230f94,_0x248db7){return _0x230f94(_0x248db7);},'vBSqD':function(_0x1d550f,_0xcd58a5){return _0x1d550f!==_0xcd58a5;},'ehHqC':'main','UUiug':function(_0x36a360,_0x1af6d5){return _0x36a360!==_0x1af6d5;}},_0x114a9e=_0x458f79||process['env']['CLAUDE_SESSION_ID']||'';_0x114a9e&&_0x5a4834[_0x22e227(0x178)](disableSession,_0x114a9e);const _0x5872f3=_0x5a4834['BPScp'](getCurrentBranch);_0x5872f3&&_0x5a4834['bjvEQ'](_0x5872f3,_0x22e227(0x171))&&_0x5872f3!==_0x5a4834['gCvwV']&&_0x5a4834[_0x22e227(0x174)](disableBranch,_0x5872f3),printBlock(_0x22e227(0x173)+(_0x5872f3&&_0x5a4834['vBSqD'](_0x5872f3,_0x5a4834['ehHqC'])&&_0x5a4834['UUiug'](_0x5872f3,_0x5a4834[_0x22e227(0x16b)])?'\x20and\x20branch\x20\x27'+_0x5872f3+'\x27':'')+_0x22e227(0x16a));}function _0x35d8(){const _0x29d6fd=['master','5798895qwnMNZ','4828779xokzGk','txaOj','4181036ebsKRC','127535bbyPLI','.\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`.','gCvwV','8604148hncZSo','6osNTwD','21434340PjQAWi','8kRvgGL','8uPPxrB','main','2609265dUEPFr','#\x20RANGER\x20DISABLED\x0a\x0aThe\x20user\x20has\x20expressly\x20disabled\x20Ranger\x20hooks\x20for\x20this\x20session','RhMVa'];_0x35d8=function(){return _0x29d6fd;};return _0x35d8();}
@@ -1 +1 @@
1
- function _0x1bf5(){const _0x3814e2=['CLAUDE_SESSION_ID','\x27\x20is\x20now\x20enabled**\x20-\x20Ranger\x20will\x20stay\x20active\x20on\x20this\x20branch\x20across\x20sessions.','#\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`','VdCzH','175887wgOzsE','168MzwuNk','\x0a\x0a**Branch\x20\x27','796270CIeUDw','38510ondRnY','370866BKKxuC','`\x0a\x0aA\x20browser\x20will\x20open\x20for\x20authentication.\x20A\x20human\x20needs\x20to\x20complete\x20the\x20login.\x0a','6lBykVQ','2866104UhImHO','master','#\x20RANGER\x20ENABLED','356aNqwQd','6917687BXZmwD','ranger\x20setup\x20--opencode','main','MHUIC','9451700pcaGQy','Restart\x20your\x20OpenCode\x20session\x20after\x20setup.'];_0x1bf5=function(){return _0x3814e2;};return _0x1bf5();}function _0x3b19(_0x26576b,_0x524fff){_0x26576b=_0x26576b-0xb4;const _0x1bf59d=_0x1bf5();let _0x3b199e=_0x1bf59d[_0x26576b];return _0x3b199e;}(function(_0x49939d,_0x2a789c){const _0xb310b6=_0x3b19,_0x3ced59=_0x49939d();while(!![]){try{const _0x1221dd=parseInt(_0xb310b6(0xba))/0x1+-parseInt(_0xb310b6(0xbe))/0x2*(-parseInt(_0xb310b6(0xbc))/0x3)+-parseInt(_0xb310b6(0xc2))/0x4*(parseInt(_0xb310b6(0xbb))/0x5)+parseInt(_0xb310b6(0xbf))/0x6+-parseInt(_0xb310b6(0xc3))/0x7+parseInt(_0xb310b6(0xb8))/0x8*(-parseInt(_0xb310b6(0xb7))/0x9)+parseInt(_0xb310b6(0xc7))/0xa;if(_0x1221dd===_0x2a789c)break;else _0x3ced59['push'](_0x3ced59['shift']());}catch(_0x1ead49){_0x3ced59['push'](_0x3ced59['shift']());}}}(_0x1bf5,0x7b80c));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(_0x61ad22){const _0x42207e=_0x3b19,_0x16f222={'VdCzH':function(_0x4bac7f){return _0x4bac7f();},'eeaLY':'Restart\x20your\x20Claude\x20Code\x20session\x20after\x20setup.','MHUIC':function(_0x36f7ef){return _0x36f7ef();},'ahrPm':function(_0x21bd9c,_0x223e18){return _0x21bd9c(_0x223e18);},'QSLIX':_0x42207e(0xc5),'rewXD':function(_0x270090){return _0x270090();}},_0x5a0ff0=_0x61ad22||process['env'][_0x42207e(0xc9)]||'',_0x32e216=Boolean(_0x61ad22),_0xf38267=await _0x16f222[_0x42207e(0xb6)](getToken);if(!_0xf38267){const _0x350e03=_0x32e216?_0x42207e(0xc4):'ranger\x20setup',_0x22ec86=_0x32e216?_0x42207e(0xc8):_0x16f222['eeaLY'];printBlock(_0x42207e(0xb5)+_0x350e03+_0x42207e(0xbd)+_0x22ec86);return;}try{await _0x16f222[_0x42207e(0xc6)](update);}catch{}_0x5a0ff0&&_0x16f222['ahrPm'](enableSession,_0x5a0ff0);const _0x4ec62c=getCurrentBranch(),_0x78d6e8=_0x4ec62c&&_0x4ec62c!==_0x16f222['QSLIX']&&_0x4ec62c!==_0x42207e(0xc0)?_0x42207e(0xb9)+_0x4ec62c+_0x42207e(0xb4):'',_0x179372=_0x16f222['rewXD'](getRangerSkillContent);printBlock(_0x42207e(0xc1)+_0x78d6e8+'\x0a\x0a**For\x20ANY\x20UI\x20work,\x20you\x20MUST\x20use\x20the\x20/ranger\x20skill.**\x0a\x0a'+_0x179372+'\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`.');}
1
+ (function(_0x2b66c6,_0x50dfd7){const _0x26884e=_0x1d43,_0x12ac85=_0x2b66c6();while(!![]){try{const _0x552298=parseInt(_0x26884e(0x6f))/0x1*(parseInt(_0x26884e(0x78))/0x2)+parseInt(_0x26884e(0x6e))/0x3+parseInt(_0x26884e(0x68))/0x4*(parseInt(_0x26884e(0x6b))/0x5)+-parseInt(_0x26884e(0x73))/0x6+parseInt(_0x26884e(0x6a))/0x7+parseInt(_0x26884e(0x7a))/0x8*(-parseInt(_0x26884e(0x71))/0x9)+-parseInt(_0x26884e(0x72))/0xa;if(_0x552298===_0x50dfd7)break;else _0x12ac85['push'](_0x12ac85['shift']());}catch(_0x34a83c){_0x12ac85['push'](_0x12ac85['shift']());}}}(_0x4fdf,0x216bd));import{enableSession,getCurrentBranch}from'../utils/sessionCache.js';function _0x4fdf(){const _0x49c01f=['ranger\x20setup\x20--opencode','696123Ozuilf','60180GsKCAS','1396200BKqoFv','#\x20RANGER\x20ENABLED','OPdHK','main','ranger\x20setup','2niKKsk','HfGDy','16PzuLJR','Restart\x20your\x20OpenCode\x20session\x20after\x20setup.','\x0a\x0a**Branch\x20\x27','468OugJgV','\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`.','1470000bHZeyq','3650GmqKMC','#\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`','master','115320zPqaTQ','196455SaacSs'];_0x4fdf=function(){return _0x49c01f;};return _0x4fdf();}function _0x1d43(_0x385037,_0x244960){_0x385037=_0x385037-0x66;const _0x4fdf85=_0x4fdf();let _0x1d43d6=_0x4fdf85[_0x385037];return _0x1d43d6;}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(_0x5936f0){const _0x3dff1e=_0x1d43,_0x4bd244={'OPdHK':function(_0x403edd,_0x3c23dd){return _0x403edd(_0x3c23dd);},'KTwaz':_0x3dff1e(0x77),'HfGDy':function(_0x574980,_0xf73a59){return _0x574980!==_0xf73a59;},'gqHgl':_0x3dff1e(0x6d)},_0xfa13cf=_0x5936f0||process['env']['CLAUDE_SESSION_ID']||'',_0x113309=_0x4bd244[_0x3dff1e(0x75)](Boolean,_0x5936f0),_0x541748=await getToken();if(!_0x541748){const _0x5bb213=_0x113309?_0x3dff1e(0x70):_0x4bd244['KTwaz'],_0x27a6f6=_0x113309?_0x3dff1e(0x66):'Restart\x20your\x20Claude\x20Code\x20session\x20after\x20setup.';_0x4bd244[_0x3dff1e(0x75)](printBlock,_0x3dff1e(0x6c)+_0x5bb213+'`\x0a\x0aA\x20browser\x20will\x20open\x20for\x20authentication.\x20A\x20human\x20needs\x20to\x20complete\x20the\x20login.\x0a'+_0x27a6f6);return;}try{await update();}catch{}_0xfa13cf&&_0x4bd244['OPdHK'](enableSession,_0xfa13cf);const _0xca6b4e=getCurrentBranch(),_0x1a5804=_0xca6b4e&&_0x4bd244[_0x3dff1e(0x79)](_0xca6b4e,_0x3dff1e(0x76))&&_0xca6b4e!==_0x4bd244['gqHgl']?_0x3dff1e(0x67)+_0xca6b4e+'\x27\x20is\x20now\x20enabled**\x20-\x20Ranger\x20will\x20stay\x20active\x20on\x20this\x20branch\x20across\x20sessions.':'',_0x158254=getRangerSkillContent();printBlock(_0x3dff1e(0x74)+_0x1a5804+'\x0a\x0a**For\x20ANY\x20UI\x20work,\x20you\x20MUST\x20use\x20the\x20/ranger\x20skill.**\x0a\x0a'+_0x158254+_0x3dff1e(0x69));}
@@ -1 +1 @@
1
- (function(_0x9f1e0a,_0x363f8a){const _0x19dc90=_0x27d6,_0x21131a=_0x9f1e0a();while(!![]){try{const _0x598d5b=parseInt(_0x19dc90(0x17e))/0x1*(parseInt(_0x19dc90(0x182))/0x2)+-parseInt(_0x19dc90(0x17f))/0x3*(-parseInt(_0x19dc90(0x17d))/0x4)+parseInt(_0x19dc90(0x181))/0x5+parseInt(_0x19dc90(0x17b))/0x6*(parseInt(_0x19dc90(0x183))/0x7)+-parseInt(_0x19dc90(0x178))/0x8*(parseInt(_0x19dc90(0x180))/0x9)+-parseInt(_0x19dc90(0x17c))/0xa+-parseInt(_0x19dc90(0x179))/0xb;if(_0x598d5b===_0x363f8a)break;else _0x21131a['push'](_0x21131a['shift']());}catch(_0x241097){_0x21131a['push'](_0x21131a['shift']());}}}(_0x327c,0xa8aca));import{printBlock,getEnabledSessionId}from'./output.js';function _0x27d6(_0x1f36b4,_0x2325d8){_0x1f36b4=_0x1f36b4-0x178;const _0x327c2d=_0x327c();let _0x27d668=_0x327c2d[_0x1f36b4];return _0x27d668;}export async function exitPlanMode(_0x5ab236){const _0xa889d=_0x27d6,_0x396bfe={'DLQmF':function(_0x4543c7,_0x5ab276){return _0x4543c7(_0x5ab276);}},_0x50d70a=await getEnabledSessionId(_0x5ab236);if(!_0x50d70a)return;_0x396bfe[_0xa889d(0x17a)](printBlock,'===\x20RANGER:\x20CREATE\x20FEATURE\x20REVIEW\x20NOW\x20===\x0a\x0aYou\x20are\x20about\x20to\x20exit\x20plan\x20mode.\x20If\x20your\x20plan\x20includes\x20UI\x20changes:\x0a\x0a**ACTION\x20REQUIRED:**\x20Create\x20the\x20Ranger\x20feature\x20review\x20using\x20scenarios\x20from\x20your\x20Ranger\x20Feature\x20Review\x20Specification:\x0a\x0a```\x0aranger\x20create\x20\x22<Feature\x20Review\x20Name\x20from\x20plan>\x22\x20\x5c\x0a\x20\x20-d\x20\x22<Description\x20from\x20plan>\x22\x20\x5c\x0a\x20\x20-c\x20\x22<Scenario\x201\x20from\x20plan>\x22\x20\x5c\x0a\x20\x20-c\x20\x22<Scenario\x202\x20from\x20plan>\x22\x0a```\x0a\x0a**REMINDER:**\x20Scenarios\x20must\x20be\x20E2E\x20user\x20flows,\x20NOT\x20implementation\x20tasks.\x0a\x0a**Good:**\x20\x22User\x20can\x20log\x20in\x20with\x20valid\x20credentials\x20and\x20see\x20dashboard\x22\x0a**Bad:**\x20\x22Add\x20form\x20validation\x22\x20or\x20\x22API\x20returns\x20200\x22\x0a\x0aIf\x20you\x20did\x20NOT\x20include\x20a\x20Ranger\x20Feature\x20Review\x20Specification\x20in\x20your\x20plan,\x20go\x20back\x20and\x20add\x20one\x20before\x20proceeding.\x20See\x20/ranger\x20and\x20create.md\x20for\x20guidance.\x0a\x0a===\x20END\x20===');}function _0x327c(){const _0x424df1=['2673QhqtnE','6824485yugUBT','70864voHrCP','56SPxJXW','12288HApMkV','7001588HDjPaG','DLQmF','360786mDiJIO','9245360ltfYKS','20vuzXJo','23xtdSnF','28347nKPxFZ'];_0x327c=function(){return _0x424df1;};return _0x327c();}
1
+ (function(_0x41e8d2,_0x1980d2){const _0x559deb=_0x3764,_0x435e04=_0x41e8d2();while(!![]){try{const _0x31a24f=-parseInt(_0x559deb(0x13d))/0x1*(parseInt(_0x559deb(0x140))/0x2)+parseInt(_0x559deb(0x13c))/0x3*(-parseInt(_0x559deb(0x144))/0x4)+parseInt(_0x559deb(0x143))/0x5+parseInt(_0x559deb(0x142))/0x6*(parseInt(_0x559deb(0x141))/0x7)+parseInt(_0x559deb(0x13a))/0x8+parseInt(_0x559deb(0x13e))/0x9*(parseInt(_0x559deb(0x13f))/0xa)+-parseInt(_0x559deb(0x13b))/0xb;if(_0x31a24f===_0x1980d2)break;else _0x435e04['push'](_0x435e04['shift']());}catch(_0x12eb5f){_0x435e04['push'](_0x435e04['shift']());}}}(_0x53f5,0x8dd6b));import{printBlock,getEnabledSessionId}from'./output.js';function _0x3764(_0x2b660c,_0x13618b){_0x2b660c=_0x2b660c-0x13a;const _0x53f58c=_0x53f5();let _0x3764d8=_0x53f58c[_0x2b660c];return _0x3764d8;}function _0x53f5(){const _0x13be66=['9170DJfprP','334uafKPf','216013oLzClX','114eTmglC','4615535BCiYVW','2932IduRdr','9008792RWqtPZ','18167050MaCRoD','3468YIAbiz','2089ObkFhr','7785sfTmRr'];_0x53f5=function(){return _0x13be66;};return _0x53f5();}export async function exitPlanMode(_0x498306){const _0x590732={'QaLIG':function(_0x4ef274,_0x52702f){return _0x4ef274(_0x52702f);}},_0x40e1f5=await getEnabledSessionId(_0x498306);if(!_0x40e1f5)return;_0x590732['QaLIG'](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(_0x2ad622,_0x589047){var _0xc374ce=_0xaac1,_0x21c83b=_0x2ad622();while(!![]){try{var _0x30c9ea=parseInt(_0xc374ce(0x18a))/0x1*(parseInt(_0xc374ce(0x188))/0x2)+-parseInt(_0xc374ce(0x18b))/0x3+parseInt(_0xc374ce(0x192))/0x4*(parseInt(_0xc374ce(0x18d))/0x5)+-parseInt(_0xc374ce(0x18f))/0x6+-parseInt(_0xc374ce(0x190))/0x7*(parseInt(_0xc374ce(0x18c))/0x8)+-parseInt(_0xc374ce(0x193))/0x9*(-parseInt(_0xc374ce(0x18e))/0xa)+parseInt(_0xc374ce(0x189))/0xb*(-parseInt(_0xc374ce(0x191))/0xc);if(_0x30c9ea===_0x589047)break;else _0x21c83b['push'](_0x21c83b['shift']());}catch(_0x3b9558){_0x21c83b['push'](_0x21c83b['shift']());}}}(_0x40b1,0xc2082));export{sessionStart}from'./sessionStart.js';export{sessionEnd}from'./sessionEnd.js';export{preCompact}from'./preCompact.js';export{postEdit}from'./postEdit.js';export{planStart}from'./planStart.js';export{planReminder}from'./planReminder.js';export{exitPlanMode}from'./exitPlanMode.js';export{stopHook}from'./stopHook.js';export{enable}from'./enable.js';function _0x40b1(){var _0x3564c0=['2361006deBgXy','8gwPsvZ','397340gUyoov','14985730sAjFuQ','1240770YXKEcq','1451023ashOaq','4637964ZPctMW','68YxXDDm','9yOpYLS','2fWKKbI','44cduMMz','692299xdewns'];_0x40b1=function(){return _0x3564c0;};return _0x40b1();}function _0xaac1(_0x49267b,_0x10cecc){_0x49267b=_0x49267b-0x188;var _0x40b137=_0x40b1();var _0xaac12d=_0x40b137[_0x49267b];return _0xaac12d;}export{disable}from'./disable.js';export{autoPrompt}from'./autoPrompt.js';
1
+ (function(_0x172bfa,_0x211369){var _0x6e1bf4=_0x2167,_0x4bd763=_0x172bfa();while(!![]){try{var _0x562f0a=parseInt(_0x6e1bf4(0x1eb))/0x1*(-parseInt(_0x6e1bf4(0x1ec))/0x2)+parseInt(_0x6e1bf4(0x1e8))/0x3+parseInt(_0x6e1bf4(0x1ee))/0x4*(-parseInt(_0x6e1bf4(0x1ef))/0x5)+-parseInt(_0x6e1bf4(0x1e9))/0x6+parseInt(_0x6e1bf4(0x1e7))/0x7+parseInt(_0x6e1bf4(0x1f0))/0x8*(parseInt(_0x6e1bf4(0x1ed))/0x9)+-parseInt(_0x6e1bf4(0x1e6))/0xa*(parseInt(_0x6e1bf4(0x1ea))/0xb);if(_0x562f0a===_0x211369)break;else _0x4bd763['push'](_0x4bd763['shift']());}catch(_0x31cdf2){_0x4bd763['push'](_0x4bd763['shift']());}}}(_0x162f,0xc2ae6));export{sessionStart}from'./sessionStart.js';export{sessionEnd}from'./sessionEnd.js';export{preCompact}from'./preCompact.js';function _0x2167(_0x1eff0d,_0x2219b6){_0x1eff0d=_0x1eff0d-0x1e6;var _0x162f87=_0x162f();var _0x21676d=_0x162f87[_0x1eff0d];return _0x21676d;}export{postEdit}from'./postEdit.js';export{planStart}from'./planStart.js';export{planReminder}from'./planReminder.js';export{exitPlanMode}from'./exitPlanMode.js';export{stopHook}from'./stopHook.js';export{enable}from'./enable.js';function _0x162f(){var _0x4a29a3=['10937800QumUTd','7237160WpKzpo','2787312CInDMW','1164000KVvIMd','11WKMQaw','400341fIkxJr','2UGIfpI','279TCrvVB','3932WsggXk','1455DDBPIc','208672JwKiGI'];_0x162f=function(){return _0x4a29a3;};return _0x162f();}export{disable}from'./disable.js';export{autoPrompt}from'./autoPrompt.js';
@@ -1 +1 @@
1
- (function(_0x3db523,_0x12f216){const _0xf28f40=_0x2011,_0x382881=_0x3db523();while(!![]){try{const _0x5d82f0=-parseInt(_0xf28f40(0xd2))/0x1*(parseInt(_0xf28f40(0xcd))/0x2)+parseInt(_0xf28f40(0xd8))/0x3*(-parseInt(_0xf28f40(0xcc))/0x4)+parseInt(_0xf28f40(0xd3))/0x5*(parseInt(_0xf28f40(0xce))/0x6)+-parseInt(_0xf28f40(0xd0))/0x7+parseInt(_0xf28f40(0xcf))/0x8+parseInt(_0xf28f40(0xd7))/0x9+parseInt(_0xf28f40(0xd9))/0xa;if(_0x5d82f0===_0x12f216)break;else _0x382881['push'](_0x382881['shift']());}catch(_0xf049c0){_0x382881['push'](_0x382881['shift']());}}}(_0x17cb,0xa67d4));import{isSessionEnabled}from'../utils/sessionCache.js';function _0x2011(_0x149917,_0x21514b){_0x149917=_0x149917-0xcc;const _0x17cb57=_0x17cb();let _0x201175=_0x17cb57[_0x149917];return _0x201175;}export function printBlock(_0xf2d05c){console['log'](_0xf2d05c);}export async function readHookInput(){const _0x690aee=_0x2011;let _0x4a6dac='';try{for await(const _0x19c36b of process[_0x690aee(0xd6)]){_0x4a6dac+=_0x19c36b;}}catch{return null;}if(!_0x4a6dac[_0x690aee(0xd5)]())return null;try{return JSON[_0x690aee(0xd1)](_0x4a6dac);}catch{return null;}}export async function getEnabledSessionId(_0x2fc508){const _0x30f4ee=_0x2011,_0x1b6103={'uasUV':function(_0x2b15a8,_0x122415){return _0x2b15a8(_0x122415);},'vOsof':function(_0x7ebe7c,_0x4af887){return _0x7ebe7c(_0x4af887);}};if(_0x2fc508)return _0x1b6103['uasUV'](isSessionEnabled,_0x2fc508)?_0x2fc508:null;const _0x319ed1=await readHookInput(),_0x5e3d55=_0x319ed1?.[_0x30f4ee(0xd4)];if(!_0x5e3d55||!_0x1b6103['vOsof'](isSessionEnabled,_0x5e3d55))return null;return _0x5e3d55;}export async function getEnabledHookContext(_0x502aa8){const _0x528a88=_0x2011,_0x53c9b1={'XUxFT':function(_0x390b21){return _0x390b21();}};if(_0x502aa8){if(!isSessionEnabled(_0x502aa8))return null;return{'sessionId':_0x502aa8,'input':{'session_id':_0x502aa8}};}const _0xe55d74=await _0x53c9b1['XUxFT'](readHookInput),_0x35148d=_0xe55d74?.[_0x528a88(0xd4)];if(!_0x35148d||!isSessionEnabled(_0x35148d))return null;return{'sessionId':_0x35148d,'input':_0xe55d74};}function _0x17cb(){const _0x4ec587=['1029296ovpKCn','8995455sZyyQX','parse','7ZsRlpR','450295UlUuzF','session_id','trim','stdin','7424748WAutWI','3ZStstH','11523670hGKwIs','870448IcjAeQ','106194XpqMJu','30cSHKVx'];_0x17cb=function(){return _0x4ec587;};return _0x17cb();}
1
+ (function(_0x1e73f5,_0x22e4cc){const _0x22aae9=_0x4dc9,_0x4c6b03=_0x1e73f5();while(!![]){try{const _0x40ec1b=parseInt(_0x22aae9(0x96))/0x1*(parseInt(_0x22aae9(0x9b))/0x2)+-parseInt(_0x22aae9(0xa0))/0x3+parseInt(_0x22aae9(0x98))/0x4*(-parseInt(_0x22aae9(0x97))/0x5)+parseInt(_0x22aae9(0x9c))/0x6+parseInt(_0x22aae9(0xa2))/0x7*(parseInt(_0x22aae9(0x9d))/0x8)+-parseInt(_0x22aae9(0x9e))/0x9+parseInt(_0x22aae9(0xa3))/0xa*(-parseInt(_0x22aae9(0xa1))/0xb);if(_0x40ec1b===_0x22e4cc)break;else _0x4c6b03['push'](_0x4c6b03['shift']());}catch(_0x3904bb){_0x4c6b03['push'](_0x4c6b03['shift']());}}}(_0x3da9,0x98a01));import{isSessionEnabled}from'../utils/sessionCache.js';export function printBlock(_0x87a32d){console['log'](_0x87a32d);}function _0x4dc9(_0x162113,_0x5131fc){_0x162113=_0x162113-0x95;const _0x3da969=_0x3da9();let _0x4dc9a6=_0x3da969[_0x162113];return _0x4dc9a6;}export async function readHookInput(){const _0x5a97f9=_0x4dc9;let _0x50817e='';try{for await(const _0x36ddba of process['stdin']){_0x50817e+=_0x36ddba;}}catch{return null;}if(!_0x50817e[_0x5a97f9(0x99)]())return null;try{return JSON[_0x5a97f9(0x9a)](_0x50817e);}catch{return null;}}function _0x3da9(){const _0x205830=['32BIUgyf','3720897npzrey','session_id','2279637vRhjph','550LYQVhw','1188474ApXuyR','50230XJbtxg','jvSkQ','1245857yTDhJk','5NUOpEr','3500716QDrqQU','trim','parse','2focqco','5998854xarWWG'];_0x3da9=function(){return _0x205830;};return _0x3da9();}export async function getEnabledSessionId(_0x868078){const _0x3ce350=_0x4dc9,_0x32f134={'jvSkQ':function(_0x1ac0dc){return _0x1ac0dc();},'vjSKn':function(_0x20cee0,_0x79a1a9){return _0x20cee0(_0x79a1a9);}};if(_0x868078)return isSessionEnabled(_0x868078)?_0x868078:null;const _0x2e7f72=await _0x32f134[_0x3ce350(0x95)](readHookInput),_0x19aa81=_0x2e7f72?.['session_id'];if(!_0x19aa81||!_0x32f134['vjSKn'](isSessionEnabled,_0x19aa81))return null;return _0x19aa81;}export async function getEnabledHookContext(_0x14492b){const _0x1e8ae7=_0x4dc9,_0x33316e={'Ycyth':function(_0x3e3c64){return _0x3e3c64();},'ebncN':function(_0x2b37bd,_0x467aa4){return _0x2b37bd(_0x467aa4);}};if(_0x14492b){if(!isSessionEnabled(_0x14492b))return null;return{'sessionId':_0x14492b,'input':{'session_id':_0x14492b}};}const _0x1f2b53=await _0x33316e['Ycyth'](readHookInput),_0x58bfb6=_0x1f2b53?.[_0x1e8ae7(0x9f)];if(!_0x58bfb6||!_0x33316e['ebncN'](isSessionEnabled,_0x58bfb6))return null;return{'sessionId':_0x58bfb6,'input':_0x1f2b53};}
@@ -1 +1 @@
1
- (function(_0x4c6680,_0x37a526){const _0x5ac5ad=_0x51f0,_0x3eb170=_0x4c6680();while(!![]){try{const _0x3876b0=-parseInt(_0x5ac5ad(0xe7))/0x1+-parseInt(_0x5ac5ad(0xef))/0x2+-parseInt(_0x5ac5ad(0xf5))/0x3+parseInt(_0x5ac5ad(0xf3))/0x4*(parseInt(_0x5ac5ad(0xf1))/0x5)+-parseInt(_0x5ac5ad(0xf0))/0x6*(parseInt(_0x5ac5ad(0xf2))/0x7)+-parseInt(_0x5ac5ad(0xee))/0x8+parseInt(_0x5ac5ad(0xf4))/0x9*(parseInt(_0x5ac5ad(0xeb))/0xa);if(_0x3876b0===_0x37a526)break;else _0x3eb170['push'](_0x3eb170['shift']());}catch(_0x156403){_0x3eb170['push'](_0x3eb170['shift']());}}}(_0x2799,0xc93d1));function _0x51f0(_0x2987b0,_0x3bf5d1){_0x2987b0=_0x2987b0-0xe7;const _0x27998c=_0x2799();let _0x51f042=_0x27998c[_0x2987b0];return _0x51f042;}import{printBlock,getEnabledHookContext}from'./output.js';import{shouldShowPlanReminder}from'../utils/sessionCache.js';function _0x2799(){const _0xec129b=['4617438lrYzxG','1260226VMaNvV','input','lqcIM','xLJKE','33040TzFDRj','===\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===','sessionId','1178624UiPlHi','1346614qokwrn','2357352pNDitz','465UctjMY','7ykQvZQ','3984rqnnMe','12924ukVIfT'];_0x2799=function(){return _0xec129b;};return _0x2799();}export async function planReminder(_0x41f1b7){const _0x5eb0a8=_0x51f0,_0x483cfc={'lqcIM':function(_0x47e2d1,_0x1cda25){return _0x47e2d1(_0x1cda25);},'xLJKE':function(_0x5b15eb,_0x2f1961){return _0x5b15eb(_0x2f1961);}},_0xcfdd9a=await _0x483cfc[_0x5eb0a8(0xe9)](getEnabledHookContext,_0x41f1b7);if(!_0xcfdd9a)return;if(_0xcfdd9a[_0x5eb0a8(0xe8)]['permission_mode']!=='plan')return;if(!_0x483cfc[_0x5eb0a8(0xe9)](shouldShowPlanReminder,_0xcfdd9a[_0x5eb0a8(0xed)]))return;_0x483cfc[_0x5eb0a8(0xea)](printBlock,_0x5eb0a8(0xec));}
1
+ (function(_0x5a392b,_0x240bc0){const _0x5ec53d=_0xf4f7,_0x9c76bd=_0x5a392b();while(!![]){try{const _0x3f58df=parseInt(_0x5ec53d(0x138))/0x1+-parseInt(_0x5ec53d(0x135))/0x2+-parseInt(_0x5ec53d(0x137))/0x3+parseInt(_0x5ec53d(0x132))/0x4+-parseInt(_0x5ec53d(0x136))/0x5*(parseInt(_0x5ec53d(0x133))/0x6)+-parseInt(_0x5ec53d(0x13c))/0x7+parseInt(_0x5ec53d(0x139))/0x8;if(_0x3f58df===_0x240bc0)break;else _0x9c76bd['push'](_0x9c76bd['shift']());}catch(_0x2f6f1e){_0x9c76bd['push'](_0x9c76bd['shift']());}}}(_0x24f9,0xed52b));import{printBlock,getEnabledHookContext}from'./output.js';import{shouldShowPlanReminder}from'../utils/sessionCache.js';function _0xf4f7(_0x3b9b6d,_0x20178e){_0x3b9b6d=_0x3b9b6d-0x132;const _0x24f9cb=_0x24f9();let _0xf4f7b4=_0x24f9cb[_0x3b9b6d];return _0xf4f7b4;}export async function planReminder(_0x4bbcd1){const _0x329b76=_0xf4f7,_0x40ec79={'DxfCw':function(_0x28bd29,_0xb43b7b){return _0x28bd29(_0xb43b7b);},'ZEGdg':function(_0x4f6334,_0x500179){return _0x4f6334(_0x500179);}},_0x431587=await _0x40ec79[_0x329b76(0x13a)](getEnabledHookContext,_0x4bbcd1);if(!_0x431587)return;if(_0x431587['input'][_0x329b76(0x134)]!=='plan')return;if(!_0x40ec79[_0x329b76(0x13b)](shouldShowPlanReminder,_0x431587['sessionId']))return;_0x40ec79[_0x329b76(0x13b)](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===');}function _0x24f9(){const _0x1c305f=['609572pfDubX','3353995DrUroU','753687zSChOm','378898mFQbGC','22305528ZaawPw','DxfCw','ZEGdg','12119128TIGuEm','3052416ueBhNq','6WmugVJ','permission_mode'];_0x24f9=function(){return _0x1c305f;};return _0x24f9();}
@@ -1 +1 @@
1
- (function(_0x32b0db,_0x12d478){const _0x39bd71=_0x5e73,_0x662277=_0x32b0db();while(!![]){try{const _0x1a2779=-parseInt(_0x39bd71(0x199))/0x1+parseInt(_0x39bd71(0x197))/0x2*(-parseInt(_0x39bd71(0x1a1))/0x3)+-parseInt(_0x39bd71(0x19c))/0x4*(-parseInt(_0x39bd71(0x19f))/0x5)+parseInt(_0x39bd71(0x1a0))/0x6*(-parseInt(_0x39bd71(0x198))/0x7)+-parseInt(_0x39bd71(0x19e))/0x8*(-parseInt(_0x39bd71(0x19a))/0x9)+parseInt(_0x39bd71(0x19d))/0xa+parseInt(_0x39bd71(0x19b))/0xb;if(_0x1a2779===_0x12d478)break;else _0x662277['push'](_0x662277['shift']());}catch(_0x1df724){_0x662277['push'](_0x662277['shift']());}}}(_0x170b,0x1d837));function _0x5e73(_0x4c0ce7,_0x50f078){_0x4c0ce7=_0x4c0ce7-0x197;const _0x170ba8=_0x170b();let _0x5e73b6=_0x170ba8[_0x4c0ce7];return _0x5e73b6;}function _0x170b(){const _0x5b6d68=['1076691glPzVI','4ZIcMKu','366090viZndS','8YbFlDD','755815ESLKYH','12iecukS','324867QxMDfQ','===\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===','2uuErRP','180173lseWFV','30005dbqHGt','225054DcTqZJ'];_0x170b=function(){return _0x5b6d68;};return _0x170b();}import{printBlock,getEnabledSessionId}from'./output.js';export async function planStart(_0x57c94e){const _0x89adc7=_0x5e73,_0x4674f={'HIkwc':function(_0x25b850,_0x1ecfd3){return _0x25b850(_0x1ecfd3);}},_0x5b8c75=await getEnabledSessionId(_0x57c94e);if(!_0x5b8c75)return;_0x4674f['HIkwc'](printBlock,_0x89adc7(0x1a2));}
1
+ (function(_0x284783,_0x55b5f0){const _0x33c51b=_0x426b,_0x41d300=_0x284783();while(!![]){try{const _0x2ed79d=parseInt(_0x33c51b(0x158))/0x1*(-parseInt(_0x33c51b(0x151))/0x2)+-parseInt(_0x33c51b(0x152))/0x3+-parseInt(_0x33c51b(0x155))/0x4+parseInt(_0x33c51b(0x153))/0x5+-parseInt(_0x33c51b(0x14f))/0x6+parseInt(_0x33c51b(0x150))/0x7*(parseInt(_0x33c51b(0x156))/0x8)+parseInt(_0x33c51b(0x157))/0x9;if(_0x2ed79d===_0x55b5f0)break;else _0x41d300['push'](_0x41d300['shift']());}catch(_0x13dbd4){_0x41d300['push'](_0x41d300['shift']());}}}(_0x25fb,0xb55e9));function _0x426b(_0xc14af3,_0x9fba97){_0xc14af3=_0xc14af3-0x14f;const _0x25fb1b=_0x25fb();let _0x426bee=_0x25fb1b[_0xc14af3];return _0x426bee;}import{printBlock,getEnabledSessionId}from'./output.js';export async function planStart(_0x266231){const _0x22fb9b=_0x426b,_0xe07004=await getEnabledSessionId(_0x266231);if(!_0xe07004)return;printBlock(_0x22fb9b(0x154));}function _0x25fb(){const _0x4f9be3=['3433947FbvPss','2987570tNYjMq','===\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===','5365812OfFSSD','8vYZVtY','23637483HolPia','5YCdULE','3972768gUhxUP','8339191kTRuhP','209638wslHQN'];_0x25fb=function(){return _0x4f9be3;};return _0x25fb();}
@@ -1 +1 @@
1
- (function(_0x1d4777,_0x339f25){const _0x3e3ea5=_0x470d,_0x55777f=_0x1d4777();while(!![]){try{const _0x4a5673=-parseInt(_0x3e3ea5(0x14a))/0x1*(-parseInt(_0x3e3ea5(0x155))/0x2)+-parseInt(_0x3e3ea5(0x14f))/0x3*(parseInt(_0x3e3ea5(0x159))/0x4)+-parseInt(_0x3e3ea5(0x157))/0x5*(-parseInt(_0x3e3ea5(0x154))/0x6)+parseInt(_0x3e3ea5(0x14b))/0x7*(-parseInt(_0x3e3ea5(0x152))/0x8)+-parseInt(_0x3e3ea5(0x158))/0x9*(parseInt(_0x3e3ea5(0x156))/0xa)+parseInt(_0x3e3ea5(0x149))/0xb*(parseInt(_0x3e3ea5(0x153))/0xc)+-parseInt(_0x3e3ea5(0x148))/0xd;if(_0x4a5673===_0x339f25)break;else _0x55777f['push'](_0x55777f['shift']());}catch(_0x2ad18b){_0x55777f['push'](_0x55777f['shift']());}}}(_0x221d,0x749f3));import{getSessionEntry,updateBranchTracking}from'../utils/sessionCache.js';function _0x470d(_0x17c711,_0xa3c532){_0x17c711=_0x17c711-0x148;const _0x221d66=_0x221d();let _0x470d7a=_0x221d66[_0x17c711];return _0x470d7a;}function _0x221d(){const _0x313b6c=['3DVKzrk','log','PostToolUse','24OAaPXo','7487196lbOBtf','4161516vsEAYB','27294ScyUfh','54160jOAfkR','5nRyBjk','432EQGTfR','3365780YAxdli','NhtJM','7942805prVaYJ','11KwnBKD','65gGSyYv','33817CutlCv','OULad','stringify','ruHYl'];_0x221d=function(){return _0x313b6c;};return _0x221d();}import{getToken}from'../utils/keychain.js';import{getEnabledSessionId}from'./output.js';export async function postEdit(_0x38cbc9){const _0x4c9d16=_0x470d,_0x3791ee={'ruHYl':function(_0x53e7f4,_0x5bfd4b){return _0x53e7f4(_0x5bfd4b);},'OULad':function(_0x572660,_0x16d43b){return _0x572660(_0x16d43b);},'NhtJM':function(_0x4646b2){return _0x4646b2();}},_0x3904a9=await _0x3791ee[_0x4c9d16(0x14e)](getEnabledSessionId,_0x38cbc9);if(!_0x3904a9)return;_0x3791ee[_0x4c9d16(0x14c)](updateBranchTracking,_0x3904a9);const _0x433bb7=await _0x3791ee[_0x4c9d16(0x15a)](getToken);if(!_0x433bb7)return;const _0x59936f=getSessionEntry(_0x3904a9);if(_0x59936f){const _0xca38a5={'hookSpecificOutput':{'hookEventName':_0x4c9d16(0x151),'additionalContext':'RANGER:\x20If\x20this\x20change\x20expands\x20the\x20scope\x20of\x20the\x20active\x20feature\x20review,\x20you\x20may\x20need\x20to\x20add\x20a\x20scenario.\x20See\x20Workflow\x201\x20in\x20/ranger.\x20If\x20you\x20decide\x20to\x20add\x20a\x20scenario,\x20you\x20MUST\x20read\x20Workflow\x201\x20IN\x20DETAIL\x20first.\x20Remember:\x20when\x20you\x20finish\x20your\x20work,\x20your\x20final\x20message\x20to\x20the\x20user\x20must\x20direct\x20them\x20to\x20the\x20Ranger\x20feature\x20review\x20dashboard\x20to\x20review\x20(e.g.\x20\x22Go\x20to\x20the\x20Ranger\x20feature\x20dashboard\x20to\x20review:\x20https://dashboard.ranger.net/features/{feature_id}\x22).'}};console[_0x4c9d16(0x150)](JSON[_0x4c9d16(0x14d)](_0xca38a5));return;}const _0x4acae0={'hookSpecificOutput':{'hookEventName':'PostToolUse','additionalContext':'RANGER:\x20If\x20this\x20is\x20for\x20a\x20UI\x20feature,\x20you\x20MUST\x20use\x20/ranger\x20to\x20either\x20create\x20a\x20new\x20feature\x20review\x20or\x20resume\x20an\x20existing\x20one.'}};console['log'](JSON[_0x4c9d16(0x14d)](_0x4acae0));}
1
+ (function(_0x4dbc5a,_0x571f40){const _0x250047=_0x25e9,_0x5ac61b=_0x4dbc5a();while(!![]){try{const _0x593550=parseInt(_0x250047(0x1dc))/0x1+-parseInt(_0x250047(0x1d4))/0x2+-parseInt(_0x250047(0x1d6))/0x3*(parseInt(_0x250047(0x1de))/0x4)+parseInt(_0x250047(0x1d7))/0x5*(parseInt(_0x250047(0x1d9))/0x6)+-parseInt(_0x250047(0x1db))/0x7+-parseInt(_0x250047(0x1d2))/0x8*(parseInt(_0x250047(0x1df))/0x9)+parseInt(_0x250047(0x1dd))/0xa*(parseInt(_0x250047(0x1d5))/0xb);if(_0x593550===_0x571f40)break;else _0x5ac61b['push'](_0x5ac61b['shift']());}catch(_0x130ced){_0x5ac61b['push'](_0x5ac61b['shift']());}}}(_0x277a,0xcf93e));import{getSessionEntry,updateBranchTracking}from'../utils/sessionCache.js';function _0x25e9(_0x161137,_0x54b812){_0x161137=_0x161137-0x1d2;const _0x277a1f=_0x277a();let _0x25e919=_0x277a1f[_0x161137];return _0x25e919;}import{getToken}from'../utils/keychain.js';function _0x277a(){const _0x1f4050=['3266187RhSPLE','2760390pJuXCb','stringify','6vqCKlX','PostToolUse','9995251XebEzB','1050731pcaPhI','18650950QBvTKC','4mrZkEy','594189bbJCfW','160lNCTzh','SxQbv','1291438wntpFS','22YkRxfG'];_0x277a=function(){return _0x1f4050;};return _0x277a();}import{getEnabledSessionId}from'./output.js';export async function postEdit(_0x5b7339){const _0x11ca66=_0x25e9,_0xf96c07={'JXVPA':function(_0x489bbd,_0x1f11c7){return _0x489bbd(_0x1f11c7);},'SxQbv':function(_0x51bf15){return _0x51bf15();},'fDNHm':_0x11ca66(0x1da)},_0x4e4a53=await getEnabledSessionId(_0x5b7339);if(!_0x4e4a53)return;_0xf96c07['JXVPA'](updateBranchTracking,_0x4e4a53);const _0x390494=await _0xf96c07[_0x11ca66(0x1d3)](getToken);if(!_0x390494)return;const _0x30ccf2=getSessionEntry(_0x4e4a53);if(_0x30ccf2){const _0x169e24={'hookSpecificOutput':{'hookEventName':_0xf96c07['fDNHm'],'additionalContext':'RANGER:\x20If\x20this\x20change\x20expands\x20the\x20scope\x20of\x20the\x20active\x20feature\x20review,\x20you\x20may\x20need\x20to\x20add\x20a\x20scenario.\x20See\x20Workflow\x201\x20in\x20/ranger.\x20If\x20you\x20decide\x20to\x20add\x20a\x20scenario,\x20you\x20MUST\x20read\x20Workflow\x201\x20IN\x20DETAIL\x20first.\x20Remember:\x20when\x20you\x20finish\x20your\x20work,\x20your\x20final\x20message\x20to\x20the\x20user\x20must\x20direct\x20them\x20to\x20the\x20Ranger\x20feature\x20review\x20dashboard\x20to\x20review\x20(e.g.\x20\x22Go\x20to\x20the\x20Ranger\x20feature\x20dashboard\x20to\x20review:\x20https://dashboard.ranger.net/features/{feature_id}\x22).'}};console['log'](JSON[_0x11ca66(0x1d8)](_0x169e24));return;}const _0x2d1896={'hookSpecificOutput':{'hookEventName':_0x11ca66(0x1da),'additionalContext':'RANGER:\x20If\x20this\x20is\x20for\x20a\x20UI\x20feature,\x20you\x20MUST\x20use\x20/ranger\x20to\x20either\x20create\x20a\x20new\x20feature\x20review\x20or\x20resume\x20an\x20existing\x20one.'}};console['log'](JSON['stringify'](_0x2d1896));}
@@ -1 +1 @@
1
- function _0x217c(){const _0x484fb0=['10442270kqQHVE','1437SxzkVe','===\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`.','7945Bwrkev','1204uVJTFH','orSzP','1196BfwBNM','11SVTjkC','106173CcPgmJ','438539vBvSyG','2276556XDcYua','8ifwIgB','644763CFwlVv'];_0x217c=function(){return _0x484fb0;};return _0x217c();}(function(_0x2c0c00,_0x3ea245){const _0x31b53d=_0x4309,_0x167040=_0x2c0c00();while(!![]){try{const _0x45162d=parseInt(_0x31b53d(0x1b4))/0x1+-parseInt(_0x31b53d(0x1bc))/0x2*(parseInt(_0x31b53d(0x1b9))/0x3)+parseInt(_0x31b53d(0x1b1))/0x4*(-parseInt(_0x31b53d(0x1bb))/0x5)+-parseInt(_0x31b53d(0x1b5))/0x6+-parseInt(_0x31b53d(0x1b7))/0x7+-parseInt(_0x31b53d(0x1b6))/0x8*(-parseInt(_0x31b53d(0x1b3))/0x9)+parseInt(_0x31b53d(0x1b8))/0xa*(parseInt(_0x31b53d(0x1b2))/0xb);if(_0x45162d===_0x3ea245)break;else _0x167040['push'](_0x167040['shift']());}catch(_0x1c8e3b){_0x167040['push'](_0x167040['shift']());}}}(_0x217c,0x3f5e7));import{getToken}from'../utils/keychain.js';import{printBlock,getEnabledSessionId}from'./output.js';function _0x4309(_0x32572a,_0x2afeeb){_0x32572a=_0x32572a-0x1b0;const _0x217c98=_0x217c();let _0x43095b=_0x217c98[_0x32572a];return _0x43095b;}export async function preCompact(_0x312782){const _0x3d4bf0=_0x4309,_0xa85081={'orSzP':function(_0x2ad1a8,_0x2359d4){return _0x2ad1a8(_0x2359d4);}},_0x458b78=await getEnabledSessionId(_0x312782);if(!_0x458b78)return;try{const _0x9cbe76=await getToken();if(!_0x9cbe76)return;_0xa85081[_0x3d4bf0(0x1b0)](printBlock,_0x3d4bf0(0x1ba));}catch{}}
1
+ (function(_0xd8540e,_0x236789){const _0x2236fc=_0x22ee,_0x3da282=_0xd8540e();while(!![]){try{const _0x1c6413=parseInt(_0x2236fc(0x166))/0x1+parseInt(_0x2236fc(0x16a))/0x2+parseInt(_0x2236fc(0x168))/0x3*(parseInt(_0x2236fc(0x172))/0x4)+parseInt(_0x2236fc(0x16b))/0x5+-parseInt(_0x2236fc(0x16f))/0x6*(-parseInt(_0x2236fc(0x170))/0x7)+-parseInt(_0x2236fc(0x16e))/0x8+parseInt(_0x2236fc(0x169))/0x9*(-parseInt(_0x2236fc(0x16c))/0xa);if(_0x1c6413===_0x236789)break;else _0x3da282['push'](_0x3da282['shift']());}catch(_0x3367b1){_0x3da282['push'](_0x3da282['shift']());}}}(_0x4a9b,0xaad1b));function _0x22ee(_0x4de6fc,_0x5d749d){_0x4de6fc=_0x4de6fc-0x166;const _0x4a9b9d=_0x4a9b();let _0x22eedc=_0x4a9b9d[_0x4de6fc];return _0x22eedc;}import{getToken}from'../utils/keychain.js';import{printBlock,getEnabledSessionId}from'./output.js';function _0x4a9b(){const _0x5de0eb=['1196674NCMliN','1406580QvAagC','240mUYPSp','tQoFj','40432ELTxGH','39798gKXDKE','903EfTIBC','XxwFR','4HxHBdd','485862EnkymA','===\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`.','382095lZLQIw','616428MHRYva'];_0x4a9b=function(){return _0x5de0eb;};return _0x4a9b();}export async function preCompact(_0x402d14){const _0x1ae5cd=_0x22ee,_0x40d879={'XxwFR':function(_0x16214c,_0x2e9bb7){return _0x16214c(_0x2e9bb7);},'tQoFj':function(_0x11bdd3){return _0x11bdd3();}},_0x1648cc=await _0x40d879[_0x1ae5cd(0x171)](getEnabledSessionId,_0x402d14);if(!_0x1648cc)return;try{const _0x354921=await _0x40d879[_0x1ae5cd(0x16d)](getToken);if(!_0x354921)return;_0x40d879['XxwFR'](printBlock,_0x1ae5cd(0x167));}catch{}}
@@ -1 +1 @@
1
- (function(_0x390f43,_0x131cff){const _0x505edd=_0x5d01,_0x5b2470=_0x390f43();while(!![]){try{const _0x3295b4=parseInt(_0x505edd(0x10d))/0x1+parseInt(_0x505edd(0x109))/0x2+parseInt(_0x505edd(0x107))/0x3+parseInt(_0x505edd(0x10c))/0x4+-parseInt(_0x505edd(0x106))/0x5*(parseInt(_0x505edd(0x104))/0x6)+parseInt(_0x505edd(0x103))/0x7+-parseInt(_0x505edd(0x10b))/0x8;if(_0x3295b4===_0x131cff)break;else _0x5b2470['push'](_0x5b2470['shift']());}catch(_0x478c9b){_0x5b2470['push'](_0x5b2470['shift']());}}}(_0x5e2c,0xf0258));function _0x5e2c(){const _0x454f10=['27258800vUxeQL','4693716KOaUTe','1265932kpoVca','clear','session_id','12508048ygkLbT','809886eTYMcB','env','45RMMgfs','743616tGjOuF','yQfiU','2263444HVboua','AjjzU'];_0x5e2c=function(){return _0x454f10;};return _0x5e2c();}import{isSessionEnabled,recordEnabledSessionCleared}from'../utils/sessionCache.js';import{readHookInput}from'./output.js';function _0x5d01(_0x456fe2,_0xa128f7){_0x456fe2=_0x456fe2-0x101;const _0x5e2c20=_0x5e2c();let _0x5d01de=_0x5e2c20[_0x456fe2];return _0x5d01de;}export async function sessionEnd(_0x2c271e){const _0x46558d=_0x5d01,_0x37d222={'AjjzU':function(_0xc49284,_0x5077d3){return _0xc49284===_0x5077d3;},'hbfro':_0x46558d(0x101),'yQfiU':function(_0x2be928,_0x102155){return _0x2be928(_0x102155);}},_0xb903ce=process[_0x46558d(0x105)]['CLAUDE_SESSION_ID'];let _0x2df850=_0x2c271e,_0x11b101;if(!_0x2c271e){if(_0xb903ce&&!isSessionEnabled(_0xb903ce))return;const _0x1a9b09=await readHookInput();_0x2df850=_0x1a9b09?.[_0x46558d(0x102)]||_0xb903ce,_0x11b101=_0x1a9b09?.['reason'];}if(!_0x2df850)return;_0x37d222[_0x46558d(0x10a)](_0x11b101,_0x37d222['hbfro'])&&_0x37d222[_0x46558d(0x108)](recordEnabledSessionCleared,_0x2df850);}
1
+ (function(_0x53b51d,_0x2e7edb){const _0x21c510=_0x362f,_0x147a69=_0x53b51d();while(!![]){try{const _0x1b915d=parseInt(_0x21c510(0x18f))/0x1*(parseInt(_0x21c510(0x18c))/0x2)+parseInt(_0x21c510(0x188))/0x3+-parseInt(_0x21c510(0x18b))/0x4+-parseInt(_0x21c510(0x190))/0x5*(parseInt(_0x21c510(0x193))/0x6)+parseInt(_0x21c510(0x18a))/0x7+-parseInt(_0x21c510(0x191))/0x8*(parseInt(_0x21c510(0x189))/0x9)+-parseInt(_0x21c510(0x18e))/0xa*(-parseInt(_0x21c510(0x187))/0xb);if(_0x1b915d===_0x2e7edb)break;else _0x147a69['push'](_0x147a69['shift']());}catch(_0x24e444){_0x147a69['push'](_0x147a69['shift']());}}}(_0x5ad9,0x9a178));import{isSessionEnabled,recordEnabledSessionCleared}from'../utils/sessionCache.js';function _0x362f(_0xa92891,_0x1c9303){_0xa92891=_0xa92891-0x186;const _0x5ad9a0=_0x5ad9();let _0x362fb1=_0x5ad9a0[_0xa92891];return _0x362fb1;}import{readHookInput}from'./output.js';export async function sessionEnd(_0x50f07d){const _0x4a2270=_0x362f,_0x25c5c7={'NqnCi':function(_0x40eca4,_0x45fa3e){return _0x40eca4(_0x45fa3e);},'EUvlI':function(_0x30b35a){return _0x30b35a();},'daTHs':'clear'},_0x583c35=process['env']['CLAUDE_SESSION_ID'];let _0x2451c3=_0x50f07d,_0x18acdf;if(!_0x50f07d){if(_0x583c35&&!_0x25c5c7[_0x4a2270(0x186)](isSessionEnabled,_0x583c35))return;const _0x8a3e03=await _0x25c5c7['EUvlI'](readHookInput);_0x2451c3=_0x8a3e03?.[_0x4a2270(0x192)]||_0x583c35,_0x18acdf=_0x8a3e03?.['reason'];}if(!_0x2451c3)return;_0x18acdf===_0x25c5c7[_0x4a2270(0x18d)]&&recordEnabledSessionCleared(_0x2451c3);}function _0x5ad9(){const _0x227430=['3264879WlPHWY','1114677nZkrBe','4916408jPBCkg','1870200jQBlDa','4RtNWYA','daTHs','1451280ZVhMXn','200426HHLYNA','7960zNPgpO','56iXVJbJ','session_id','1398mRCKbl','NqnCi','11NbfuWZ'];_0x5ad9=function(){return _0x227430;};return _0x5ad9();}