@ranger-testing/ranger-cli 2.5.4-alpha.0e8b82c-9 → 2.5.4-alpha.1b80607-25

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 (85) hide show
  1. package/README.md +36 -14
  2. package/build/cli.js +1 -1
  3. package/build/commands/addEnv.js +1 -1
  4. package/build/commands/authEncrypt.js +1 -1
  5. package/build/commands/clean.js +1 -1
  6. package/build/commands/config.js +1 -1
  7. package/build/commands/deleteProfile.js +1 -0
  8. package/build/commands/env.js +1 -1
  9. package/build/commands/feature.js +1 -1
  10. package/build/commands/hook.js +1 -1
  11. package/build/commands/hooks/autoPrompt.js +1 -1
  12. package/build/commands/hooks/disable.js +1 -1
  13. package/build/commands/hooks/enable.js +1 -1
  14. package/build/commands/hooks/exitPlanMode.js +1 -1
  15. package/build/commands/hooks/index.js +1 -1
  16. package/build/commands/hooks/output.js +1 -1
  17. package/build/commands/hooks/planReminder.js +1 -1
  18. package/build/commands/hooks/planStart.js +1 -1
  19. package/build/commands/hooks/postEdit.js +1 -1
  20. package/build/commands/hooks/preCompact.js +1 -1
  21. package/build/commands/hooks/sessionEnd.js +1 -1
  22. package/build/commands/hooks/sessionStart.js +1 -1
  23. package/build/commands/hooks/stopHook.js +1 -1
  24. package/build/commands/index.js +1 -1
  25. package/build/commands/login.js +1 -1
  26. package/build/commands/mcpBootstrap.js +1 -1
  27. package/build/commands/migrateProfile.js +1 -1
  28. package/build/commands/setup/claude.js +1 -1
  29. package/build/commands/setup/opencode.js +1 -1
  30. package/build/commands/setupCi.js +1 -1
  31. package/build/commands/skillup.js +1 -1
  32. package/build/commands/start.js +1 -1
  33. package/build/commands/status.js +1 -1
  34. package/build/commands/update.js +1 -1
  35. package/build/commands/updateEnv.js +1 -1
  36. package/build/commands/useEnv.js +1 -1
  37. package/build/commands/utils/activeProfile.js +1 -1
  38. package/build/commands/utils/agentEnv.js +1 -1
  39. package/build/commands/utils/browserSessionsApi.js +1 -1
  40. package/build/commands/utils/claudeConfig.js +1 -1
  41. package/build/commands/utils/claudeOverrideSettings.js +1 -1
  42. package/build/commands/utils/claudePlugin.js +1 -1
  43. package/build/commands/utils/cloudProfile.js +1 -1
  44. package/build/commands/utils/cloudProfileSession.js +1 -1
  45. package/build/commands/utils/crypto.js +1 -1
  46. package/build/commands/utils/desirePathLog.js +1 -1
  47. package/build/commands/utils/deviceAuth.js +1 -1
  48. package/build/commands/utils/environment.js +1 -1
  49. package/build/commands/utils/featureApi.js +1 -1
  50. package/build/commands/utils/fixWebmDuration.js +1 -1
  51. package/build/commands/utils/gitTracked.js +1 -1
  52. package/build/commands/utils/keychain.js +1 -1
  53. package/build/commands/utils/legacyWarning.js +1 -0
  54. package/build/commands/utils/localAgentInstallationsApi.js +1 -1
  55. package/build/commands/utils/matchAuthEnvironment.js +1 -1
  56. package/build/commands/utils/mcpImageBase64.js +1 -1
  57. package/build/commands/utils/model.js +1 -1
  58. package/build/commands/utils/novaActCli.js +1 -0
  59. package/build/commands/utils/opencodeConfig.js +1 -1
  60. package/build/commands/utils/playwrightCli.js +1 -1
  61. package/build/commands/utils/profileMessages.js +1 -1
  62. package/build/commands/utils/profileSetupBanner.js +1 -1
  63. package/build/commands/utils/projectsConfig.js +1 -1
  64. package/build/commands/utils/rangerConfig.js +1 -1
  65. package/build/commands/utils/rangerRoot.js +1 -1
  66. package/build/commands/utils/resolveProfileContext.js +1 -1
  67. package/build/commands/utils/resolveProfileUrl.js +1 -1
  68. package/build/commands/utils/retry.js +1 -1
  69. package/build/commands/utils/sessionCache.js +1 -1
  70. package/build/commands/utils/settings.js +1 -1
  71. package/build/commands/utils/skillContent.js +1 -1
  72. package/build/commands/utils/skills.js +1 -1
  73. package/build/commands/utils/stitchWebmFiles.js +1 -1
  74. package/build/commands/utils/telemetry.js +1 -1
  75. package/build/commands/utils/tokenRefresh.js +1 -1
  76. package/build/commands/utils/traceSnapshotMapper.js +1 -1
  77. package/build/commands/utils/userApi.js +1 -1
  78. package/build/commands/utils/version.js +1 -1
  79. package/build/commands/verifyFeature.js +1 -1
  80. package/build/commands/verifyFeatureCli.js +1 -1
  81. package/build/commands/verifyFeatureNovaCli.js +1 -0
  82. package/build/skills/ranger/SKILL.md +24 -8
  83. package/build/skills/ranger/create.md +16 -3
  84. package/build/skills/ranger/verify.md +35 -10
  85. package/package.json +3 -2
@@ -1 +1 @@
1
- (function(_0x17148e,_0xb1c35c){const _0x4e5652=_0x3e12,_0x45134b=_0x17148e();while(!![]){try{const _0x4b4ca0=-parseInt(_0x4e5652(0x27a))/0x1*(-parseInt(_0x4e5652(0x26d))/0x2)+parseInt(_0x4e5652(0x26f))/0x3+parseInt(_0x4e5652(0x250))/0x4+parseInt(_0x4e5652(0x1f7))/0x5*(parseInt(_0x4e5652(0x202))/0x6)+parseInt(_0x4e5652(0x244))/0x7*(parseInt(_0x4e5652(0x20e))/0x8)+-parseInt(_0x4e5652(0x24e))/0x9+parseInt(_0x4e5652(0x249))/0xa*(-parseInt(_0x4e5652(0x24a))/0xb);if(_0x4b4ca0===_0xb1c35c)break;else _0x45134b['push'](_0x45134b['shift']());}catch(_0x1adc57){_0x45134b['push'](_0x45134b['shift']());}}}(_0x234a,0xe79a0));import{readFile,writeFile,mkdir}from'fs/promises';import{join}from'path';import{existsSync}from'fs';import{execSync}from'child_process';import _0x2dd850 from'inquirer';import{createFeature,listFeatures,getFeature,updateFeature,getFeatureReport,getFeatureReportMarkdown,listFeatureSessions,startSession,concludeSession,createChecklistItem,getActionItems,getItemFeedback,softDeleteFeature,restoreFeature,updateChecklistItem}from'./utils/featureApi.js';import{getBrowserSessionSteps}from'./utils/browserSessionsApi.js';import{getApiBaseUrl}from'./utils/environment.js';import{getRangerDir}from'./utils/rangerRoot.js';import{registerSession}from'./utils/sessionCache.js';import{getEnvNames}from'./env.js';import{formatProfileRequiredMessage}from'./utils/profileMessages.js';function _0x3e12(_0x28964a,_0x11cd85){_0x28964a=_0x28964a-0x1ae;const _0x234a09=_0x234a();let _0x3e12e7=_0x234a09[_0x28964a];return _0x3e12e7;}import{listCloudProfiles}from'./utils/cloudProfile.js';const ACTIVE_FEATURE_FILE='active-feature.txt',bold=_0x570b35=>'\x1b[1m'+_0x570b35+'\x1b[0m';function getGitRepoUrl(){const _0x77d073=_0x3e12,_0x3c980f={'Xvstz':function(_0x3fc4e0,_0x53f965,_0x3f7e27){return _0x3fc4e0(_0x53f965,_0x3f7e27);},'NxMmL':'git\x20remote\x20get-url\x20origin','vlvjc':_0x77d073(0x280)};try{const _0x3bbe8e=_0x3c980f[_0x77d073(0x1d5)](execSync,_0x3c980f[_0x77d073(0x24d)],{'encoding':_0x77d073(0x1dd),'stdio':[_0x3c980f[_0x77d073(0x287)],_0x3c980f[_0x77d073(0x287)],_0x3c980f['vlvjc']]})[_0x77d073(0x262)]();return _0x3bbe8e['replace'](/\.git$/,'')['replace'](/^git@github\.com:/,_0x77d073(0x24b))['replace'](/^https?:\/\//,'');}catch{return undefined;}}function getGitBranch(){const _0x596914=_0x3e12,_0x53efd8={'WqabW':function(_0xc276b9,_0x3567af,_0x3a9948){return _0xc276b9(_0x3567af,_0x3a9948);},'NcpZn':_0x596914(0x1dd),'LQelt':_0x596914(0x280)};try{return _0x53efd8['WqabW'](execSync,_0x596914(0x21c),{'encoding':_0x53efd8['NcpZn'],'stdio':[_0x53efd8[_0x596914(0x1b3)],_0x596914(0x280),'pipe']})['trim']();}catch{return undefined;}}export async function getActiveFeatureId(){const _0x42102d=_0x3e12,_0x58fc5c={'nZVSO':function(_0x550245,_0x162c4b,_0x3864e0){return _0x550245(_0x162c4b,_0x3864e0);},'iSySu':function(_0x57b6ac){return _0x57b6ac();},'AoIdi':function(_0xae3e84,_0x371689){return _0xae3e84(_0x371689);}},_0x272b9c=_0x58fc5c['nZVSO'](join,_0x58fc5c['iSySu'](getRangerDir),ACTIVE_FEATURE_FILE);if(!_0x58fc5c[_0x42102d(0x1b0)](existsSync,_0x272b9c))return null;try{const _0x2574e4=await _0x58fc5c['nZVSO'](readFile,_0x272b9c,'utf-8');return _0x2574e4[_0x42102d(0x262)]()||null;}catch{return null;}}async function setActiveFeatureId(_0x481549){const _0x181ce3=_0x3e12,_0x3615a0={'gdmKf':function(_0xf4f0d9){return _0xf4f0d9();},'bNMQM':function(_0x36fcc4,_0x17c251,_0xe9bb68){return _0x36fcc4(_0x17c251,_0xe9bb68);},'EkdAz':function(_0x20d044,_0x5b4c58,_0x131d51,_0x70c762){return _0x20d044(_0x5b4c58,_0x131d51,_0x70c762);}},_0x470923=_0x3615a0['gdmKf'](getRangerDir),_0x1da3ea=join(_0x470923,ACTIVE_FEATURE_FILE);!existsSync(_0x470923)&&await _0x3615a0['bNMQM'](mkdir,_0x470923,{'recursive':!![]}),await _0x3615a0[_0x181ce3(0x258)](writeFile,_0x1da3ea,_0x481549,_0x181ce3(0x1dd));}function getProgressDisplay(_0x12f79f){const _0x18bafe=_0x3e12,_0xd61c1a={'wfjSa':function(_0x48eb0c,_0x4d7411){return _0x48eb0c+_0x4d7411;},'ifLFB':function(_0x3f3a10,_0xcf532b){return _0x3f3a10===_0xcf532b;},'hlxFA':function(_0xa2adbf,_0x58627c){return _0xa2adbf*_0x58627c;},'NWLSg':function(_0x36b0bf,_0x27e3fa){return _0x36b0bf/_0x27e3fa;},'nfiGI':function(_0x3daffe,_0x54287c){return _0x3daffe-_0x54287c;},'XKUdZ':function(_0x3a2f14,_0x19dc8a){return _0x3a2f14>_0x19dc8a;},'OQGkk':function(_0x35e485,_0x4572d1){return _0x35e485>_0x4572d1;}},_0x2b245c=_0x12f79f[_0x18bafe(0x1fe)]||0x0,_0x5429c5=_0x12f79f['verificationInProgressItems']||0x0,_0x160924=_0x12f79f[_0x18bafe(0x1bc)]||0x0,_0x1c1eee=_0x12f79f['incompleteItems']||0x0,_0xe7c52=_0x12f79f[_0x18bafe(0x23d)]||0x0,_0x55c4b1=_0xd61c1a['wfjSa'](_0x2b245c+_0x5429c5+_0x160924,_0x1c1eee)+_0xe7c52;if(_0xd61c1a['ifLFB'](_0x55c4b1,0x0))return'-';const _0x1d2b2e=0xa,_0x58e311=Math['round'](_0xd61c1a[_0x18bafe(0x1c7)](_0xd61c1a[_0x18bafe(0x1f6)](_0x2b245c,_0x55c4b1),_0x1d2b2e)),_0x14e331='█'[_0x18bafe(0x22d)](_0x58e311)+'░'['repeat'](_0xd61c1a['nfiGI'](_0x1d2b2e,_0x58e311)),_0x51575c=[];if(_0x160924>0x0)_0x51575c[_0x18bafe(0x1af)](_0x160924+_0x18bafe(0x209));if(_0xd61c1a['XKUdZ'](_0x1c1eee,0x0))_0x51575c[_0x18bafe(0x1af)](_0x1c1eee+'\x20incomplete');if(_0x5429c5>0x0)_0x51575c['push'](_0x5429c5+_0x18bafe(0x253));const _0x584f93=_0xd61c1a[_0x18bafe(0x1df)](_0x51575c[_0x18bafe(0x236)],0x0)?'\x20('+_0x51575c['join'](',\x20')+')':'';return _0x14e331+'\x20'+_0x2b245c+'/'+_0x55c4b1+'\x20verified'+_0x584f93;}function getCurrentSessionItems(_0x4d80ad,_0x2c2f22){const _0x3f0b94=_0x3e12;if(!_0x4d80ad[_0x3f0b94(0x205)])return _0x2c2f22[_0x3f0b94(0x234)](_0x3fa947=>!_0x3fa947[_0x3f0b94(0x1f9)]);return _0x2c2f22[_0x3f0b94(0x234)](_0x4699e6=>_0x4699e6['sessionId']===_0x4d80ad[_0x3f0b94(0x205)]||!_0x4699e6[_0x3f0b94(0x1f9)]);}function displayFeature(_0x536ad1,_0x2541b7){const _0x41f6cd=_0x3e12,_0xdb3889={'FBlpg':function(_0x3a25d8,_0x2502be){return _0x3a25d8(_0x2502be);},'vJFWO':function(_0x32f200,_0x3b524f){return _0x32f200>_0x3b524f;},'dYcfb':'\x0a\x20\x20\x20Scenarios:','MVBIA':function(_0x4f4b1f,_0x43f9ec){return _0x4f4b1f===_0x43f9ec;},'gQTEq':_0x41f6cd(0x286),'yABjF':_0x41f6cd(0x22c),'ZrvPq':_0x41f6cd(0x25a),'zNMdr':function(_0x1789ef,_0x4f9fe6){return _0x1789ef===_0x4f9fe6;},'NJTqe':'incomplete','DFnDl':function(_0x3de50f,_0x3469ad){return _0x3de50f===_0x3469ad;},'uiUrI':function(_0x5112ac,_0x35ca1e){return _0x5112ac===_0x35ca1e;},'guIPJ':_0x41f6cd(0x21a),'VmWRW':function(_0x3451f7,_0x4d677e){return _0x3451f7>_0x4d677e;},'Tzgog':function(_0x4a1e80,_0x34223b){return _0x4a1e80!==_0x34223b;},'WnSvs':function(_0x293450,_0x3ddbfe){return _0x293450+_0x3ddbfe;},'Bijhb':_0x41f6cd(0x1cf)};console[_0x41f6cd(0x23f)]('\x0a'+_0x536ad1['name']+'\x20('+_0x536ad1[_0x41f6cd(0x240)]+')');_0x536ad1[_0x41f6cd(0x24c)]&&console['log'](_0x41f6cd(0x1c2)+_0xdb3889[_0x41f6cd(0x1ec)](getProgressDisplay,_0x536ad1['stats']));_0x536ad1[_0x41f6cd(0x1bf)]&&console[_0x41f6cd(0x23f)](_0x41f6cd(0x207)+_0x536ad1[_0x41f6cd(0x1bf)]);_0x536ad1['gitRepoUrl']&&console['log']('\x20\x20\x20Repository:\x20'+_0x536ad1[_0x41f6cd(0x272)]);_0x536ad1['gitBranch']&&console['log']('\x20\x20\x20Branch:\x20'+_0x536ad1[_0x41f6cd(0x227)]);console[_0x41f6cd(0x23f)](_0x41f6cd(0x1e1)+new Date(_0x536ad1[_0x41f6cd(0x25e)])[_0x41f6cd(0x1ce)]());_0x536ad1['completedAt']&&console[_0x41f6cd(0x23f)](_0x41f6cd(0x239)+new Date(_0x536ad1['completedAt'])['toLocaleString']());if(_0x2541b7&&_0xdb3889[_0x41f6cd(0x225)](_0x2541b7[_0x41f6cd(0x236)],0x0)){console[_0x41f6cd(0x23f)](_0xdb3889['dYcfb']);for(let _0x41ff65=0x0;_0x41ff65<_0x2541b7[_0x41f6cd(0x236)];_0x41ff65++){const _0x5e1c20=_0x2541b7[_0x41ff65];let _0x1bc5d5;if(_0xdb3889[_0x41f6cd(0x26c)](_0x5e1c20['status'],_0xdb3889[_0x41f6cd(0x248)])&&_0x5e1c20['terminalReason']===_0xdb3889['yABjF'])_0x1bc5d5='✅';else{if(_0x5e1c20[_0x41f6cd(0x229)]===_0xdb3889['ZrvPq'])_0x1bc5d5='🟢';else{if(_0xdb3889[_0x41f6cd(0x27e)](_0x5e1c20['status'],_0xdb3889['NJTqe']))_0x1bc5d5='🟠';else{if(_0xdb3889['DFnDl'](_0x5e1c20[_0x41f6cd(0x229)],_0x41f6cd(0x1cf)))_0x1bc5d5='🛑';else{if(_0x5e1c20[_0x41f6cd(0x229)]===_0x41f6cd(0x286))_0x1bc5d5='⛔';else _0xdb3889['uiUrI'](_0x5e1c20['status'],_0xdb3889[_0x41f6cd(0x218)])?_0x1bc5d5='⏳':_0x1bc5d5='⬜';}}}}const _0x18bde7=_0xdb3889[_0x41f6cd(0x24f)](_0x5e1c20['version'],0x1)?'\x20(v'+_0x5e1c20[_0x41f6cd(0x27d)]+')':'',_0x45c2d3=_0x5e1c20['version']>0x1&&_0x5e1c20['parentItemId']&&_0x5e1c20[_0x41f6cd(0x229)]!=='closed'&&_0xdb3889['Tzgog'](_0x5e1c20['status'],_0xdb3889['ZrvPq'])?'\x20[has\x20reviewer\x20feedback]':'';console['log']('\x20\x20\x20'+_0xdb3889['WnSvs'](_0x41ff65,0x1)+'.\x20'+_0x1bc5d5+'\x20'+_0x5e1c20[_0x41f6cd(0x1bf)]+_0x18bde7+_0x45c2d3);_0x5e1c20[_0x41f6cd(0x229)]===_0xdb3889['Bijhb']&&_0x5e1c20[_0x41f6cd(0x222)]&&console[_0x41f6cd(0x23f)]('\x20\x20\x20\x20\x20\x20Blocked:\x20'+_0x5e1c20[_0x41f6cd(0x222)]);_0x5e1c20['status']===_0xdb3889[_0x41f6cd(0x211)]&&_0x5e1c20['incompleteReason']&&console[_0x41f6cd(0x23f)]('\x20\x20\x20\x20\x20\x20Incomplete:\x20'+_0x5e1c20[_0x41f6cd(0x1cc)]);if(_0x5e1c20[_0x41f6cd(0x229)]===_0x41f6cd(0x286)&&_0x5e1c20[_0x41f6cd(0x204)]==='approved')console[_0x41f6cd(0x23f)]('\x20\x20\x20\x20\x20\x20Approved');else _0x5e1c20['status']===_0xdb3889['gQTEq']&&_0x5e1c20[_0x41f6cd(0x265)]&&console['log'](_0x41f6cd(0x23b)+_0x5e1c20[_0x41f6cd(0x265)]);}}}export async function featureCreate(_0xcd867a,_0x214ff5){const _0x1658e9=_0x3e12,_0xc8da51={'URxCh':function(_0x591562,_0x14e834){return _0x591562===_0x14e834;},'DOnhG':function(_0x43f897){return _0x43f897();},'qYuXt':function(_0x3b5113,_0x1e3299){return _0x3b5113(_0x1e3299);},'AyRry':function(_0x1ba674){return _0x1ba674();},'HqnBm':_0x1658e9(0x233),'YSNMJ':function(_0x21391c,_0x1f545c){return _0x21391c(_0x1f545c);},'JMQNc':function(_0xb0fc73,_0x3a58c0,_0x42383d){return _0xb0fc73(_0x3a58c0,_0x42383d);}},{envNames:_0x233473}=await getEnvNames();if(_0xc8da51[_0x1658e9(0x1ff)](_0x233473['length'],0x0)&&!process['env']['RANGER_TEST_USERNAME']){let _0x3d0af0=0x0;try{_0x3d0af0=(await _0xc8da51[_0x1658e9(0x1eb)](listCloudProfiles))['length'];}catch{_0x3d0af0=0x1;}_0x3d0af0===0x0&&console['warn']('\x0a'+_0xc8da51['qYuXt'](formatProfileRequiredMessage,_0x262290=>bold(_0x262290)));}const _0x1b83c2=_0x214ff5[_0x1658e9(0x223)]?_0x214ff5[_0x1658e9(0x223)]['map'](_0x3b48ee=>_0x3b48ee[_0x1658e9(0x262)]()):[],_0x5d73b9=_0xc8da51['DOnhG'](getGitRepoUrl),_0x2e691d=_0xc8da51['AyRry'](getGitBranch);console['log'](_0xc8da51['HqnBm']);const _0x23011c=await createFeature({'name':_0xcd867a,'description':_0x214ff5[_0x1658e9(0x1bf)],'checklist':_0x1b83c2,'gitRepoUrl':_0x5d73b9,'gitBranch':_0x2e691d});await _0xc8da51['qYuXt'](setActiveFeatureId,_0x23011c['id']),await _0xc8da51['YSNMJ'](tryStartCurrentSession,_0x23011c['id']);const _0x2e91ce=process[_0x1658e9(0x255)]['CLAUDE_SESSION_ID'];_0x2e91ce&&registerSession(_0x2e91ce,_0x23011c['id']),console['log']('\x0a✅\x20Feature\x20review\x20created:\x20'+_0x23011c['id']),_0xc8da51['JMQNc'](displayFeature,_0x23011c,_0x23011c['checklistItems']),console[_0x1658e9(0x23f)]('\x0a➡️\x20\x20Set\x20as\x20active\x20feature\x20review');}export async function featureList(_0x19a78b){const _0x14141f=_0x3e12,_0x5281e3={'npbyI':function(_0xa5c4a1,_0x2ddcbb){return _0xa5c4a1===_0x2ddcbb;},'EeSvY':function(_0x5d39f0,_0x46fa19){return _0x5d39f0>_0x46fa19;},'dWSDr':function(_0x372e28,_0x429513){return _0x372e28(_0x429513);},'siZWS':function(_0x1b5aac,_0x2102db){return _0x1b5aac+_0x2102db;},'lAYxf':function(_0x4ea04c,_0x556171){return _0x4ea04c!==_0x556171;},'tNXXG':_0x14141f(0x252),'DVmzv':_0x14141f(0x1bb)},_0x115a23={'limit':_0x19a78b[_0x14141f(0x26e)]??0xa,'offset':_0x19a78b['offset']??0x0,'includeDeleted':_0x19a78b['includeDeleted']};_0x19a78b['currentBranch']&&(_0x115a23['gitRepoUrl']=getGitRepoUrl(),_0x115a23['gitBranch']=getGitBranch());const _0x2ec44b=await listFeatures(_0x115a23);if(_0x5281e3['npbyI'](_0x2ec44b['items'][_0x14141f(0x236)],0x0)){console[_0x14141f(0x23f)]('\x0aNo\x20feature\x20reviews\x20found.');return;}const _0x2318c3=_0x5281e3['EeSvY'](_0x2ec44b[_0x14141f(0x1ea)],_0x2ec44b[_0x14141f(0x1f8)][_0x14141f(0x236)])?_0x14141f(0x212)+_0x2ec44b[_0x14141f(0x1f8)][_0x14141f(0x236)]+'\x20of\x20'+_0x2ec44b['totalCount']:_0x2ec44b['totalCount']+_0x14141f(0x1e7);console[_0x14141f(0x23f)]('\x0a'+_0x2318c3+':\x0a');for(const _0x824a1c of _0x2ec44b[_0x14141f(0x1f8)]){console[_0x14141f(0x23f)](''+_0x824a1c[_0x14141f(0x27c)]),console[_0x14141f(0x23f)](_0x14141f(0x27f)+_0x824a1c['id']),_0x824a1c['stats']&&console['log']('\x20\x20\x20Progress:\x20'+_0x5281e3[_0x14141f(0x1e4)](getProgressDisplay,_0x824a1c['stats'])),_0x824a1c['gitBranch']&&console['log']('\x20\x20\x20Branch:\x20'+_0x824a1c['gitBranch']),console['log']('\x20\x20\x20Created:\x20'+new Date(_0x824a1c[_0x14141f(0x25e)])[_0x14141f(0x246)]()),console['log']('');}const _0x1f01af=_0x115a23['limit']??0xa,_0xb59de8=_0x5281e3['siZWS'](_0x115a23[_0x14141f(0x20d)]??0x0,_0x2ec44b[_0x14141f(0x1f8)][_0x14141f(0x236)]);if(_0xb59de8<_0x2ec44b['totalCount']){const _0x542c38=_0x5281e3[_0x14141f(0x23a)](_0x1f01af,0xa)?_0x14141f(0x1cb)+_0x1f01af:'',_0x44a8ee=_0x19a78b[_0x14141f(0x1b5)]?_0x5281e3[_0x14141f(0x254)]:'',_0x5e69d6=_0x19a78b['includeDeleted']?_0x5281e3['DVmzv']:'';console[_0x14141f(0x23f)](_0x14141f(0x1f3)+_0xb59de8+_0x542c38+_0x44a8ee+_0x5e69d6);}}export async function featureShow(_0x219cc2){const _0x137b94=_0x3e12,_0xa47016={'mdkol':function(_0x1ce0cd){return _0x1ce0cd();},'hQxIo':'No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','hFaKj':function(_0x4cbe95,_0x5ee771){return _0x4cbe95(_0x5ee771);}},_0x526d69=_0x219cc2||await _0xa47016['mdkol'](getActiveFeatureId);if(!_0x526d69)throw new Error(_0xa47016['hQxIo']);const _0x5ab295=await _0xa47016[_0x137b94(0x1b2)](getFeature,_0x526d69);displayFeature(_0x5ab295,_0x5ab295['checklistItems']);}export async function featureResume(_0x3901dc){const _0x2492a7=_0x3e12,_0x5439e0={'cHROF':function(_0x4ef289,_0x5a9a34){return _0x4ef289(_0x5a9a34);},'xgpsp':function(_0x3caac8,_0x4428f9){return _0x3caac8(_0x4428f9);},'KOLlu':function(_0x199184){return _0x199184();},'VKSGj':function(_0x55553e,_0x4d7b36){return _0x55553e(_0x4d7b36);},'flgvr':function(_0x57dbeb){return _0x57dbeb();},'TstaH':_0x2492a7(0x232),'qfTVm':_0x2492a7(0x235),'pubtf':function(_0xecfb4d,_0x5a7343){return _0xecfb4d(_0x5a7343);},'SIeoR':_0x2492a7(0x1e8),'qVdiQ':_0x2492a7(0x22f),'CdWPI':'Multiple\x20feature\x20reviews\x20found.\x20Select\x20one:','YSPGD':function(_0xe11a2d,_0x2ffd60){return _0xe11a2d!==_0x2ffd60;},'IVddE':function(_0x33c52d,_0x14a48c,_0x1e714c){return _0x33c52d(_0x14a48c,_0x1e714c);}};if(_0x3901dc){const _0x414a7c=await _0x5439e0[_0x2492a7(0x1b6)](getFeature,_0x3901dc);await _0x5439e0[_0x2492a7(0x21e)](setActiveFeatureId,_0x414a7c['id']);const _0x3f8dfd=_0x5439e0['KOLlu'](getGitBranch);_0x3f8dfd&&_0x3f8dfd!==_0x414a7c[_0x2492a7(0x227)]&&(await updateFeature(_0x414a7c['id'],{'gitBranch':_0x3f8dfd}),console[_0x2492a7(0x23f)](_0x2492a7(0x1b9)+_0x3f8dfd));console[_0x2492a7(0x23f)]('\x0a✅\x20Resumed\x20feature\x20review:\x20'+_0x414a7c['name']+'\x20('+_0x414a7c['id']+')'),await _0x5439e0[_0x2492a7(0x21e)](tryStartCurrentSession,_0x414a7c['id']);const _0xdea15d=process[_0x2492a7(0x255)]['CLAUDE_SESSION_ID'];_0xdea15d&&registerSession(_0xdea15d,_0x414a7c['id']);displayFeature(_0x414a7c,_0x414a7c[_0x2492a7(0x22a)]),await _0x5439e0[_0x2492a7(0x241)](printFeedbackNudge,_0x414a7c['id']);return;}const _0xbfc6df=getGitRepoUrl(),_0x4d06c9=_0x5439e0['flgvr'](getGitBranch);if(!_0xbfc6df&&!_0x4d06c9)throw new Error(_0x2492a7(0x1fa));console['log']('\x0aSearching\x20for\x20feature\x20reviews\x20matching:\x20'+(_0xbfc6df||_0x5439e0[_0x2492a7(0x1b4)])+'\x20/\x20'+(_0x4d06c9||'any')+_0x2492a7(0x260));const _0x4d210f=await _0x5439e0[_0x2492a7(0x1b6)](listFeatures,{'gitRepoUrl':_0xbfc6df,'gitBranch':_0x4d06c9}),_0x3bca1a=_0x4d210f[_0x2492a7(0x1f8)][_0x2492a7(0x234)](_0xa24239=>_0xa24239[_0x2492a7(0x229)]?_0xa24239[_0x2492a7(0x229)]!=='verified':!_0xa24239[_0x2492a7(0x274)]);if(_0x3bca1a['length']===0x0){console['log'](_0x2492a7(0x1e9)),console[_0x2492a7(0x23f)](_0x5439e0[_0x2492a7(0x26a)]);return;}let _0x220c7c;if(_0x3bca1a['length']===0x1)_0x220c7c=_0x3bca1a[0x0];else{const _0x378e58=process[_0x2492a7(0x25d)]['isTTY']&&process['stdout'][_0x2492a7(0x273)];if(!_0x378e58){console['log']('\x0aNon-interactive\x20mode\x20detected.\x20Multiple\x20feature\x20reviews\x20found:');for(const _0xd1cb66 of _0x3bca1a){console[_0x2492a7(0x23f)]('\x20\x20'+_0xd1cb66[_0x2492a7(0x27c)]),console['log'](_0x2492a7(0x21f)+_0xd1cb66['id']),_0xd1cb66['stats']&&console['log'](_0x2492a7(0x268)+_0x5439e0['pubtf'](getProgressDisplay,_0xd1cb66[_0x2492a7(0x24c)])),_0xd1cb66['gitBranch']&&console[_0x2492a7(0x23f)](_0x2492a7(0x1b1)+_0xd1cb66['gitBranch']);}throw new Error(_0x2492a7(0x25b));}const {selected:_0x437819}=await _0x2dd850['prompt']([{'type':_0x5439e0['SIeoR'],'name':_0x5439e0['qVdiQ'],'message':_0x5439e0[_0x2492a7(0x206)],'choices':_0x3bca1a[_0x2492a7(0x1de)](_0x3f932a=>({'name':_0x3f932a[_0x2492a7(0x27c)]+'\x20('+_0x3f932a['id']+')','value':_0x3f932a['id']}))}]);_0x220c7c=_0x3bca1a['find'](_0x4305d9=>_0x4305d9['id']===_0x437819);}await setActiveFeatureId(_0x220c7c['id']);_0x4d06c9&&_0x5439e0['YSPGD'](_0x4d06c9,_0x220c7c['gitBranch'])&&(await updateFeature(_0x220c7c['id'],{'gitBranch':_0x4d06c9}),console['log']('\x20\x20\x20Updated\x20branch\x20to:\x20'+_0x4d06c9));console['log']('\x0a✅\x20Resumed\x20feature\x20review:\x20'+_0x220c7c['name']+'\x20('+_0x220c7c['id']+')'),await tryStartCurrentSession(_0x220c7c['id']);const _0x145244=await _0x5439e0['pubtf'](getFeature,_0x220c7c['id']),_0x3de6d8=process['env']['CLAUDE_SESSION_ID'];_0x3de6d8&&_0x5439e0['IVddE'](registerSession,_0x3de6d8,_0x145244['id']),displayFeature(_0x145244,_0x145244[_0x2492a7(0x22a)]),await printFeedbackNudge(_0x145244['id']);}async function printFeedbackNudge(_0x38d075){const _0x1dfed4=_0x3e12,_0x315ceb={'OopRt':function(_0x270dd3,_0x4d03a9){return _0x270dd3>_0x4d03a9;}};try{const {items:_0x2c2636}=await getActionItems(_0x38d075);let _0x475717=0x0,_0x148513=0x0;for(const _0x2cfffc of _0x2c2636){const _0x3f87c3=await getItemFeedback(_0x38d075,_0x2cfffc['id']);_0x315ceb[_0x1dfed4(0x257)](_0x3f87c3['unaddressedComments']['length'],0x0)&&(_0x475717+=_0x3f87c3['unaddressedComments'][_0x1dfed4(0x236)],_0x148513++);}_0x315ceb['OopRt'](_0x475717,0x0)&&(console['log'](_0x1dfed4(0x1c3)+_0x475717+'\x20unaddressed\x20reviewer\x20comment(s)\x20across\x20'+_0x148513+_0x1dfed4(0x216)),console['log'](_0x1dfed4(0x281)));}catch{}}async function tryStartCurrentSession(_0x528962){const _0x36de0b=_0x3e12,_0x484a8d={'IRSQg':function(_0x32bcc5,_0x3d0cd9){return _0x32bcc5(_0x3d0cd9);}};try{const {sessions:_0x4029ca}=await _0x484a8d['IRSQg'](listFeatureSessions,_0x528962),_0x129143=_0x4029ca[_0x36de0b(0x1d2)](_0x28d8a3=>_0x28d8a3[_0x36de0b(0x229)]==='ready');_0x129143&&(await startSession(_0x528962,_0x129143['id']),console[_0x36de0b(0x23f)](_0x36de0b(0x228)+_0x129143[_0x36de0b(0x22e)]));}catch{}}export async function featureReport(_0x474c33,_0x456f08){const _0x134b60=_0x3e12,_0x4b8530={'wzERG':_0x134b60(0x1ef),'eSRSS':function(_0x58f270,_0x2f07ba,_0x57b489){return _0x58f270(_0x2f07ba,_0x57b489);},'pncNQ':function(_0x12150e){return _0x12150e();},'TaapT':function(_0x3960ae,_0x4aa587){return _0x3960ae(_0x4aa587);},'mWAAn':function(_0x345de2,_0x1c62f7,_0x2ca570,_0x406586){return _0x345de2(_0x1c62f7,_0x2ca570,_0x406586);},'PehiT':_0x134b60(0x1dd)},_0x401aaf=_0x474c33||await getActiveFeatureId();if(!_0x401aaf)throw new Error('No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.');console[_0x134b60(0x23f)](_0x4b8530['wzERG']);const _0x34472d=await _0x4b8530[_0x134b60(0x1b8)](getFeatureReportMarkdown,_0x401aaf,{'style':_0x456f08[_0x134b60(0x270)]}),_0x24e761=_0x456f08['output']||join(_0x4b8530[_0x134b60(0x210)](getRangerDir),'reports',_0x401aaf+'.md'),_0x27701e=join(_0x24e761,'..');!_0x4b8530['TaapT'](existsSync,_0x27701e)&&await mkdir(_0x27701e,{'recursive':!![]}),await _0x4b8530['mWAAn'](writeFile,_0x24e761,_0x34472d,_0x4b8530['PehiT']),console['log'](_0x134b60(0x256)+_0x24e761);}function getScenarioResult(_0x3c49ca){const _0x5f1b96=_0x3e12,_0x3c7235={'odNuR':'closed','QcZsM':'verification_in_progress','njgUY':_0x5f1b96(0x1e2)};if(_0x3c49ca['status']===_0x3c7235[_0x5f1b96(0x1d6)])return _0x3c49ca['terminalReason']??_0x3c7235['odNuR'];if(_0x3c49ca[_0x5f1b96(0x229)]===_0x3c7235['QcZsM'])return _0x3c7235[_0x5f1b96(0x1da)];return _0x3c49ca['status'];}function getScenarioRationale(_0x2c5bdb,_0x5ee42d){const _0x5e1457=_0x3e12;if(_0x5ee42d)return _0x5ee42d;if(_0x2c5bdb['blockedReason'])return _0x2c5bdb['blockedReason'];if(_0x2c5bdb[_0x5e1457(0x1cc)])return _0x2c5bdb['incompleteReason'];if(_0x2c5bdb[_0x5e1457(0x265)])return _0x2c5bdb['canceledReason'];if(_0x2c5bdb['notes'])return _0x2c5bdb[_0x5e1457(0x271)];return null;}export async function featureReportPrDescription(_0x49b438,_0x37f7ba){const _0x39d4cc=_0x3e12,_0x40f454={'DYuNb':_0x39d4cc(0x238),'Jvrtf':function(_0x1226b0,_0x3e456a,_0x5a4e01){return _0x1226b0(_0x3e456a,_0x5a4e01);},'LXxUI':function(_0x46298f,_0x55185e){return _0x46298f===_0x55185e;},'vrXvA':'\x0aAvailable\x20scenarios:','WVSPr':function(_0x17c08e,_0x30d557){return _0x17c08e<_0x30d557;},'YPRuQ':function(_0x3530bb,_0x582a5d,_0x6a8746,_0x165273){return _0x3530bb(_0x582a5d,_0x6a8746,_0x165273);}},_0x161615=_0x49b438||await getActiveFeatureId();if(!_0x161615)throw new Error(_0x40f454['DYuNb']);const _0x52ab49=await getFeature(_0x161615),_0x2efa0b=_0x52ab49['checklistItems']||[],_0x5d8e00=_0x40f454['Jvrtf'](getCurrentSessionItems,_0x52ab49,_0x2efa0b);_0x40f454['LXxUI'](_0x5d8e00['length'],0x0)&&(console[_0x39d4cc(0x21d)]('\x0a❌\x20No\x20scenarios\x20found\x20to\x20include.'),process['exit'](0x1));const _0x3eb2bc=_0x37f7ba[_0x39d4cc(0x226)]??[],_0x2b2058=_0x3eb2bc[_0x39d4cc(0x234)](_0x232497=>!Number['isInteger'](_0x232497)||_0x232497<0x1||_0x232497>_0x5d8e00[_0x39d4cc(0x236)]);if(_0x2b2058[_0x39d4cc(0x236)]>0x0){console[_0x39d4cc(0x21d)](_0x39d4cc(0x245)+_0x2b2058['join'](',\x20')),console['log'](_0x40f454[_0x39d4cc(0x278)]);for(let _0x23e44b=0x0;_0x40f454['WVSPr'](_0x23e44b,_0x5d8e00['length']);_0x23e44b++){console['log']('\x20\x20'+(_0x23e44b+0x1)+'.\x20'+_0x5d8e00[_0x23e44b]['description']);}process['exit'](0x1);}const _0x17ce00=new Set(_0x3eb2bc['map'](_0x428f38=>_0x428f38-0x1)),_0x35aaa7=_0x5d8e00[_0x39d4cc(0x234)]((_0x112b4e,_0x171288)=>!_0x17ce00['has'](_0x171288));_0x35aaa7[_0x39d4cc(0x236)]===0x0&&(console[_0x39d4cc(0x21d)]('\x0a❌\x20All\x20scenarios\x20were\x20excluded.'),process['exit'](0x1));if(_0x37f7ba[_0x39d4cc(0x267)])await _0x40f454['YPRuQ'](outputJsonReport,_0x161615,_0x52ab49,_0x35aaa7);else{const _0x1f310e=await getFeatureReportMarkdown(_0x161615,{'itemIds':_0x35aaa7['map'](_0x2c4710=>_0x2c4710['id'])});process[_0x39d4cc(0x264)]['write'](_0x1f310e['trimEnd']()+'\x0a');}}async function outputJsonReport(_0x153dc2,_0x3177fd,_0x23e9aa){const _0x1fd612=_0x3e12,_0x42d540={'TeLND':function(_0x3186b6,_0x21d8b0){return _0x3186b6(_0x21d8b0);},'KQLzy':function(_0x2e89c0,_0x5a9330){return _0x2e89c0===_0x5a9330;},'YrFCR':function(_0x5071d5,_0x2527a2){return _0x5071d5(_0x2527a2);},'NbKXx':function(_0x1b6c3f,_0xec6228){return _0x1b6c3f+_0xec6228;}},_0x54898d=getApiBaseUrl(),_0x3f3e88=await getFeatureReport(_0x153dc2),_0xef0637=new Map(_0x3f3e88[_0x1fd612(0x22a)]['map'](_0xd8c58e=>[_0xd8c58e['id'],_0xd8c58e])),_0x188fa6=await Promise['all'](_0x23e9aa['map'](async _0x1c03ff=>{const _0x5a3a13=_0x1fd612,_0x29bfef=_0xef0637[_0x5a3a13(0x20f)](_0x1c03ff['id']),_0x5e122a=_0x29bfef?.['linkedSession']??null;let _0x5e8e45=[];if(_0x1c03ff[_0x5a3a13(0x27b)])try{const {steps:_0x22ff4e}=await _0x42d540['TeLND'](getBrowserSessionSteps,_0x1c03ff[_0x5a3a13(0x27b)]);_0x22ff4e[_0x5a3a13(0x236)]>0x0&&(_0x5e8e45=_0x22ff4e[_0x5a3a13(0x1de)](_0x11a9d5=>{const _0x1b1761=_0x5a3a13,_0x1e9ab0=_0x11a9d5[_0x1b1761(0x237)][_0x1b1761(0x1d2)](_0x5b5db6=>_0x5b5db6[_0x1b1761(0x263)]==='screenshot'&&_0x5b5db6['timing']==='after')??_0x11a9d5['assets']['find'](_0x385ebe=>_0x385ebe[_0x1b1761(0x263)]===_0x1b1761(0x266));let _0x411a90=null,_0x5be7ff=null;if(_0x1e9ab0){const _0x3363cb=_0x1e9ab0[_0x1b1761(0x1d4)]['location']['split']('/')['pop']();_0x411a90=_0x54898d+'/api/v1/mcp/browser-sessions/'+_0x1c03ff[_0x1b1761(0x27b)]+'/artifacts/'+_0x3363cb,_0x3363cb&&(_0x5be7ff=_0x3363cb[_0x1b1761(0x1fc)](/\.\w+$/,'')['replace'](/^(key_)?\d+_/,'')[_0x1b1761(0x1fc)](/[-_]/g,'\x20'));}return{'description':_0x5be7ff||_0x11a9d5[_0x1b1761(0x1bf)]||_0x11a9d5['stepName']||'Step\x20'+_0x11a9d5[_0x1b1761(0x261)],'screenshot':_0x411a90,'is_key_step':_0x11a9d5[_0x1b1761(0x1c4)]};}));}catch{}return _0x42d540['KQLzy'](_0x5e8e45[_0x5a3a13(0x236)],0x0)&&_0x5e122a?.['screenshotUrls']&&(_0x5e8e45=_0x5e122a[_0x5a3a13(0x231)][_0x5a3a13(0x1de)]((_0x85436f,_0x57136b)=>({'description':'Screenshot\x20'+(_0x57136b+0x1),'screenshot':_0x85436f,'is_key_step':![]}))),{'description':_0x1c03ff['description'],'result':_0x42d540['YrFCR'](getScenarioResult,_0x1c03ff),'rationale':getScenarioRationale(_0x1c03ff,_0x5e122a?.[_0x5a3a13(0x1f5)]),'steps':_0x5e8e45};})),_0x67f435={'url':_0x3177fd[_0x1fd612(0x240)],'scenarios':_0x188fa6};process['stdout']['write'](_0x42d540['NbKXx'](JSON['stringify'](_0x67f435,null,0x2),'\x0a'));}export async function featureConcludeSession(_0x312628){const _0x34eccb=_0x3e12,_0x3f1e2e={'bRJdJ':function(_0x58ec34){return _0x58ec34();},'dTRkP':function(_0x1d8bca,_0x1c5392){return _0x1d8bca(_0x1c5392);},'Xmxgr':_0x34eccb(0x215),'JhozF':'in_progress'},_0x264858=_0x312628||await _0x3f1e2e['bRJdJ'](getActiveFeatureId);if(!_0x264858)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 _0x41a24a=await _0x3f1e2e['dTRkP'](getFeature,_0x264858);if(!_0x41a24a['currentSessionId'])throw new Error(_0x3f1e2e[_0x34eccb(0x230)]);const {sessions:_0x89e64d}=await listFeatureSessions(_0x264858),_0x6033a3=_0x89e64d['find'](_0x409dc4=>_0x409dc4['id']===_0x41a24a['currentSessionId']);if(!_0x6033a3)throw new Error('Current\x20session\x20not\x20found.');if(_0x6033a3[_0x34eccb(0x229)]==='completed'){console['log'](_0x34eccb(0x1bd));return;}if(_0x6033a3['status']!==_0x3f1e2e['JhozF'])throw new Error(_0x34eccb(0x200)+_0x6033a3['status']);console[_0x34eccb(0x23f)](_0x34eccb(0x217)),await concludeSession(_0x264858,_0x41a24a[_0x34eccb(0x205)]),console[_0x34eccb(0x23f)]('\x0a✅\x20Session\x20'+_0x6033a3[_0x34eccb(0x22e)]+'\x20concluded.'),console[_0x34eccb(0x23f)]('\x20\x20\x20The\x20feature\x20review\x20is\x20now\x20ready\x20for\x20human\x20review\x20on\x20the\x20Ranger\x20dashboard.');}function _0x234a(){const _0x575e07=['Showing\x20','submittedAt','yMaGh','No\x20active\x20session\x20for\x20this\x20feature\x20review.','\x20scenario(s).','\x0aConcluding\x20session...','guIPJ','\x20\x20✅\x20No\x20feedback\x20to\x20address','verification_in_progress','Unknown','git\x20rev-parse\x20--abbrev-ref\x20HEAD','error','xgpsp','\x20\x20\x20\x20\x20ID:\x20','pxGDE','LzHIs','blockedReason','scenarios','join','vJFWO','excludeScenarios','gitBranch','\x20\x20\x20▶️\x20Started\x20session\x20','status','checklistItems','spatial','approved','repeat','iteration','selected','Xmxgr','screenshotUrls','any','\x0aCreating\x20feature\x20review...','filter','Run:\x20ranger\x20create\x20\x22<name>\x22\x20to\x20create\x20a\x20new\x20feature\x20review','length','assets','No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.','\x20\x20\x20Completed:\x20','lAYxf','\x20\x20\x20\x20\x20\x20Cancelled:\x20','split','pendingItems','authorEmail','log','dashboardUrl','VKSGj','feedback-images','zaEhn','7vqjqDH','\x0a❌\x20Invalid\x20scenario\x20number(s):\x20','toLocaleDateString','\x0a✅\x20Scenario\x20added','gQTEq','10gIhttG','24247586QRawDG','github.com/','stats','NxMmL','12942819CQYBHH','VmWRW','7291252ZOKkhe','vdkVr','\x20--current-branch','\x20in\x20progress','tNXXG','env','\x0a✅\x20Report\x20generated:\x20','OopRt','EkdAz','domRef','verified','Please\x20specify\x20the\x20feature\x20review\x20ID:\x20ranger\x20resume\x20<id>','BRzQJ','stdin','createdAt','NcxAh','...','position','trim','assetType','stdout','canceledReason','screenshot','json','\x20\x20\x20\x20\x20Progress:\x20','en-US','qfTVm','YGVjN','MVBIA','863524ZGbZJc','limit','580374UGQnWP','style','notes','gitRepoUrl','isTTY','completedAt','point','vjLGI','coordinates','vrXvA','\x20\x20Expected\x20flow:','1FUpXVg','browserSessionId','name','version','zNMdr','\x20\x20\x20ID:\x20','pipe','\x20\x20\x20Run\x20`ranger\x20get-review`\x20to\x20see\x20what\x20needs\x20to\x20be\x20fixed.','No\x20sessions\x20found.','type','ofirE','RCjEC','closed','vlvjc','element','scenario','push','AoIdi','\x20\x20\x20\x20\x20Branch:\x20','hFaKj','LQelt','TstaH','currentBranch','cHROF','textContent','eSRSS','\x20\x20\x20Updated\x20branch\x20to:\x20','\x20>\x20','\x20--include-deleted','blockedItems','\x0a✅\x20Session\x20is\x20already\x20completed.','.\x20Feature\x20review\x20has\x20','description','RnVEr','dCBbP','\x20\x20\x20Progress:\x20','\x0a⚠️\x20\x20','isKeyStep','\x0a❌\x20No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.','unaddressedComments','hlxFA','Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','short','\x0aAvailable\x20scenarios:','\x20--limit\x20','incompleteReason','toFixed','toLocaleString','blocked','\x20\x20💬\x20','hxlHX','find','oTJIG','storage','Xvstz','odNuR','exit','canonicalFlow','pxqLH','njgUY','LGtNC','wvAYh','utf-8','map','OQGkk','TLWho','\x20\x20\x20Created:\x20','in_progress','numeric','dWSDr','\x0a✅\x20Restored\x20feature\x20review:\x20','cCROA','\x20feature\x20review(s)\x20found','list','\x0aNo\x20matching\x20active\x20feature\x20reviews\x20found.','totalCount','DOnhG','FBlpg','selector','\x20unaddressed\x20comment(s)','\x0aGenerating\x20report...','):\x20\x22','Scenario\x20','\x20at\x20[','Next\x20page:\x20ranger\x20list\x20--offset\x20','gzclu','agentResponse','NWLSg','4799365SXAdVh','items','sessionId','Not\x20in\x20a\x20git\x20repository.','\x0a❌\x20Cannot\x20edit\x20scenario:\x20feature\x20review\x20has\x20an\x20active\x20review.','replace','XdheT','verifiedItems','URxCh','Cannot\x20conclude\x20session\x20with\x20status:\x20','xyRcD','6HBHtBj','bLrlF','terminalReason','currentSessionId','CdWPI','\x20\x20\x20Description:\x20','Please\x20finish\x20your\x20review\x20first:','\x20blocked','latestReview','\x20\x20\x20\x20\x20📍\x20Annotation:\x20','\x20\x20\x20To\x20restore\x20it,\x20run:\x20ranger\x20restore\x20','offset','9465208fdZsnR','get','pncNQ','NJTqe'];_0x234a=function(){return _0x575e07;};return _0x234a();}export async function featureSessions(_0x4370ac){const _0x41960e=_0x3e12,_0x4235a6={'TLWho':function(_0x2ff9fd){return _0x2ff9fd();},'pxGDE':'No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.','xyRcD':function(_0x506f99,_0x177453){return _0x506f99(_0x177453);},'oTJIG':function(_0xd0331c,_0x55efa3){return _0xd0331c===_0x55efa3;},'BRzQJ':_0x41960e(0x1e2)},_0x40e26b=_0x4370ac||await _0x4235a6[_0x41960e(0x1e0)](getActiveFeatureId);if(!_0x40e26b)throw new Error(_0x4235a6[_0x41960e(0x220)]);const _0x566804=await _0x4235a6[_0x41960e(0x201)](getFeature,_0x40e26b);console['log']('\x0a📁\x20Sessions\x20for\x20feature\x20review:\x20'+_0x566804[_0x41960e(0x27c)]+'\x0a');const {sessions:_0x115cfc}=await listFeatureSessions(_0x40e26b);if(_0x115cfc[_0x41960e(0x236)]===0x0){console[_0x41960e(0x23f)](_0x41960e(0x282));return;}for(const _0x5d3831 of _0x115cfc){const _0x1aadb5=_0x4235a6[_0x41960e(0x1d3)](_0x5d3831[_0x41960e(0x229)],'completed')?'✅':_0x4235a6[_0x41960e(0x1d3)](_0x5d3831['status'],_0x4235a6[_0x41960e(0x25c)])?'🔄':'▶️';console['log'](_0x1aadb5+'\x20Session\x20'+_0x5d3831[_0x41960e(0x22e)]+'\x20('+_0x5d3831['id']+')'),console[_0x41960e(0x23f)]('\x20\x20\x20Status:\x20'+_0x5d3831[_0x41960e(0x229)]),console['log'](_0x41960e(0x1e1)+new Date(_0x5d3831[_0x41960e(0x25e)])[_0x41960e(0x1ce)]()),_0x5d3831['completedAt']&&console['log']('\x20\x20\x20Completed:\x20'+new Date(_0x5d3831[_0x41960e(0x274)])[_0x41960e(0x1ce)]()),console['log']('');}}export async function featureAddScenario(_0x5f3c46,_0x2f3f67){const _0x5954fd=_0x3e12,_0x369297={'XMCqg':'No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','ZCbtv':function(_0x4dc4f3,_0x306f2c){return _0x4dc4f3(_0x306f2c);},'QKDlY':function(_0x56815c,_0x6eadde,_0x4708a3){return _0x56815c(_0x6eadde,_0x4708a3);}},_0x33b806=_0x2f3f67||await getActiveFeatureId();if(!_0x33b806)throw new Error(_0x369297['XMCqg']);const _0x256505=await _0x369297['ZCbtv'](getFeature,_0x33b806);if(_0x256505[_0x5954fd(0x20a)]&&!_0x256505['latestReview']['submittedAt'])throw new Error('Cannot\x20add\x20scenario:\x20feature\x20review\x20has\x20an\x20active\x20review.\x20Please\x20finish\x20your\x20review\x20first:\x20'+_0x256505['dashboardUrl']);await _0x369297['QKDlY'](createChecklistItem,_0x33b806,_0x5f3c46);const _0x139ca9=await getFeature(_0x33b806);console['log'](_0x5954fd(0x247)),displayFeature(_0x139ca9,_0x139ca9[_0x5954fd(0x22a)]);}export async function featureEditScenario(_0x3c4e19,_0x30238f){const _0x539b90=_0x3e12,_0x1ce82b={'YGVjN':_0x539b90(0x1c5),'ofirE':_0x539b90(0x1c8),'XJjIN':_0x539b90(0x1fb),'dCBbP':_0x539b90(0x208),'vjLGI':function(_0x381225,_0x43cca2){return _0x381225===_0x43cca2;},'VIhNL':'\x0a❌\x20No\x20scenarios\x20found\x20to\x20edit.','GeKLp':function(_0x8b850,_0x5b76bb){return _0x8b850===_0x5b76bb;},'wvAYh':'\x0a❌\x20No\x20scenario\x20number\x20provided.\x20Use\x20--scenario\x20<number>.','CgKnB':function(_0x3bce36,_0x54e371){return _0x3bce36+_0x54e371;},'riJdX':function(_0x3ab196,_0x1cf913){return _0x3ab196-_0x1cf913;},'pxqLH':function(_0x9d7266,_0xca421c){return _0x9d7266>=_0xca421c;},'hxlHX':_0x539b90(0x1ca),'JHrFm':function(_0x440a4a,_0x3ec067){return _0x440a4a<_0x3ec067;},'riuOY':function(_0x533bca,_0x2df339){return _0x533bca(_0x2df339);}},_0x434e0a=_0x30238f['id']||await getActiveFeatureId();!_0x434e0a&&(console[_0x539b90(0x21d)](_0x1ce82b[_0x539b90(0x26b)]),console[_0x539b90(0x21d)](_0x1ce82b[_0x539b90(0x284)]),process['exit'](0x1));const _0x131671=await getFeature(_0x434e0a);_0x131671['latestReview']&&!_0x131671[_0x539b90(0x20a)][_0x539b90(0x213)]&&(console['error'](_0x1ce82b['XJjIN']),console['error'](_0x1ce82b[_0x539b90(0x1c1)]),console['error']('\x20\x20'+_0x131671['dashboardUrl']),process['exit'](0x1));const _0x53dc5f=_0x131671['checklistItems']||[];_0x1ce82b[_0x539b90(0x276)](_0x53dc5f[_0x539b90(0x236)],0x0)&&(console['error'](_0x1ce82b['VIhNL']),process[_0x539b90(0x1d7)](0x1));if(_0x1ce82b['GeKLp'](_0x30238f[_0x539b90(0x1ae)],undefined)){console[_0x539b90(0x21d)](_0x1ce82b[_0x539b90(0x1dc)]),console[_0x539b90(0x23f)](_0x539b90(0x1ca));for(let _0x1189cc=0x0;_0x1189cc<_0x53dc5f['length'];_0x1189cc++){console['log']('\x20\x20'+_0x1ce82b['CgKnB'](_0x1189cc,0x1)+'.\x20'+_0x53dc5f[_0x1189cc][_0x539b90(0x1bf)]);}process[_0x539b90(0x1d7)](0x1);}const _0x57f8da=_0x1ce82b['riJdX'](_0x30238f[_0x539b90(0x1ae)],0x1);if(_0x57f8da<0x0||_0x1ce82b[_0x539b90(0x1d9)](_0x57f8da,_0x53dc5f[_0x539b90(0x236)])){console[_0x539b90(0x21d)]('\x0a❌\x20Invalid\x20scenario\x20index:\x20'+_0x30238f['scenario']+_0x539b90(0x1be)+_0x53dc5f[_0x539b90(0x236)]+'\x20scenarios.'),console[_0x539b90(0x23f)](_0x1ce82b[_0x539b90(0x1d1)]);for(let _0xbffa2b=0x0;_0x1ce82b['JHrFm'](_0xbffa2b,_0x53dc5f[_0x539b90(0x236)]);_0xbffa2b++){console['log']('\x20\x20'+(_0xbffa2b+0x1)+'.\x20'+_0x53dc5f[_0xbffa2b]['description']);}process['exit'](0x1);}const _0x57a6f3=_0x53dc5f[_0x57f8da];await updateChecklistItem(_0x434e0a,_0x57a6f3['id'],{'description':_0x3c4e19});const _0x235a89=await _0x1ce82b['riuOY'](getFeature,_0x434e0a);console[_0x539b90(0x23f)]('\x0a✅\x20Scenario\x20updated'),displayFeature(_0x235a89,_0x235a89[_0x539b90(0x22a)]);}async function downloadFeedbackImage(_0x320164,_0x43cd1e){const _0x29cfd7=_0x3e12,_0x369565={'wOYGR':function(_0x4987f4,_0x2d7d41,_0x9413b2){return _0x4987f4(_0x2d7d41,_0x9413b2);},'hMPwR':function(_0x4355ac){return _0x4355ac();},'njCeo':function(_0x1717da,_0x2530e2){return _0x1717da(_0x2530e2);}};try{const _0xef5eb=_0x369565['wOYGR'](join,_0x369565['hMPwR'](getRangerDir),_0x29cfd7(0x242));await mkdir(_0xef5eb,{'recursive':!![]});const _0x207973=join(_0xef5eb,'comment_'+_0x43cd1e+'.png'),_0x5d14c7=await _0x369565['njCeo'](fetch,_0x320164);if(!_0x5d14c7['ok'])return null;const _0x403911=Buffer['from'](await _0x5d14c7['arrayBuffer']());return await writeFile(_0x207973,_0x403911),_0x207973;}catch{return null;}}export async function featureGetReview(_0x5ea537){const _0x2205ce=_0x3e12,_0x6ad734={'LGtNC':function(_0x13ce47,_0x1155d0){return _0x13ce47===_0x1155d0;},'XdheT':'No\x20scenarios\x20found.','RnVEr':function(_0x1579be,_0x391001){return _0x1579be<_0x391001;},'ceVyf':function(_0x2f6868,_0x26d310){return _0x2f6868>_0x26d310;},'RCjEC':function(_0x304017,_0x5932f7,_0xa195a9){return _0x304017(_0x5932f7,_0xa195a9);},'jzhwC':function(_0x16c482,_0x353de0){return _0x16c482+_0x353de0;},'zaEhn':_0x2205ce(0x269),'IJSHm':function(_0x31dfc2,_0x3a21c9){return _0x31dfc2>=_0x3a21c9;},'yMaGh':function(_0x5c08c5,_0x429ed8){return _0x5c08c5+_0x429ed8;}},_0x54c14e=_0x5ea537||await getActiveFeatureId();if(!_0x54c14e)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 _0x4c78e8=await getFeature(_0x54c14e),{items:_0x282236}=await getActionItems(_0x54c14e);console['log']('\x0a📋\x20Feedback\x20for:\x20'+_0x4c78e8[_0x2205ce(0x27c)]+'\x20('+_0x4c78e8['id']+')\x0a');if(_0x6ad734['LGtNC'](_0x282236['length'],0x0)){console['log'](_0x6ad734[_0x2205ce(0x1fd)]);return;}for(let _0x5c3233=0x0;_0x6ad734[_0x2205ce(0x1c0)](_0x5c3233,_0x282236[_0x2205ce(0x236)]);_0x5c3233++){const _0x2280ae=_0x282236[_0x5c3233],_0x56ea1b=_0x6ad734['ceVyf'](_0x2280ae['version'],0x1)?'\x20(v'+_0x2280ae['version']+')':'',_0x4375cc=await _0x6ad734[_0x2205ce(0x285)](getItemFeedback,_0x54c14e,_0x2280ae['id']);if(_0x4375cc['unaddressedComments']['length']>0x0){console[_0x2205ce(0x23f)]('Scenario\x20'+_0x6ad734['jzhwC'](_0x5c3233,0x1)+':\x20\x22'+_0x2280ae['description']+'\x22'+_0x56ea1b+'\x20—\x20'+_0x4375cc['unaddressedComments']['length']+_0x2205ce(0x1ee));for(const _0x4c0cc3 of _0x4375cc[_0x2205ce(0x1c6)]){const _0x185e9d=new Date(_0x4c0cc3[_0x2205ce(0x25e)])['toLocaleDateString'](_0x6ad734[_0x2205ce(0x243)],{'month':_0x2205ce(0x1c9),'day':_0x2205ce(0x1e3)}),_0x12b334=_0x4c0cc3['authorName']||_0x4c0cc3[_0x2205ce(0x23e)]||_0x2205ce(0x21b);console[_0x2205ce(0x23f)](_0x2205ce(0x1d0)+_0x12b334+'\x20('+_0x185e9d+_0x2205ce(0x1f0)+_0x4c0cc3['content']+'\x22');if(_0x4c0cc3['assetUrl']){const _0x190135=await downloadFeedbackImage(_0x4c0cc3['assetUrl'],_0x4c0cc3['id']);_0x190135&&console[_0x2205ce(0x23f)]('\x20\x20\x20\x20\x20📷\x20Screenshot:\x20'+_0x190135);}if(_0x4c0cc3['domRef']){const _0x3a9f89=_0x4c0cc3['domRef'][_0x2205ce(0x1ed)]['split'](_0x2205ce(0x1ba))['pop']()?.[_0x2205ce(0x23c)](':')[0x0]||_0x2205ce(0x288),_0x4ce174=_0x4c0cc3['domRef'][_0x2205ce(0x1b7)]?'\x20\x22'+_0x4c0cc3['domRef']['textContent']['slice'](0x0,0x3c)+'\x22':'';console[_0x2205ce(0x23f)]('\x20\x20\x20\x20\x20🎯\x20Element:\x20<'+_0x3a9f89+'>'+_0x4ce174),console['log']('\x20\x20\x20\x20\x20📋\x20Selector:\x20'+_0x4c0cc3[_0x2205ce(0x259)]['selector']);}else{if(_0x4c0cc3['spatial']){const _0x54a719=_0x4c0cc3[_0x2205ce(0x22b)][_0x2205ce(0x277)];_0x6ad734[_0x2205ce(0x1db)](_0x4c0cc3[_0x2205ce(0x22b)]['type'],_0x2205ce(0x275))&&_0x6ad734['IJSHm'](_0x54a719[_0x2205ce(0x236)],0x2)?console[_0x2205ce(0x23f)]('\x20\x20\x20\x20\x20📍\x20Annotation:\x20point\x20at\x20('+_0x54a719[0x0][_0x2205ce(0x1cd)](0x2)+',\x20'+_0x54a719[0x1][_0x2205ce(0x1cd)](0x2)+')'):console['log'](_0x2205ce(0x20b)+_0x4c0cc3['spatial'][_0x2205ce(0x283)]+_0x2205ce(0x1f2)+_0x54a719['map'](_0x14f613=>_0x14f613[_0x2205ce(0x1cd)](0x2))[_0x2205ce(0x224)](',\x20')+']');}}}if(_0x4375cc[_0x2205ce(0x1d8)]){console[_0x2205ce(0x23f)](_0x2205ce(0x279));for(const _0x1c96f4 of _0x4375cc[_0x2205ce(0x1d8)]['split']('\x0a')){console[_0x2205ce(0x23f)]('\x20\x20\x20\x20'+_0x1c96f4);}}}else console['log'](_0x2205ce(0x1f1)+_0x6ad734[_0x2205ce(0x214)](_0x5c3233,0x1)+':\x20\x22'+_0x2280ae['description']+'\x22'+_0x56ea1b+'\x20—\x20no\x20comments'),console['log'](_0x2205ce(0x219));console['log']('');}}export async function featureDelete(_0x4106f0){const _0x4f91bf=_0x3e12,_0x259406={'vIaCX':function(_0x105e99){return _0x105e99();},'vdkVr':'No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','cCROA':function(_0x341d0e,_0x518d03){return _0x341d0e(_0x518d03);},'NcxAh':function(_0x1d6325,_0x27e977){return _0x1d6325+_0x27e977;},'bLrlF':_0x4f91bf(0x20c)},_0x5b89c8=_0x4106f0||await _0x259406['vIaCX'](getActiveFeatureId);if(!_0x5b89c8)throw new Error(_0x259406[_0x4f91bf(0x251)]);const _0x16a929=await _0x259406[_0x4f91bf(0x1e6)](getFeature,_0x5b89c8);await softDeleteFeature(_0x5b89c8),console[_0x4f91bf(0x23f)]('\x0a🗑️\x20\x20Deleted\x20feature\x20review:\x20'+_0x16a929[_0x4f91bf(0x27c)]+'\x20('+_0x5b89c8+')'),console[_0x4f91bf(0x23f)](_0x259406[_0x4f91bf(0x25f)](_0x259406[_0x4f91bf(0x203)],_0x5b89c8));}export async function featureRestore(_0xf5ceb){const _0x2eb2e7=_0x3e12,_0x2f887e={'LzHIs':function(_0x1e4a9e,_0x4d38d2){return _0x1e4a9e(_0x4d38d2);},'gzclu':function(_0x4a8763,_0x508727,_0x3d0899){return _0x4a8763(_0x508727,_0x3d0899);}};await _0x2f887e[_0x2eb2e7(0x221)](restoreFeature,_0xf5ceb);const _0x3df9fd=await _0x2f887e['LzHIs'](getFeature,_0xf5ceb);console[_0x2eb2e7(0x23f)](_0x2eb2e7(0x1e5)+_0x3df9fd['name']+'\x20('+_0xf5ceb+')'),_0x2f887e[_0x2eb2e7(0x1f4)](displayFeature,_0x3df9fd,_0x3df9fd['checklistItems']);}
1
+ const _0x1307aa=_0x4254;(function(_0x43ab5a,_0x4d747b){const _0x1bc995=_0x4254,_0x2f7458=_0x43ab5a();while(!![]){try{const _0x3951d6=parseInt(_0x1bc995(0x1c4))/0x1+-parseInt(_0x1bc995(0x26d))/0x2*(parseInt(_0x1bc995(0x22d))/0x3)+-parseInt(_0x1bc995(0x273))/0x4+-parseInt(_0x1bc995(0x20c))/0x5*(parseInt(_0x1bc995(0x1f3))/0x6)+parseInt(_0x1bc995(0x24b))/0x7+-parseInt(_0x1bc995(0x220))/0x8*(-parseInt(_0x1bc995(0x239))/0x9)+parseInt(_0x1bc995(0x1e7))/0xa*(parseInt(_0x1bc995(0x1dd))/0xb);if(_0x3951d6===_0x4d747b)break;else _0x2f7458['push'](_0x2f7458['shift']());}catch(_0x52fdb1){_0x2f7458['push'](_0x2f7458['shift']());}}}(_0x65c8,0x3363c));import{readFile,writeFile,mkdir}from'fs/promises';import{join}from'path';import{existsSync}from'fs';import{execSync}from'child_process';import _0x2c2b56 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';function _0x4254(_0x568cab,_0x5da6f9){_0x568cab=_0x568cab-0x19a;const _0x65c8ea=_0x65c8();let _0x425468=_0x65c8ea[_0x568cab];return _0x425468;}import{formatProfileRequiredMessage}from'./utils/profileMessages.js';import{listCloudProfiles}from'./utils/cloudProfile.js';const ACTIVE_FEATURE_FILE='active-feature.txt',bold=_0x3489a2=>_0x1307aa(0x25f)+_0x3489a2+_0x1307aa(0x1cf);function getGitRepoUrl(){const _0x21bc4=_0x1307aa,_0x3a52ae={'hnrPO':'pipe'};try{const _0x2bfe43=execSync(_0x21bc4(0x1ea),{'encoding':'utf-8','stdio':[_0x21bc4(0x24c),'pipe',_0x3a52ae[_0x21bc4(0x1c3)]]})[_0x21bc4(0x1cb)]();return _0x2bfe43['replace'](/\.git$/,'')['replace'](/^git@github\.com:/,'github.com/')['replace'](/^https?:\/\//,'');}catch{return undefined;}}function getGitBranch(){const _0x285b75=_0x1307aa,_0xb4d2bb={'iNgwR':'git\x20rev-parse\x20--abbrev-ref\x20HEAD','cwRAf':_0x285b75(0x24c)};try{return execSync(_0xb4d2bb['iNgwR'],{'encoding':_0x285b75(0x27a),'stdio':[_0xb4d2bb[_0x285b75(0x1b9)],_0xb4d2bb['cwRAf'],_0xb4d2bb[_0x285b75(0x1b9)]]})[_0x285b75(0x1cb)]();}catch{return undefined;}}export async function getActiveFeatureId(){const _0x22b635=_0x1307aa,_0x43dc4d={'eENTs':function(_0x15475e){return _0x15475e();},'qawaU':'utf-8'},_0x137675=join(_0x43dc4d[_0x22b635(0x274)](getRangerDir),ACTIVE_FEATURE_FILE);if(!existsSync(_0x137675))return null;try{const _0x230f1a=await readFile(_0x137675,_0x43dc4d[_0x22b635(0x1c1)]);return _0x230f1a[_0x22b635(0x1cb)]()||null;}catch{return null;}}async function setActiveFeatureId(_0x53d643){const _0x133f39=_0x1307aa,_0x32b818={'bIPFn':function(_0x4ade02,_0x1821f4){return _0x4ade02(_0x1821f4);},'tBsws':function(_0x3267c1,_0x59277e,_0xb9c1a0){return _0x3267c1(_0x59277e,_0xb9c1a0);}},_0x22cb42=getRangerDir(),_0x2e8000=join(_0x22cb42,ACTIVE_FEATURE_FILE);!_0x32b818[_0x133f39(0x248)](existsSync,_0x22cb42)&&await _0x32b818['tBsws'](mkdir,_0x22cb42,{'recursive':!![]}),await writeFile(_0x2e8000,_0x53d643,'utf-8');}function _0x65c8(){const _0x239b2b=['location','ZrvAV','DmjZw','\x0a✅\x20Scenario\x20updated','xYRSp','after','isTTY','all','WptYv','No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.','No\x20scenarios\x20found.','NhlrW','\x20\x20\x20Completed:\x20','verified','8yRogzL','UvJaR','.md','\x0aNo\x20feature\x20reviews\x20found.','\x20\x20\x20\x20\x20\x20Cancelled:\x20','agentResponse','gqqfS','rXBHY','/artifacts/','QgidZ','vqYOS','\x20\x20\x20','ready','225xjfkSS','\x0a❌\x20All\x20scenarios\x20were\x20excluded.','\x20concluded.','dFuzY','arARz','ctnnp','warn','RANGER_TEST_USERNAME','\x20\x20\x20▶️\x20Started\x20session\x20','tbhhl','write','\x20\x20\x20\x20\x20📍\x20Annotation:\x20','2634804CnPrPe','\x20unaddressed\x20reviewer\x20comment(s)\x20across\x20','filter','\x20\x20\x20Progress:\x20','\x0a📁\x20Sessions\x20for\x20feature\x20review:\x20','QseRJ','cnTDD','comment_','GTxDf','ksZjI','env','\x0a✅\x20Report\x20generated:\x20','uLOSK','screenshotUrls','tKKfM','bIPFn','join','gitBranch','2075801FGbEHf','pipe','iteration','YYOqP','content','\x0aGenerating\x20report...','\x20\x20\x20\x20\x20Progress:\x20','feedback-images','MjoQF','includeDeleted','\x20Session\x20','exit','HTKJM','stepName','\x0a⚠️\x20\x20','push','5|3|2|1|0|4','BzbMz','PxZpT','\x20(v','\x1b[1m','repeat','\x0a❌\x20Cannot\x20edit\x20scenario:\x20feature\x20review\x20has\x20an\x20active\x20review.','closed','selected','mjxGa','MVxgi','No\x20active\x20session\x20for\x20this\x20feature\x20review.','wMVcV','\x20\x20\x20Run\x20`ranger\x20get-review`\x20to\x20see\x20what\x20needs\x20to\x20be\x20fixed.','stringify','stdin','tqOly','\x0a❌\x20Invalid\x20scenario\x20number(s):\x20','4838yEvjAS','parentItemId','completedAt','\x20\x20\x20\x20\x20🎯\x20Element:\x20<','excludeScenarios','Please\x20finish\x20your\x20review\x20first:','586964UflDiI','eENTs','tZoBL','find','XBUKK','spatial','from','utf-8','\x0aAvailable\x20scenarios:','\x0a🗑️\x20\x20Deleted\x20feature\x20review:\x20','/api/v1/mcp/browser-sessions/','pendingItems','\x0a📋\x20Feedback\x20for:\x20','items','\x20\x20\x20ID:\x20','\x0aCreating\x20feature\x20review...','Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','browserSessionId','length','dfKyh','\x20verified','log','No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','IXUnq','\x20\x20\x20\x20\x20📋\x20Selector:\x20','\x20at\x20[','yLLod','checklistItems','latestReview','toFixed','CYOXO','CUNkc','incomplete','...','map','\x20\x20\x20Repository:\x20','Multiple\x20feature\x20reviews\x20found.\x20Select\x20one:','mDCzI','JlQmL','cwRAf','oojsP','\x20\x20\x20To\x20restore\x20it,\x20run:\x20ranger\x20restore\x20','MUtOY','HSPNQ','RPMRZ','name','textContent','qawaU','dashboardUrl','hnrPO','25920PPAvyc','AuFbq','cbqmi','offset','MIwdM','description','\x20\x20\x20Created:\x20','trim','blockedReason','version','status','\x1b[0m','canceledReason','VDFfH','sessionId','\x20in\x20progress','verificationInProgressItems','Cannot\x20add\x20scenario:\x20feature\x20review\x20has\x20an\x20active\x20review.\x20Please\x20finish\x20your\x20review\x20first:\x20','replace','completed','stats','fpImh','\x20\x20\x20\x20\x20\x20Approved','YkhOe','type','533654vdKHxZ','incompleteReason','currentSessionId','stdout','style','has','Please\x20specify\x20the\x20feature\x20review\x20ID:\x20ranger\x20resume\x20<id>','puBkR','Unknown','\x20\x20\x20The\x20feature\x20review\x20is\x20now\x20ready\x20for\x20human\x20review\x20on\x20the\x20Ranger\x20dashboard.','50GmZAPp','gitRepoUrl','scenario','git\x20remote\x20get-url\x20origin','\x20\x20\x20Description:\x20','\x20scenario(s).','YJDyH','QGeLZ','\x0a❌\x20Invalid\x20scenario\x20index:\x20','tQhBY','terminalReason',':\x20\x22','638262djUPIT','OiyOt','blocked','WxVMZ','assets','verifiedItems','\x0a✅\x20Session\x20','\x0a\x20\x20\x20Scenarios:','screenshot','MFTlL','domRef','nRegP','verification_in_progress','SIJmY','\x0a✅\x20Resumed\x20feature\x20review:\x20','any','Not\x20in\x20a\x20git\x20repository.','\x20unaddressed\x20comment(s)','\x0aSearching\x20for\x20feature\x20reviews\x20matching:\x20','unaddressedComments','split','\x20\x20\x20Updated\x20branch\x20to:\x20','VvRXP','totalCount','\x0a❌\x20No\x20scenarios\x20found\x20to\x20edit.','15LCwDiZ','createdAt','Gmvwe','error','limit','selector'];_0x65c8=function(){return _0x239b2b;};return _0x65c8();}function getProgressDisplay(_0x181c83){const _0x5d30e1=_0x1307aa,_0x50d731={'YJDyH':function(_0x54a860,_0x5e8e4e){return _0x54a860+_0x5e8e4e;},'hkjLm':function(_0x52234e,_0x1dd0ec){return _0x52234e-_0x1dd0ec;},'HTKJM':function(_0x419d94,_0x5b79b7){return _0x419d94>_0x5b79b7;}},_0x300d15=_0x181c83[_0x5d30e1(0x1f8)]||0x0,_0x449f52=_0x181c83[_0x5d30e1(0x1d4)]||0x0,_0x4f2c98=_0x181c83['blockedItems']||0x0,_0x414480=_0x181c83['incompleteItems']||0x0,_0x1e6d0c=_0x181c83[_0x5d30e1(0x19d)]||0x0,_0x3ffe97=_0x50d731[_0x5d30e1(0x1ed)](_0x300d15,_0x449f52)+_0x4f2c98+_0x414480+_0x1e6d0c;if(_0x3ffe97===0x0)return'-';const _0x2efb54=0xa,_0x1b8e42=Math['round'](_0x300d15/_0x3ffe97*_0x2efb54),_0x329743='█'['repeat'](_0x1b8e42)+'░'[_0x5d30e1(0x260)](_0x50d731['hkjLm'](_0x2efb54,_0x1b8e42)),_0x50fd2b=[];if(_0x50d731['HTKJM'](_0x4f2c98,0x0))_0x50fd2b[_0x5d30e1(0x25a)](_0x4f2c98+'\x20blocked');if(_0x414480>0x0)_0x50fd2b[_0x5d30e1(0x25a)](_0x414480+'\x20incomplete');if(_0x50d731['HTKJM'](_0x449f52,0x0))_0x50fd2b[_0x5d30e1(0x25a)](_0x449f52+_0x5d30e1(0x1d3));const _0x49b6a8=_0x50d731[_0x5d30e1(0x257)](_0x50fd2b['length'],0x0)?'\x20('+_0x50fd2b['join'](',\x20')+')':'';return _0x329743+'\x20'+_0x300d15+'/'+_0x3ffe97+_0x5d30e1(0x1a6)+_0x49b6a8;}function getCurrentSessionItems(_0x3f3030,_0x490b36){const _0x43325b=_0x1307aa;if(!_0x3f3030[_0x43325b(0x1df)])return _0x490b36['filter'](_0x556ae3=>!_0x556ae3['sessionId']);return _0x490b36['filter'](_0x2b665d=>_0x2b665d[_0x43325b(0x1d2)]===_0x3f3030['currentSessionId']||!_0x2b665d[_0x43325b(0x1d2)]);}function displayFeature(_0x370fb0,_0x3ba0ac){const _0x11973a=_0x1307aa,_0x27578b={'vKBQQ':function(_0x1976a2,_0x392cb3){return _0x1976a2(_0x392cb3);},'YyWRy':function(_0x3bbc15,_0x1ee57e){return _0x3bbc15>_0x1ee57e;},'fpzDt':_0x11973a(0x1fa),'PxZpT':function(_0x303cc6,_0x3edd0a){return _0x303cc6<_0x3edd0a;},'oojsP':function(_0x4f6547,_0x3be222){return _0x4f6547===_0x3be222;},'VvRXP':'approved','MUtOY':'verified','BItJm':function(_0x581112,_0x30791e){return _0x581112!==_0x30791e;},'tqOly':'closed','ctnnp':'blocked'};console[_0x11973a(0x1a7)]('\x0a'+_0x370fb0[_0x11973a(0x1bf)]+'\x20('+_0x370fb0['dashboardUrl']+')');_0x370fb0[_0x11973a(0x1d8)]&&console['log'](_0x11973a(0x23c)+_0x27578b['vKBQQ'](getProgressDisplay,_0x370fb0[_0x11973a(0x1d8)]));_0x370fb0[_0x11973a(0x1c9)]&&console['log'](_0x11973a(0x1eb)+_0x370fb0['description']);_0x370fb0[_0x11973a(0x1e8)]&&console['log'](_0x11973a(0x1b5)+_0x370fb0[_0x11973a(0x1e8)]);_0x370fb0[_0x11973a(0x24a)]&&console['log']('\x20\x20\x20Branch:\x20'+_0x370fb0['gitBranch']);console[_0x11973a(0x1a7)]('\x20\x20\x20Created:\x20'+new Date(_0x370fb0[_0x11973a(0x20d)])['toLocaleString']());_0x370fb0['completedAt']&&console['log'](_0x11973a(0x21e)+new Date(_0x370fb0[_0x11973a(0x26f)])['toLocaleString']());if(_0x3ba0ac&&_0x27578b['YyWRy'](_0x3ba0ac[_0x11973a(0x1a4)],0x0)){console['log'](_0x27578b['fpzDt']);for(let _0x47844a=0x0;_0x27578b[_0x11973a(0x25d)](_0x47844a,_0x3ba0ac['length']);_0x47844a++){const _0x88b953=_0x3ba0ac[_0x47844a];let _0x4b5e93;if(_0x88b953[_0x11973a(0x1ce)]===_0x11973a(0x262)&&_0x27578b[_0x11973a(0x1ba)](_0x88b953['terminalReason'],_0x27578b['VvRXP']))_0x4b5e93='✅';else{if(_0x88b953['status']===_0x27578b[_0x11973a(0x1bc)])_0x4b5e93='🟢';else{if(_0x27578b['oojsP'](_0x88b953['status'],_0x11973a(0x1b2)))_0x4b5e93='🟠';else{if(_0x27578b['oojsP'](_0x88b953['status'],_0x11973a(0x1f5)))_0x4b5e93='🛑';else{if(_0x88b953['status']==='closed')_0x4b5e93='⛔';else _0x88b953['status']===_0x11973a(0x1ff)?_0x4b5e93='⏳':_0x4b5e93='⬜';}}}}const _0x9258d2=_0x88b953[_0x11973a(0x1cd)]>0x1?_0x11973a(0x25e)+_0x88b953['version']+')':'',_0xa54c85=_0x88b953[_0x11973a(0x1cd)]>0x1&&_0x88b953[_0x11973a(0x26e)]&&_0x27578b['BItJm'](_0x88b953[_0x11973a(0x1ce)],_0x27578b['tqOly'])&&_0x88b953[_0x11973a(0x1ce)]!==_0x27578b['MUtOY']?'\x20[has\x20reviewer\x20feedback]':'';console['log'](_0x11973a(0x22b)+(_0x47844a+0x1)+'.\x20'+_0x4b5e93+'\x20'+_0x88b953['description']+_0x9258d2+_0xa54c85);_0x27578b[_0x11973a(0x1ba)](_0x88b953[_0x11973a(0x1ce)],_0x27578b[_0x11973a(0x232)])&&_0x88b953['blockedReason']&&console[_0x11973a(0x1a7)]('\x20\x20\x20\x20\x20\x20Blocked:\x20'+_0x88b953[_0x11973a(0x1cc)]);_0x88b953['status']==='incomplete'&&_0x88b953['incompleteReason']&&console['log']('\x20\x20\x20\x20\x20\x20Incomplete:\x20'+_0x88b953[_0x11973a(0x1de)]);if(_0x27578b[_0x11973a(0x1ba)](_0x88b953[_0x11973a(0x1ce)],_0x27578b[_0x11973a(0x26b)])&&_0x27578b[_0x11973a(0x1ba)](_0x88b953[_0x11973a(0x1f1)],_0x27578b[_0x11973a(0x209)]))console[_0x11973a(0x1a7)](_0x11973a(0x1da));else _0x27578b['oojsP'](_0x88b953[_0x11973a(0x1ce)],_0x27578b[_0x11973a(0x26b)])&&_0x88b953['canceledReason']&&console['log'](_0x11973a(0x224)+_0x88b953['canceledReason']);}}}export async function featureCreate(_0x947b84,_0x590e5b){const _0xacf4fd=_0x1307aa,_0xd14dcd={'qfJqf':function(_0x428089,_0x37dd69){return _0x428089===_0x37dd69;},'ROwyt':function(_0x53cf12){return _0x53cf12();},'gTFPq':_0xacf4fd(0x1a1),'MjoQF':function(_0x4f59d1,_0x591c5d){return _0x4f59d1(_0x591c5d);},'Vmixe':function(_0x5f2f56,_0x13b3cc,_0x3e8cbe){return _0x5f2f56(_0x13b3cc,_0x3e8cbe);}},{envNames:_0x546d92}=await getEnvNames();if(_0x546d92[_0xacf4fd(0x1a4)]===0x0&&!process['env'][_0xacf4fd(0x234)]){let _0x12a134=0x0;try{_0x12a134=(await listCloudProfiles())[_0xacf4fd(0x1a4)];}catch{_0x12a134=0x1;}_0xd14dcd['qfJqf'](_0x12a134,0x0)&&console[_0xacf4fd(0x233)]('\x0a'+formatProfileRequiredMessage(_0x12464c=>bold(_0x12464c)));}const _0x4f436b=_0x590e5b['scenarios']?_0x590e5b['scenarios']['map'](_0x424c80=>_0x424c80['trim']()):[],_0x57f4b7=getGitRepoUrl(),_0x20ca57=_0xd14dcd['ROwyt'](getGitBranch);console[_0xacf4fd(0x1a7)](_0xd14dcd['gTFPq']);const _0x5a0247=await createFeature({'name':_0x947b84,'description':_0x590e5b[_0xacf4fd(0x1c9)],'checklist':_0x4f436b,'gitRepoUrl':_0x57f4b7,'gitBranch':_0x20ca57});await _0xd14dcd[_0xacf4fd(0x253)](setActiveFeatureId,_0x5a0247['id']),await tryStartCurrentSession(_0x5a0247['id']);const _0x4a0a9e=process['env']['CLAUDE_SESSION_ID'];_0x4a0a9e&&registerSession(_0x4a0a9e,_0x5a0247['id']),console[_0xacf4fd(0x1a7)]('\x0a✅\x20Feature\x20review\x20created:\x20'+_0x5a0247['id']),_0xd14dcd['Vmixe'](displayFeature,_0x5a0247,_0x5a0247['checklistItems']),console['log']('\x0a➡️\x20\x20Set\x20as\x20active\x20feature\x20review');}export async function featureList(_0x21de41){const _0xfbf58d=_0x1307aa,_0x389add={'ZOByB':function(_0x189452){return _0x189452();},'xSbys':function(_0x1edb88,_0x1f1efb){return _0x1edb88(_0x1f1efb);},'lXaRB':function(_0x9f4a1e,_0x6d6f35){return _0x9f4a1e===_0x6d6f35;},'JlQmL':_0xfbf58d(0x223),'WxVMZ':function(_0x7148ac,_0x4a018c){return _0x7148ac+_0x4a018c;},'FxEjA':function(_0x3c2fb2,_0xecd2b4){return _0x3c2fb2<_0xecd2b4;},'uLOSK':'\x20--current-branch'},_0x318273={'limit':_0x21de41['limit']??0xa,'offset':_0x21de41['offset']??0x0,'includeDeleted':_0x21de41['includeDeleted']};_0x21de41['currentBranch']&&(_0x318273[_0xfbf58d(0x1e8)]=_0x389add['ZOByB'](getGitRepoUrl),_0x318273[_0xfbf58d(0x24a)]=_0x389add['ZOByB'](getGitBranch));const _0x56fda0=await _0x389add['xSbys'](listFeatures,_0x318273);if(_0x389add['lXaRB'](_0x56fda0['items'][_0xfbf58d(0x1a4)],0x0)){console[_0xfbf58d(0x1a7)](_0x389add[_0xfbf58d(0x1b8)]);return;}const _0x121b02=_0x56fda0['totalCount']>_0x56fda0['items'][_0xfbf58d(0x1a4)]?'Showing\x20'+_0x56fda0['items'][_0xfbf58d(0x1a4)]+'\x20of\x20'+_0x56fda0['totalCount']:_0x56fda0['totalCount']+'\x20feature\x20review(s)\x20found';console[_0xfbf58d(0x1a7)]('\x0a'+_0x121b02+':\x0a');for(const _0x25d6d4 of _0x56fda0['items']){const _0x36c8a0='5|4|3|2|0|1'['split']('|');let _0x177455=0x0;while(!![]){switch(_0x36c8a0[_0x177455++]){case'0':console['log'](_0xfbf58d(0x1ca)+new Date(_0x25d6d4[_0xfbf58d(0x20d)])['toLocaleDateString']());continue;case'1':console['log']('');continue;case'2':_0x25d6d4[_0xfbf58d(0x24a)]&&console[_0xfbf58d(0x1a7)]('\x20\x20\x20Branch:\x20'+_0x25d6d4['gitBranch']);continue;case'3':_0x25d6d4[_0xfbf58d(0x1d8)]&&console['log'](_0xfbf58d(0x23c)+getProgressDisplay(_0x25d6d4[_0xfbf58d(0x1d8)]));continue;case'4':console[_0xfbf58d(0x1a7)](_0xfbf58d(0x1a0)+_0x25d6d4['id']);continue;case'5':console['log'](''+_0x25d6d4[_0xfbf58d(0x1bf)]);continue;}break;}}const _0x25b687=_0x318273[_0xfbf58d(0x210)]??0xa,_0x46a7e8=_0x389add[_0xfbf58d(0x1f6)](_0x318273[_0xfbf58d(0x1c7)]??0x0,_0x56fda0[_0xfbf58d(0x19f)]['length']);if(_0x389add['FxEjA'](_0x46a7e8,_0x56fda0[_0xfbf58d(0x20a)])){const _0x4e9fb7=_0x25b687!==0xa?'\x20--limit\x20'+_0x25b687:'',_0x4d392c=_0x21de41['currentBranch']?_0x389add[_0xfbf58d(0x245)]:'',_0x569238=_0x21de41[_0xfbf58d(0x254)]?'\x20--include-deleted':'';console[_0xfbf58d(0x1a7)]('Next\x20page:\x20ranger\x20list\x20--offset\x20'+_0x46a7e8+_0x4e9fb7+_0x4d392c+_0x569238);}}export async function featureShow(_0xe3a50){const _0x5526f5=_0x1307aa,_0xb62c3d={'mjxGa':function(_0x552365){return _0x552365();},'mKJOs':_0x5526f5(0x1a8),'sUvIg':function(_0x16f5ab,_0x2bd395,_0x20a015){return _0x16f5ab(_0x2bd395,_0x20a015);}},_0x1b168e=_0xe3a50||await _0xb62c3d[_0x5526f5(0x264)](getActiveFeatureId);if(!_0x1b168e)throw new Error(_0xb62c3d['mKJOs']);const _0x7daeb0=await getFeature(_0x1b168e);_0xb62c3d['sUvIg'](displayFeature,_0x7daeb0,_0x7daeb0['checklistItems']);}export async function featureResume(_0x45129b){const _0x5cff50=_0x1307aa,_0x27a5e0={'EgRBs':function(_0x518b9e,_0x18f19b){return _0x518b9e(_0x18f19b);},'IuOyx':function(_0x4b9c8b){return _0x4b9c8b();},'cnTDD':function(_0x12ae8e,_0x2074ac,_0x5e792f){return _0x12ae8e(_0x2074ac,_0x5e792f);},'GTxDf':function(_0x1ac1c8,_0x192edc,_0x1e0c25){return _0x1ac1c8(_0x192edc,_0x1e0c25);},'PQCeJ':function(_0x43d9ea){return _0x43d9ea();},'pYpMf':function(_0x5353d0,_0x2915d3){return _0x5353d0(_0x2915d3);},'Gmvwe':function(_0x207b48,_0x5cf4a6){return _0x207b48===_0x5cf4a6;},'VKAvW':'\x0aNo\x20matching\x20active\x20feature\x20reviews\x20found.','vqYOS':'Run:\x20ranger\x20create\x20\x22<name>\x22\x20to\x20create\x20a\x20new\x20feature\x20review','SHJdr':function(_0x545c2c,_0x3e73a0){return _0x545c2c(_0x3e73a0);},'tQhBY':'list','BzbMz':_0x5cff50(0x263),'fDXWl':function(_0x2e9110,_0x225162){return _0x2e9110!==_0x225162;},'RPMRZ':function(_0x301a5a,_0x65872b){return _0x301a5a(_0x65872b);}};if(_0x45129b){const _0x5938e4=await _0x27a5e0['EgRBs'](getFeature,_0x45129b);await setActiveFeatureId(_0x5938e4['id']);const _0x11e0f7=_0x27a5e0['IuOyx'](getGitBranch);_0x11e0f7&&_0x11e0f7!==_0x5938e4['gitBranch']&&(await _0x27a5e0[_0x5cff50(0x23f)](updateFeature,_0x5938e4['id'],{'gitBranch':_0x11e0f7}),console['log']('\x20\x20\x20Updated\x20branch\x20to:\x20'+_0x11e0f7));console[_0x5cff50(0x1a7)]('\x0a✅\x20Resumed\x20feature\x20review:\x20'+_0x5938e4['name']+'\x20('+_0x5938e4['id']+')'),await tryStartCurrentSession(_0x5938e4['id']);const _0x10619a=process[_0x5cff50(0x243)]['CLAUDE_SESSION_ID'];_0x10619a&&_0x27a5e0[_0x5cff50(0x241)](registerSession,_0x10619a,_0x5938e4['id']);displayFeature(_0x5938e4,_0x5938e4[_0x5cff50(0x1ad)]),await printFeedbackNudge(_0x5938e4['id']);return;}const _0x9deba=_0x27a5e0['PQCeJ'](getGitRepoUrl),_0x37cf70=getGitBranch();if(!_0x9deba&&!_0x37cf70)throw new Error(_0x5cff50(0x203));console[_0x5cff50(0x1a7)](_0x5cff50(0x205)+(_0x9deba||'any')+'\x20/\x20'+(_0x37cf70||_0x5cff50(0x202))+_0x5cff50(0x1b3));const _0x400dc5=await _0x27a5e0['pYpMf'](listFeatures,{'gitRepoUrl':_0x9deba,'gitBranch':_0x37cf70}),_0x9d80f1=_0x400dc5['items'][_0x5cff50(0x23b)](_0xc12478=>_0xc12478[_0x5cff50(0x1ce)]?_0xc12478['status']!==_0x5cff50(0x21f):!_0xc12478[_0x5cff50(0x26f)]);if(_0x27a5e0['Gmvwe'](_0x9d80f1[_0x5cff50(0x1a4)],0x0)){console[_0x5cff50(0x1a7)](_0x27a5e0['VKAvW']),console['log'](_0x27a5e0[_0x5cff50(0x22a)]);return;}let _0x484283;if(_0x27a5e0[_0x5cff50(0x20e)](_0x9d80f1['length'],0x1))_0x484283=_0x9d80f1[0x0];else{const _0x222f56=process[_0x5cff50(0x26a)]['isTTY']&&process[_0x5cff50(0x1e0)][_0x5cff50(0x218)];if(!_0x222f56){console['log']('\x0aNon-interactive\x20mode\x20detected.\x20Multiple\x20feature\x20reviews\x20found:');for(const _0x3afffa of _0x9d80f1){console[_0x5cff50(0x1a7)]('\x20\x20'+_0x3afffa['name']),console[_0x5cff50(0x1a7)]('\x20\x20\x20\x20\x20ID:\x20'+_0x3afffa['id']),_0x3afffa['stats']&&console[_0x5cff50(0x1a7)](_0x5cff50(0x251)+_0x27a5e0['SHJdr'](getProgressDisplay,_0x3afffa['stats'])),_0x3afffa[_0x5cff50(0x24a)]&&console[_0x5cff50(0x1a7)]('\x20\x20\x20\x20\x20Branch:\x20'+_0x3afffa['gitBranch']);}throw new Error(_0x5cff50(0x1e3));}const {selected:_0x53e053}=await _0x2c2b56['prompt']([{'type':_0x27a5e0[_0x5cff50(0x1f0)],'name':_0x27a5e0[_0x5cff50(0x25c)],'message':_0x5cff50(0x1b6),'choices':_0x9d80f1['map'](_0x163057=>({'name':_0x163057[_0x5cff50(0x1bf)]+'\x20('+_0x163057['id']+')','value':_0x163057['id']}))}]);_0x484283=_0x9d80f1[_0x5cff50(0x276)](_0x40f328=>_0x40f328['id']===_0x53e053);}await setActiveFeatureId(_0x484283['id']);_0x37cf70&&_0x27a5e0['fDXWl'](_0x37cf70,_0x484283[_0x5cff50(0x24a)])&&(await updateFeature(_0x484283['id'],{'gitBranch':_0x37cf70}),console['log'](_0x5cff50(0x208)+_0x37cf70));console[_0x5cff50(0x1a7)](_0x5cff50(0x201)+_0x484283['name']+'\x20('+_0x484283['id']+')'),await _0x27a5e0[_0x5cff50(0x1be)](tryStartCurrentSession,_0x484283['id']);const _0x4b3cc1=await getFeature(_0x484283['id']),_0x27c95f=process[_0x5cff50(0x243)]['CLAUDE_SESSION_ID'];_0x27c95f&&registerSession(_0x27c95f,_0x4b3cc1['id']),displayFeature(_0x4b3cc1,_0x4b3cc1[_0x5cff50(0x1ad)]),await printFeedbackNudge(_0x4b3cc1['id']);}async function printFeedbackNudge(_0x221a8c){const _0x425de2=_0x1307aa,_0x4400b9={'DmjZw':function(_0xf5d420,_0x59d594){return _0xf5d420(_0x59d594);},'pumAU':function(_0x2e1bd7,_0x2878c1,_0x115347){return _0x2e1bd7(_0x2878c1,_0x115347);},'CUNkc':function(_0x5d8f91,_0x46a5ed){return _0x5d8f91>_0x46a5ed;},'bUCUn':function(_0x291f13,_0x1fd208){return _0x291f13>_0x1fd208;}};try{const {items:_0x43b49f}=await _0x4400b9[_0x425de2(0x214)](getActionItems,_0x221a8c);let _0x563cb9=0x0,_0x201b78=0x0;for(const _0x4e7982 of _0x43b49f){const _0x28d8c6=await _0x4400b9['pumAU'](getItemFeedback,_0x221a8c,_0x4e7982['id']);_0x4400b9[_0x425de2(0x1b1)](_0x28d8c6[_0x425de2(0x206)][_0x425de2(0x1a4)],0x0)&&(_0x563cb9+=_0x28d8c6['unaddressedComments']['length'],_0x201b78++);}_0x4400b9['bUCUn'](_0x563cb9,0x0)&&(console['log'](_0x425de2(0x259)+_0x563cb9+_0x425de2(0x23a)+_0x201b78+_0x425de2(0x1ec)),console[_0x425de2(0x1a7)](_0x425de2(0x268)));}catch{}}async function tryStartCurrentSession(_0x15aa3f){const _0x4529bf=_0x1307aa;try{const {sessions:_0x7fcceb}=await listFeatureSessions(_0x15aa3f),_0x1649ae=_0x7fcceb['find'](_0x2dbe13=>_0x2dbe13[_0x4529bf(0x1ce)]===_0x4529bf(0x22c));_0x1649ae&&(await startSession(_0x15aa3f,_0x1649ae['id']),console[_0x4529bf(0x1a7)](_0x4529bf(0x235)+_0x1649ae[_0x4529bf(0x24d)]));}catch{}}export async function featureReport(_0xfe1cb6,_0xf458e8){const _0x1d98b0=_0x1307aa,_0x3d608a={'HSPNQ':function(_0x137251){return _0x137251();},'bVnxw':_0x1d98b0(0x21b),'QGeLZ':_0x1d98b0(0x250),'QseRJ':function(_0x1bc63c,_0x5c87d9,_0x2d9c22,_0x599150){return _0x1bc63c(_0x5c87d9,_0x2d9c22,_0x599150);},'VDFfH':function(_0x53f65e,_0x407482){return _0x53f65e(_0x407482);},'IXUnq':_0x1d98b0(0x27a)},_0x37ff09=_0xfe1cb6||await _0x3d608a[_0x1d98b0(0x1bd)](getActiveFeatureId);if(!_0x37ff09)throw new Error(_0x3d608a['bVnxw']);console[_0x1d98b0(0x1a7)](_0x3d608a[_0x1d98b0(0x1ee)]);const _0x52ebc6=await getFeatureReportMarkdown(_0x37ff09,{'style':_0xf458e8[_0x1d98b0(0x1e1)]}),_0x32f3ec=_0xf458e8['output']||_0x3d608a[_0x1d98b0(0x23e)](join,_0x3d608a['HSPNQ'](getRangerDir),'reports',_0x37ff09+_0x1d98b0(0x222)),_0x18d950=join(_0x32f3ec,'..');!_0x3d608a[_0x1d98b0(0x1d1)](existsSync,_0x18d950)&&await mkdir(_0x18d950,{'recursive':!![]}),await _0x3d608a[_0x1d98b0(0x23e)](writeFile,_0x32f3ec,_0x52ebc6,_0x3d608a[_0x1d98b0(0x1a9)]),console['log'](_0x1d98b0(0x244)+_0x32f3ec);}function getScenarioResult(_0xea883f){const _0x1d355e=_0x1307aa,_0x10bfea={'evkSX':function(_0x4868f1,_0x2c63c8){return _0x4868f1===_0x2c63c8;},'dfKyh':_0x1d355e(0x262)};if(_0x10bfea['evkSX'](_0xea883f[_0x1d355e(0x1ce)],_0x1d355e(0x262)))return _0xea883f['terminalReason']??_0x10bfea[_0x1d355e(0x1a5)];if(_0xea883f['status']===_0x1d355e(0x1ff))return'in_progress';return _0xea883f[_0x1d355e(0x1ce)];}function getScenarioRationale(_0x3449bf,_0x35004a){const _0x2964f2=_0x1307aa,_0xd25710={'prixI':_0x2964f2(0x25b)},_0x138fcf=_0xd25710['prixI']['split']('|');let _0x2762d4=0x0;while(!![]){switch(_0x138fcf[_0x2762d4++]){case'0':if(_0x3449bf['notes'])return _0x3449bf['notes'];continue;case'1':if(_0x3449bf['canceledReason'])return _0x3449bf[_0x2964f2(0x1d0)];continue;case'2':if(_0x3449bf[_0x2964f2(0x1de)])return _0x3449bf[_0x2964f2(0x1de)];continue;case'3':if(_0x3449bf[_0x2964f2(0x1cc)])return _0x3449bf['blockedReason'];continue;case'4':return null;case'5':if(_0x35004a)return _0x35004a;continue;}break;}}export async function featureReportPrDescription(_0x54fdb0,_0x21adc7){const _0x1d939=_0x1307aa,_0x309c88={'yLLod':'No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.','mDCzI':'\x0a❌\x20No\x20scenarios\x20found\x20to\x20include.','vvGMY':function(_0x5b4d6b,_0x4ef074){return _0x5b4d6b>_0x4ef074;},'UvJaR':_0x1d939(0x19a),'QgidZ':function(_0x3b08dc,_0x1cecdc){return _0x3b08dc<_0x1cecdc;},'cbqmi':function(_0x4a8422,_0x12519e,_0x32e9f2,_0x7f78c3){return _0x4a8422(_0x12519e,_0x32e9f2,_0x7f78c3);}},_0x424bce=_0x54fdb0||await getActiveFeatureId();if(!_0x424bce)throw new Error(_0x309c88[_0x1d939(0x1ac)]);const _0x52eae7=await getFeature(_0x424bce),_0x2c9153=_0x52eae7['checklistItems']||[],_0x5faa06=getCurrentSessionItems(_0x52eae7,_0x2c9153);_0x5faa06[_0x1d939(0x1a4)]===0x0&&(console['error'](_0x309c88[_0x1d939(0x1b7)]),process['exit'](0x1));const _0x265b21=_0x21adc7[_0x1d939(0x271)]??[],_0x28d462=_0x265b21[_0x1d939(0x23b)](_0x484e99=>!Number['isInteger'](_0x484e99)||_0x484e99<0x1||_0x484e99>_0x5faa06['length']);if(_0x309c88['vvGMY'](_0x28d462['length'],0x0)){console['error'](_0x1d939(0x26c)+_0x28d462[_0x1d939(0x249)](',\x20')),console['log'](_0x309c88[_0x1d939(0x221)]);for(let _0x2cb1d4=0x0;_0x309c88[_0x1d939(0x229)](_0x2cb1d4,_0x5faa06[_0x1d939(0x1a4)]);_0x2cb1d4++){console['log']('\x20\x20'+(_0x2cb1d4+0x1)+'.\x20'+_0x5faa06[_0x2cb1d4]['description']);}process['exit'](0x1);}const _0x1164fa=new Set(_0x265b21['map'](_0x2fd2e5=>_0x2fd2e5-0x1)),_0x47cda2=_0x5faa06[_0x1d939(0x23b)]((_0x2f9039,_0x1e493a)=>!_0x1164fa[_0x1d939(0x1e2)](_0x1e493a));_0x47cda2[_0x1d939(0x1a4)]===0x0&&(console['error'](_0x1d939(0x22e)),process[_0x1d939(0x256)](0x1));if(_0x21adc7['json'])await _0x309c88[_0x1d939(0x1c6)](outputJsonReport,_0x424bce,_0x52eae7,_0x47cda2);else{const _0x475fe8=await getFeatureReportMarkdown(_0x424bce,{'itemIds':_0x47cda2[_0x1d939(0x1b4)](_0x15635a=>_0x15635a['id'])});process[_0x1d939(0x1e0)][_0x1d939(0x237)](_0x475fe8['trimEnd']()+'\x0a');}}async function outputJsonReport(_0xd75fa5,_0x6571e5,_0x4b3506){const _0x285133=_0x1307aa,_0x556741={'LRKNQ':function(_0x5c14b5,_0x13a60c){return _0x5c14b5(_0x13a60c);}},_0x45ded3=getApiBaseUrl(),_0x409f1f=await getFeatureReport(_0xd75fa5),_0x5b2944=new Map(_0x409f1f['checklistItems'][_0x285133(0x1b4)](_0x4224e3=>[_0x4224e3['id'],_0x4224e3])),_0x40fe94=await Promise[_0x285133(0x219)](_0x4b3506['map'](async _0x34ca20=>{const _0x225672=_0x285133,_0xaf0864=_0x5b2944['get'](_0x34ca20['id']),_0x1f89bd=_0xaf0864?.['linkedSession']??null;let _0x422e0f=[];if(_0x34ca20['browserSessionId'])try{const {steps:_0x5c39ff}=await _0x556741['LRKNQ'](getBrowserSessionSteps,_0x34ca20['browserSessionId']);_0x5c39ff['length']>0x0&&(_0x422e0f=_0x5c39ff[_0x225672(0x1b4)](_0x1468a6=>{const _0x345380=_0x225672,_0x32d380=_0x1468a6[_0x345380(0x1f7)][_0x345380(0x276)](_0x92d5fb=>_0x92d5fb['assetType']==='screenshot'&&_0x92d5fb['timing']===_0x345380(0x217))??_0x1468a6['assets'][_0x345380(0x276)](_0x4377b4=>_0x4377b4['assetType']===_0x345380(0x1fb));let _0x49b91b=null,_0x1833bc=null;if(_0x32d380){const _0x452190=_0x32d380['storage'][_0x345380(0x212)][_0x345380(0x207)]('/')['pop']();_0x49b91b=_0x45ded3+_0x345380(0x19c)+_0x34ca20[_0x345380(0x1a3)]+_0x345380(0x228)+_0x452190,_0x452190&&(_0x1833bc=_0x452190[_0x345380(0x1d6)](/\.\w+$/,'')['replace'](/^(key_)?\d+_/,'')[_0x345380(0x1d6)](/[-_]/g,'\x20'));}return{'description':_0x1833bc||_0x1468a6['description']||_0x1468a6[_0x345380(0x258)]||'Step\x20'+_0x1468a6['position'],'screenshot':_0x49b91b,'is_key_step':_0x1468a6['isKeyStep']};}));}catch{}return _0x422e0f[_0x225672(0x1a4)]===0x0&&_0x1f89bd?.['screenshotUrls']&&(_0x422e0f=_0x1f89bd[_0x225672(0x246)]['map']((_0x6f6b38,_0x1980bd)=>({'description':'Screenshot\x20'+(_0x1980bd+0x1),'screenshot':_0x6f6b38,'is_key_step':![]}))),{'description':_0x34ca20['description'],'result':getScenarioResult(_0x34ca20),'rationale':getScenarioRationale(_0x34ca20,_0x1f89bd?.[_0x225672(0x225)]),'steps':_0x422e0f};})),_0x3b33c5={'url':_0x6571e5['dashboardUrl'],'scenarios':_0x40fe94};process[_0x285133(0x1e0)]['write'](JSON[_0x285133(0x269)](_0x3b33c5,null,0x2)+'\x0a');}export async function featureConcludeSession(_0x579e5a){const _0x401412=_0x1307aa,_0x51d155={'NhlrW':function(_0x1a4336,_0x56b03f){return _0x1a4336(_0x56b03f);},'EsdRG':'Current\x20session\x20not\x20found.','RqnmC':function(_0x476b68,_0xeb16ce){return _0x476b68===_0xeb16ce;},'XGbSr':_0x401412(0x1d7),'wMVcV':'\x0a✅\x20Session\x20is\x20already\x20completed.','CYOXO':function(_0x3bfe4b,_0x5027c8){return _0x3bfe4b!==_0x5027c8;},'ZrvAV':'in_progress','BDNwL':'\x0aConcluding\x20session...','LwQqp':function(_0x1398a9,_0x498883,_0x362cfe){return _0x1398a9(_0x498883,_0x362cfe);}},_0x4ff520=_0x579e5a||await getActiveFeatureId();if(!_0x4ff520)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 _0x234878=await getFeature(_0x4ff520);if(!_0x234878[_0x401412(0x1df)])throw new Error(_0x401412(0x266));const {sessions:_0x1e7c28}=await _0x51d155[_0x401412(0x21d)](listFeatureSessions,_0x4ff520),_0x569c6a=_0x1e7c28[_0x401412(0x276)](_0x2b3d2b=>_0x2b3d2b['id']===_0x234878[_0x401412(0x1df)]);if(!_0x569c6a)throw new Error(_0x51d155['EsdRG']);if(_0x51d155['RqnmC'](_0x569c6a['status'],_0x51d155['XGbSr'])){console['log'](_0x51d155[_0x401412(0x267)]);return;}if(_0x51d155[_0x401412(0x1b0)](_0x569c6a['status'],_0x51d155[_0x401412(0x213)]))throw new Error('Cannot\x20conclude\x20session\x20with\x20status:\x20'+_0x569c6a[_0x401412(0x1ce)]);console['log'](_0x51d155['BDNwL']),await _0x51d155['LwQqp'](concludeSession,_0x4ff520,_0x234878['currentSessionId']),console['log'](_0x401412(0x1f9)+_0x569c6a[_0x401412(0x24d)]+_0x401412(0x22f)),console[_0x401412(0x1a7)](_0x401412(0x1e6));}export async function featureSessions(_0x41b250){const _0xf5cacf=_0x1307aa,_0xb26cfe={'rXBHY':function(_0x576403){return _0x576403();},'ksZjI':_0xf5cacf(0x21b),'PVadE':function(_0x5b01e2,_0x3b3671){return _0x5b01e2(_0x3b3671);},'XBUKK':'No\x20sessions\x20found.','dFuzY':'completed','eeroS':'in_progress'},_0xe415d1=_0x41b250||await _0xb26cfe[_0xf5cacf(0x227)](getActiveFeatureId);if(!_0xe415d1)throw new Error(_0xb26cfe[_0xf5cacf(0x242)]);const _0x1a8286=await getFeature(_0xe415d1);console[_0xf5cacf(0x1a7)](_0xf5cacf(0x23d)+_0x1a8286[_0xf5cacf(0x1bf)]+'\x0a');const {sessions:_0x4312df}=await _0xb26cfe['PVadE'](listFeatureSessions,_0xe415d1);if(_0x4312df['length']===0x0){console[_0xf5cacf(0x1a7)](_0xb26cfe[_0xf5cacf(0x277)]);return;}for(const _0x434e59 of _0x4312df){const _0x151a3e=_0x434e59['status']===_0xb26cfe[_0xf5cacf(0x230)]?'✅':_0x434e59['status']===_0xb26cfe['eeroS']?'🔄':'▶️';console[_0xf5cacf(0x1a7)](_0x151a3e+_0xf5cacf(0x255)+_0x434e59[_0xf5cacf(0x24d)]+'\x20('+_0x434e59['id']+')'),console[_0xf5cacf(0x1a7)]('\x20\x20\x20Status:\x20'+_0x434e59['status']),console[_0xf5cacf(0x1a7)]('\x20\x20\x20Created:\x20'+new Date(_0x434e59['createdAt'])['toLocaleString']()),_0x434e59[_0xf5cacf(0x26f)]&&console['log'](_0xf5cacf(0x21e)+new Date(_0x434e59['completedAt'])['toLocaleString']()),console[_0xf5cacf(0x1a7)]('');}}export async function featureAddScenario(_0x54cc90,_0x38b552){const _0x4632f7=_0x1307aa,_0x516768={'MIwdM':_0x4632f7(0x1a8),'PIglV':function(_0x319a48,_0x39452a){return _0x319a48(_0x39452a);},'AuFbq':function(_0x4fcaae,_0xcdacd5,_0xd4cb42){return _0x4fcaae(_0xcdacd5,_0xd4cb42);}},_0x1f9652=_0x38b552||await getActiveFeatureId();if(!_0x1f9652)throw new Error(_0x516768[_0x4632f7(0x1c8)]);const _0x45aa5b=await _0x516768['PIglV'](getFeature,_0x1f9652);if(_0x45aa5b[_0x4632f7(0x1ae)]&&!_0x45aa5b[_0x4632f7(0x1ae)]['submittedAt'])throw new Error(_0x4632f7(0x1d5)+_0x45aa5b[_0x4632f7(0x1c2)]);await _0x516768[_0x4632f7(0x1c5)](createChecklistItem,_0x1f9652,_0x54cc90);const _0x210477=await _0x516768['PIglV'](getFeature,_0x1f9652);console[_0x4632f7(0x1a7)]('\x0a✅\x20Scenario\x20added'),displayFeature(_0x210477,_0x210477[_0x4632f7(0x1ad)]);}export async function featureEditScenario(_0x144b45,_0x260a39){const _0x2e0da5=_0x1307aa,_0x42c8a5={'KdzhY':function(_0x2e8e86){return _0x2e8e86();},'tbhhl':_0x2e0da5(0x1a2),'tZoBL':function(_0x2ec56d,_0x184b8a){return _0x2ec56d(_0x184b8a);},'arARz':_0x2e0da5(0x20b),'OiyOt':function(_0x48a083,_0x6a134a){return _0x48a083===_0x6a134a;},'PEtzy':_0x2e0da5(0x19a),'FOBPF':function(_0x58eba9,_0x4a476e){return _0x58eba9<_0x4a476e;},'MFTlL':function(_0x393734,_0x448bbb){return _0x393734-_0x448bbb;},'fpImh':function(_0x258c8c,_0x4be317){return _0x258c8c<_0x4be317;},'FYLqW':function(_0x342494,_0x239f7f){return _0x342494<_0x239f7f;}},_0x497502=_0x260a39['id']||await _0x42c8a5['KdzhY'](getActiveFeatureId);!_0x497502&&(console[_0x2e0da5(0x20f)]('\x0a❌\x20No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.'),console['error'](_0x42c8a5[_0x2e0da5(0x236)]),process[_0x2e0da5(0x256)](0x1));const _0x3454a3=await _0x42c8a5[_0x2e0da5(0x275)](getFeature,_0x497502);_0x3454a3[_0x2e0da5(0x1ae)]&&!_0x3454a3[_0x2e0da5(0x1ae)]['submittedAt']&&(console[_0x2e0da5(0x20f)](_0x2e0da5(0x261)),console['error'](_0x2e0da5(0x272)),console['error']('\x20\x20'+_0x3454a3['dashboardUrl']),process['exit'](0x1));const _0x5797ea=_0x3454a3['checklistItems']||[];_0x5797ea['length']===0x0&&(console['error'](_0x42c8a5[_0x2e0da5(0x231)]),process[_0x2e0da5(0x256)](0x1));if(_0x42c8a5[_0x2e0da5(0x1f4)](_0x260a39['scenario'],undefined)){console['error']('\x0a❌\x20No\x20scenario\x20number\x20provided.\x20Use\x20--scenario\x20<number>.'),console['log'](_0x42c8a5['PEtzy']);for(let _0x362485=0x0;_0x42c8a5['FOBPF'](_0x362485,_0x5797ea['length']);_0x362485++){console[_0x2e0da5(0x1a7)]('\x20\x20'+(_0x362485+0x1)+'.\x20'+_0x5797ea[_0x362485][_0x2e0da5(0x1c9)]);}process[_0x2e0da5(0x256)](0x1);}const _0x62ecf3=_0x42c8a5[_0x2e0da5(0x1fc)](_0x260a39[_0x2e0da5(0x1e9)],0x1);if(_0x42c8a5[_0x2e0da5(0x1d9)](_0x62ecf3,0x0)||_0x62ecf3>=_0x5797ea[_0x2e0da5(0x1a4)]){console['error'](_0x2e0da5(0x1ef)+_0x260a39[_0x2e0da5(0x1e9)]+'.\x20Feature\x20review\x20has\x20'+_0x5797ea['length']+'\x20scenarios.'),console['log'](_0x2e0da5(0x19a));for(let _0x8b17d9=0x0;_0x42c8a5['FYLqW'](_0x8b17d9,_0x5797ea['length']);_0x8b17d9++){console[_0x2e0da5(0x1a7)]('\x20\x20'+(_0x8b17d9+0x1)+'.\x20'+_0x5797ea[_0x8b17d9]['description']);}process['exit'](0x1);}const _0x463b6a=_0x5797ea[_0x62ecf3];await updateChecklistItem(_0x497502,_0x463b6a['id'],{'description':_0x144b45});const _0x42798c=await _0x42c8a5[_0x2e0da5(0x275)](getFeature,_0x497502);console['log'](_0x2e0da5(0x215)),displayFeature(_0x42798c,_0x42798c['checklistItems']);}async function downloadFeedbackImage(_0x591bb2,_0x422d4b){const _0x267c70=_0x1307aa,_0x26ff9d={'TRLAE':function(_0x2be416,_0x2e2f2a,_0x4d8187){return _0x2be416(_0x2e2f2a,_0x4d8187);},'tKKfM':function(_0x1498f4,_0x12d128,_0x5efbc1){return _0x1498f4(_0x12d128,_0x5efbc1);},'YkhOe':function(_0x4c8ba4,_0x7051c){return _0x4c8ba4(_0x7051c);}};try{const _0x2e0603=join(getRangerDir(),_0x267c70(0x252));await _0x26ff9d['TRLAE'](mkdir,_0x2e0603,{'recursive':!![]});const _0x32a10b=_0x26ff9d[_0x267c70(0x247)](join,_0x2e0603,_0x267c70(0x240)+_0x422d4b+'.png'),_0x1f87fd=await _0x26ff9d[_0x267c70(0x1db)](fetch,_0x591bb2);if(!_0x1f87fd['ok'])return null;const _0x290b39=Buffer[_0x267c70(0x279)](await _0x1f87fd['arrayBuffer']());return await writeFile(_0x32a10b,_0x290b39),_0x32a10b;}catch{return null;}}export async function featureGetReview(_0x12696b){const _0x65ecd5=_0x1307aa,_0x4d8cb1={'eWbVl':function(_0x7099df){return _0x7099df();},'MVxgi':_0x65ecd5(0x1a8),'gJuyl':function(_0x5dcb9f,_0x5a61a0){return _0x5dcb9f(_0x5a61a0);},'WptYv':_0x65ecd5(0x21c),'gqqfS':function(_0x43fce9,_0xdd4f68,_0x262403){return _0x43fce9(_0xdd4f68,_0x262403);},'xYRSp':function(_0x4991f2,_0x2723ce){return _0x4991f2+_0x2723ce;},'XquJv':'short','yosfs':'\x20>\x20','YYOqP':function(_0x678120,_0x54d674){return _0x678120===_0x54d674;},'nRegP':function(_0x22a021,_0xc5fc21){return _0x22a021>=_0xc5fc21;}},_0x38e1b8=_0x12696b||await _0x4d8cb1['eWbVl'](getActiveFeatureId);if(!_0x38e1b8)throw new Error(_0x4d8cb1[_0x65ecd5(0x265)]);const _0x297a0a=await _0x4d8cb1['gJuyl'](getFeature,_0x38e1b8),{items:_0x483151}=await _0x4d8cb1['gJuyl'](getActionItems,_0x38e1b8);console[_0x65ecd5(0x1a7)](_0x65ecd5(0x19e)+_0x297a0a['name']+'\x20('+_0x297a0a['id']+')\x0a');if(_0x483151[_0x65ecd5(0x1a4)]===0x0){console[_0x65ecd5(0x1a7)](_0x4d8cb1[_0x65ecd5(0x21a)]);return;}for(let _0x452c2b=0x0;_0x452c2b<_0x483151[_0x65ecd5(0x1a4)];_0x452c2b++){const _0x5e927c=_0x483151[_0x452c2b],_0x20561d=_0x5e927c['version']>0x1?'\x20(v'+_0x5e927c[_0x65ecd5(0x1cd)]+')':'',_0x54ce8f=await _0x4d8cb1[_0x65ecd5(0x226)](getItemFeedback,_0x38e1b8,_0x5e927c['id']);if(_0x54ce8f['unaddressedComments'][_0x65ecd5(0x1a4)]>0x0){console['log']('Scenario\x20'+_0x4d8cb1[_0x65ecd5(0x216)](_0x452c2b,0x1)+_0x65ecd5(0x1f2)+_0x5e927c['description']+'\x22'+_0x20561d+'\x20—\x20'+_0x54ce8f[_0x65ecd5(0x206)][_0x65ecd5(0x1a4)]+_0x65ecd5(0x204));for(const _0x22aa81 of _0x54ce8f['unaddressedComments']){const _0x404a20=new Date(_0x22aa81[_0x65ecd5(0x20d)])['toLocaleDateString']('en-US',{'month':_0x4d8cb1['XquJv'],'day':'numeric'}),_0x54848b=_0x22aa81['authorName']||_0x22aa81['authorEmail']||_0x65ecd5(0x1e5);console[_0x65ecd5(0x1a7)]('\x20\x20💬\x20'+_0x54848b+'\x20('+_0x404a20+'):\x20\x22'+_0x22aa81[_0x65ecd5(0x24f)]+'\x22');if(_0x22aa81['assetUrl']){const _0x27af27=await downloadFeedbackImage(_0x22aa81['assetUrl'],_0x22aa81['id']);_0x27af27&&console[_0x65ecd5(0x1a7)]('\x20\x20\x20\x20\x20📷\x20Screenshot:\x20'+_0x27af27);}if(_0x22aa81[_0x65ecd5(0x1fd)]){const _0x2867c9=_0x22aa81[_0x65ecd5(0x1fd)]['selector']['split'](_0x4d8cb1['yosfs'])['pop']()?.[_0x65ecd5(0x207)](':')[0x0]||'element',_0x2b6661=_0x22aa81[_0x65ecd5(0x1fd)][_0x65ecd5(0x1c0)]?'\x20\x22'+_0x22aa81['domRef']['textContent']['slice'](0x0,0x3c)+'\x22':'';console['log'](_0x65ecd5(0x270)+_0x2867c9+'>'+_0x2b6661),console[_0x65ecd5(0x1a7)](_0x65ecd5(0x1aa)+_0x22aa81[_0x65ecd5(0x1fd)][_0x65ecd5(0x211)]);}else{if(_0x22aa81['spatial']){const _0x30f790=_0x22aa81[_0x65ecd5(0x278)]['coordinates'];_0x4d8cb1[_0x65ecd5(0x24e)](_0x22aa81['spatial']['type'],'point')&&_0x4d8cb1[_0x65ecd5(0x1fe)](_0x30f790['length'],0x2)?console['log']('\x20\x20\x20\x20\x20📍\x20Annotation:\x20point\x20at\x20('+_0x30f790[0x0]['toFixed'](0x2)+',\x20'+_0x30f790[0x1]['toFixed'](0x2)+')'):console[_0x65ecd5(0x1a7)](_0x65ecd5(0x238)+_0x22aa81['spatial'][_0x65ecd5(0x1dc)]+_0x65ecd5(0x1ab)+_0x30f790['map'](_0x1c7b45=>_0x1c7b45[_0x65ecd5(0x1af)](0x2))[_0x65ecd5(0x249)](',\x20')+']');}}}if(_0x54ce8f['canonicalFlow']){console[_0x65ecd5(0x1a7)]('\x20\x20Expected\x20flow:');for(const _0x509fa6 of _0x54ce8f['canonicalFlow']['split']('\x0a')){console[_0x65ecd5(0x1a7)]('\x20\x20\x20\x20'+_0x509fa6);}}}else console['log']('Scenario\x20'+(_0x452c2b+0x1)+_0x65ecd5(0x1f2)+_0x5e927c['description']+'\x22'+_0x20561d+'\x20—\x20no\x20comments'),console[_0x65ecd5(0x1a7)]('\x20\x20✅\x20No\x20feedback\x20to\x20address');console['log']('');}}export async function featureDelete(_0x45ebbf){const _0x2340a5=_0x1307aa,_0x270d75={'FxbZd':function(_0x5fa0b9,_0x6d9dd0){return _0x5fa0b9(_0x6d9dd0);},'puBkR':function(_0x56b420,_0x5b9b35){return _0x56b420(_0x5b9b35);},'SIJmY':function(_0x1b0898,_0x3f90b3){return _0x1b0898+_0x3f90b3;}},_0x24cae4=_0x45ebbf||await getActiveFeatureId();if(!_0x24cae4)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 _0x2eb0b9=await _0x270d75['FxbZd'](getFeature,_0x24cae4);await _0x270d75[_0x2340a5(0x1e4)](softDeleteFeature,_0x24cae4),console['log'](_0x2340a5(0x19b)+_0x2eb0b9[_0x2340a5(0x1bf)]+'\x20('+_0x24cae4+')'),console[_0x2340a5(0x1a7)](_0x270d75[_0x2340a5(0x200)](_0x2340a5(0x1bb),_0x24cae4));}export async function featureRestore(_0x75b73){const _0x4655c2=_0x1307aa,_0x23dab8={'ftoeT':function(_0x2d2761,_0x94b23d){return _0x2d2761(_0x94b23d);}};await _0x23dab8['ftoeT'](restoreFeature,_0x75b73);const _0x1bf5bf=await getFeature(_0x75b73);console[_0x4655c2(0x1a7)]('\x0a✅\x20Restored\x20feature\x20review:\x20'+_0x1bf5bf[_0x4655c2(0x1bf)]+'\x20('+_0x75b73+')'),displayFeature(_0x1bf5bf,_0x1bf5bf['checklistItems']);}
@@ -1 +1 @@
1
- (function(_0x4ca32a,_0x414b98){const _0xbff65a=_0x2553,_0x4c0a62=_0x4ca32a();while(!![]){try{const _0x458dd2=-parseInt(_0xbff65a(0x16a))/0x1*(-parseInt(_0xbff65a(0x16f))/0x2)+-parseInt(_0xbff65a(0x171))/0x3*(-parseInt(_0xbff65a(0x179))/0x4)+parseInt(_0xbff65a(0x170))/0x5*(parseInt(_0xbff65a(0x172))/0x6)+-parseInt(_0xbff65a(0x173))/0x7*(-parseInt(_0xbff65a(0x165))/0x8)+parseInt(_0xbff65a(0x175))/0x9*(-parseInt(_0xbff65a(0x16e))/0xa)+parseInt(_0xbff65a(0x16c))/0xb*(parseInt(_0xbff65a(0x167))/0xc)+parseInt(_0xbff65a(0x164))/0xd*(-parseInt(_0xbff65a(0x16b))/0xe);if(_0x458dd2===_0x414b98)break;else _0x4c0a62['push'](_0x4c0a62['shift']());}catch(_0x5cd1ad){_0x4c0a62['push'](_0x4c0a62['shift']());}}}(_0x4bd8,0x77d16));import{sessionStart,sessionEnd,preCompact,postEdit,planStart,planReminder,exitPlanMode,stopHook,enable,disable,autoPrompt}from'./hooks/index.js';function _0x2553(_0x1edac7,_0x229b49){_0x1edac7=_0x1edac7-0x164;const _0x4bd8c4=_0x4bd8();let _0x2553ba=_0x4bd8c4[_0x1edac7];return _0x2553ba;}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 _0x3977d8=_0x2553,_0x4db867={'EpkWJ':_0x3977d8(0x177),'DhOeL':_0x3977d8(0x16d)};if(cancellationHandlersInstalled)return;const _0x293207=()=>{const _0x5ef343=_0x3977d8;process[_0x5ef343(0x176)](0x0);};process[_0x3977d8(0x168)](_0x4db867[_0x3977d8(0x178)],_0x293207),process['once']('SIGTERM',_0x293207),process[_0x3977d8(0x168)](_0x4db867['DhOeL'],_0x293207),cancellationHandlersInstalled=!![];}function _0x4bd8(){const _0x59fe7c=['26EyYjBM','316040eQptaU','keys','1200516avfgQw','once','Unknown\x20hook:\x20','310647Lyfxme','16843162aIlCPc','55kNUGgF','SIGHUP','3934010OPoRFT','6glwxNI','30nXPhZh','1130271Wudsgh','612318BoXzBd','154lbfiMP','error','9OkQUsZ','exit','SIGINT','EpkWJ','4dLrtke'];_0x4bd8=function(){return _0x59fe7c;};return _0x4bd8();}export async function hook(_0x4c0d15,_0x53ae0b){const _0x39bbc5=_0x2553,_0x32deed={'xttiP':function(_0xb6444a){return _0xb6444a();},'OZWIJ':function(_0x51ee82,_0x5ba03a){return _0x51ee82(_0x5ba03a);}};_0x32deed['xttiP'](installCancellationHandlers);const _0x3bb305=HOOKS[_0x4c0d15];if(!_0x3bb305){const _0xc67b7e=Object[_0x39bbc5(0x166)](HOOKS)['join'](',\x20');console[_0x39bbc5(0x174)](_0x39bbc5(0x169)+_0x4c0d15),console[_0x39bbc5(0x174)]('Valid\x20hooks:\x20'+_0xc67b7e),process[_0x39bbc5(0x176)](0x1);}await _0x32deed['OZWIJ'](_0x3bb305,_0x53ae0b);}
1
+ function _0x2348(_0x1fb616,_0x8d829e){_0x1fb616=_0x1fb616-0xc6;const _0x5358f8=_0x5358();let _0x234813=_0x5358f8[_0x1fb616];return _0x234813;}(function(_0x5f4339,_0x32d82b){const _0x27b4f0=_0x2348,_0x422101=_0x5f4339();while(!![]){try{const _0x226b21=parseInt(_0x27b4f0(0xce))/0x1*(parseInt(_0x27b4f0(0xcc))/0x2)+parseInt(_0x27b4f0(0xd5))/0x3*(parseInt(_0x27b4f0(0xc9))/0x4)+-parseInt(_0x27b4f0(0xd2))/0x5*(parseInt(_0x27b4f0(0xc8))/0x6)+parseInt(_0x27b4f0(0xd3))/0x7*(parseInt(_0x27b4f0(0xc6))/0x8)+parseInt(_0x27b4f0(0xd7))/0x9+-parseInt(_0x27b4f0(0xcf))/0xa+-parseInt(_0x27b4f0(0xca))/0xb;if(_0x226b21===_0x32d82b)break;else _0x422101['push'](_0x422101['shift']());}catch(_0x4417e7){_0x422101['push'](_0x422101['shift']());}}}(_0x5358,0xa643d));import{sessionStart,sessionEnd,preCompact,postEdit,planStart,planReminder,exitPlanMode,stopHook,enable,disable,autoPrompt}from'./hooks/index.js';function _0x5358(){const _0x52c19d=['493JPvFFt','1004830pUbzhT','SIGINT','exit','2207765QTyFwo','133539YrjYGH','Unknown\x20hook:\x20','797073jPVWYW','SIGHUP','8535168vdAceS','SIGTERM','152MCtmMg','error','12CVSTDk','16czaNRX','22212993vCqdwj','once','5316qdprgf','FIYaA'];_0x5358=function(){return _0x52c19d;};return _0x5358();}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 _0x515651=_0x2348,_0x346c43={'FIYaA':_0x515651(0xd0)};if(cancellationHandlersInstalled)return;const _0x4b3961=()=>{const _0x3c8280=_0x515651;process[_0x3c8280(0xd1)](0x0);};process[_0x515651(0xcb)](_0x346c43[_0x515651(0xcd)],_0x4b3961),process[_0x515651(0xcb)](_0x515651(0xd8),_0x4b3961),process[_0x515651(0xcb)](_0x515651(0xd6),_0x4b3961),cancellationHandlersInstalled=!![];}export async function hook(_0xe60b4f,_0x22583c){const _0xb320a0=_0x2348;installCancellationHandlers();const _0x383ba3=HOOKS[_0xe60b4f];if(!_0x383ba3){const _0x51ed02=Object['keys'](HOOKS)['join'](',\x20');console[_0xb320a0(0xc7)](_0xb320a0(0xd4)+_0xe60b4f),console[_0xb320a0(0xc7)]('Valid\x20hooks:\x20'+_0x51ed02),process['exit'](0x1);}await _0x383ba3(_0x22583c);}
@@ -1 +1 @@
1
- (function(_0x43ce19,_0x57e56d){const _0x2e3f18=_0x16d7,_0x1125fa=_0x43ce19();while(!![]){try{const _0x4625b5=-parseInt(_0x2e3f18(0x157))/0x1*(-parseInt(_0x2e3f18(0x156))/0x2)+parseInt(_0x2e3f18(0x158))/0x3+parseInt(_0x2e3f18(0x154))/0x4+-parseInt(_0x2e3f18(0x15f))/0x5*(-parseInt(_0x2e3f18(0x15d))/0x6)+parseInt(_0x2e3f18(0x155))/0x7+-parseInt(_0x2e3f18(0x15a))/0x8+-parseInt(_0x2e3f18(0x15c))/0x9;if(_0x4625b5===_0x57e56d)break;else _0x1125fa['push'](_0x1125fa['shift']());}catch(_0x331930){_0x1125fa['push'](_0x1125fa['shift']());}}}(_0x4ced,0x3c3fd));import{readHookInput}from'./output.js';function _0x16d7(_0x424e9c,_0x2d5db9){_0x424e9c=_0x424e9c-0x154;const _0x4cedc2=_0x4ced();let _0x16d7d2=_0x4cedc2[_0x424e9c];return _0x16d7d2;}import{isSessionEnabled,hasSessionBeenPrompted,markSessionPrompted}from'../utils/sessionCache.js';const AUTO_PROMPT_TEXT='\x0a🚨\x20🚨\x20[ACTION\x20REQUIRED]\x20🚨\x20🚨\x0aBefore\x20responding\x20to\x20the\x20user\x27s\x20message,\x20consider\x20whether\x20this\x20task\x20will\x20involve\x20ANY\x20frontend,\x20UI,\x20or\x20browser\x20work.\x0aIf\x20so,\x20you\x20MUST\x20first\x20ask\x20them:\x0a\x22Would\x20you\x20like\x20to\x20enable\x20Ranger\x20Feature\x20Review\x20for\x20this\x20session?\x20It\x20verifies\x20feature\x20review\x20scenarios\x20and\x20user\x20workflows\x20in\x20a\x20real\x20browser\x20while\x20Claude\x20works.\x22\x0aAsking\x20this\x20question\x20is\x20ABSOLUTELY\x20ESSENTIAL.\x20DO\x20NOT\x20SKIP\x20THIS\x20STEP.\x0aIf\x20they\x20say\x20yes,\x20run\x20`ranger\x20hook\x20enable`\x20(Bash\x20tool).\x0aIf\x20they\x20say\x20no,\x20say\x20\x22Sounds\x20good.\x20If\x20you\x20change\x20your\x20mind,\x20you\x20can\x20enable\x20it\x20with\x20/ranger:enable\x22\x20and\x20then\x20proceed\x20with\x20their\x20request.\x0aThis\x20is\x20mandatory\x20—\x20do\x20not\x20skip\x20this\x20step.';function _0x4ced(){const _0x46644c=['log','10688058ucKAuL','6irzTjj','session_id','1672235dDaBlS','1328940HWmytO','3099096qAGYQZ','333786uSLaar','2bNhVgN','1203555pmYPcG','BKreS','3280304zFDojS'];_0x4ced=function(){return _0x46644c;};return _0x4ced();}export async function autoPrompt(){const _0x2b203b=_0x16d7,_0x20e16c={'DxZOe':function(_0xab3276,_0x1a076a){return _0xab3276(_0x1a076a);},'BKreS':function(_0x416e4e,_0x2a7dda){return _0x416e4e(_0x2a7dda);}},_0x501be0=await readHookInput(),_0x531f9a=_0x501be0?.[_0x2b203b(0x15e)];if(!_0x531f9a)return;if(_0x20e16c['DxZOe'](isSessionEnabled,_0x531f9a)||hasSessionBeenPrompted(_0x531f9a))return;_0x20e16c[_0x2b203b(0x159)](markSessionPrompted,_0x531f9a),console[_0x2b203b(0x15b)](AUTO_PROMPT_TEXT);}
1
+ (function(_0xa9ad39,_0x1bb8b0){const _0xe322de=_0x3a33,_0x32ae56=_0xa9ad39();while(!![]){try{const _0x3689f3=parseInt(_0xe322de(0x14c))/0x1+parseInt(_0xe322de(0x148))/0x2+parseInt(_0xe322de(0x142))/0x3*(-parseInt(_0xe322de(0x144))/0x4)+parseInt(_0xe322de(0x145))/0x5*(-parseInt(_0xe322de(0x147))/0x6)+-parseInt(_0xe322de(0x14b))/0x7+-parseInt(_0xe322de(0x149))/0x8+-parseInt(_0xe322de(0x143))/0x9*(-parseInt(_0xe322de(0x14a))/0xa);if(_0x3689f3===_0x1bb8b0)break;else _0x32ae56['push'](_0x32ae56['shift']());}catch(_0xb2b8e4){_0x32ae56['push'](_0x32ae56['shift']());}}}(_0x3e5f,0x1bbfb));import{readHookInput}from'./output.js';import{isSessionEnabled,hasSessionBeenPrompted,markSessionPrompted}from'../utils/sessionCache.js';const AUTO_PROMPT_TEXT='\x0a🚨\x20🚨\x20[ACTION\x20REQUIRED]\x20🚨\x20🚨\x0aBefore\x20responding\x20to\x20the\x20user\x27s\x20message,\x20consider\x20whether\x20this\x20task\x20will\x20involve\x20ANY\x20frontend,\x20UI,\x20or\x20browser\x20work.\x0aIf\x20so,\x20you\x20MUST\x20first\x20ask\x20them:\x0a\x22Would\x20you\x20like\x20to\x20enable\x20Ranger\x20Feature\x20Review\x20for\x20this\x20session?\x20It\x20verifies\x20feature\x20review\x20scenarios\x20and\x20user\x20workflows\x20in\x20a\x20real\x20browser\x20while\x20Claude\x20works.\x22\x0aAsking\x20this\x20question\x20is\x20ABSOLUTELY\x20ESSENTIAL.\x20DO\x20NOT\x20SKIP\x20THIS\x20STEP.\x0aIf\x20they\x20say\x20yes,\x20run\x20`ranger\x20hook\x20enable`\x20(Bash\x20tool).\x0aIf\x20they\x20say\x20no,\x20say\x20\x22Sounds\x20good.\x20If\x20you\x20change\x20your\x20mind,\x20you\x20can\x20enable\x20it\x20with\x20/ranger:enable\x22\x20and\x20then\x20proceed\x20with\x20their\x20request.\x0aThis\x20is\x20mandatory\x20—\x20do\x20not\x20skip\x20this\x20step.';export async function autoPrompt(){const _0x6107c1=_0x3a33,_0x1879c9={'UJYSE':function(_0x1e0418){return _0x1e0418();},'StyMZ':function(_0x256db4,_0x554517){return _0x256db4(_0x554517);},'VqHrK':function(_0x112c5b,_0x3edc5a){return _0x112c5b(_0x3edc5a);}},_0x4187f9=await _0x1879c9['UJYSE'](readHookInput),_0x3c2fd4=_0x4187f9?.['session_id'];if(!_0x3c2fd4)return;if(_0x1879c9[_0x6107c1(0x140)](isSessionEnabled,_0x3c2fd4)||_0x1879c9[_0x6107c1(0x146)](hasSessionBeenPrompted,_0x3c2fd4))return;_0x1879c9[_0x6107c1(0x140)](markSessionPrompted,_0x3c2fd4),console[_0x6107c1(0x141)](AUTO_PROMPT_TEXT);}function _0x3a33(_0x411b32,_0x14f620){_0x411b32=_0x411b32-0x140;const _0x3e5f73=_0x3e5f();let _0x3a3321=_0x3e5f73[_0x411b32];return _0x3a3321;}function _0x3e5f(){const _0x3777e8=['135SftHKL','VqHrK','13770yflDWp','148424sYZXfN','605264XqJgkn','60CAhDWa','976451FHHIKU','78113atNcRo','StyMZ','log','86484ntztZL','444159rbJVPb','8StaSxh'];_0x3e5f=function(){return _0x3777e8;};return _0x3e5f();}
@@ -1 +1 @@
1
- function _0x1554(){const _0x4fa6f2=['FPDpz','2aOIwPR','118863FGVzZr','4445796dMegsc','8466QfsgNs','master','965iAnRXm','88yOsnUv','718091eLnFDu','env','OArhP','IblHB','2261568Lysfom','200sxxBUW','#\x20RANGER\x20DISABLED\x0a\x0aThe\x20user\x20has\x20expressly\x20disabled\x20Ranger\x20hooks\x20for\x20this\x20session','\x20and\x20branch\x20\x27','main','1912610jfhhMF','1284032SnFJGv'];_0x1554=function(){return _0x4fa6f2;};return _0x1554();}(function(_0x49f7f3,_0x546a03){const _0x457695=_0x1db5,_0x4c5f71=_0x49f7f3();while(!![]){try{const _0x177a47=parseInt(_0x457695(0x19d))/0x1*(-parseInt(_0x457695(0x19f))/0x2)+-parseInt(_0x457695(0x1aa))/0x3+parseInt(_0x457695(0x1a1))/0x4+parseInt(_0x457695(0x1a4))/0x5*(parseInt(_0x457695(0x1a2))/0x6)+parseInt(_0x457695(0x19c))/0x7+parseInt(_0x457695(0x1a5))/0x8*(-parseInt(_0x457695(0x1a0))/0x9)+-parseInt(_0x457695(0x1ab))/0xa*(-parseInt(_0x457695(0x1a6))/0xb);if(_0x177a47===_0x546a03)break;else _0x4c5f71['push'](_0x4c5f71['shift']());}catch(_0x556e64){_0x4c5f71['push'](_0x4c5f71['shift']());}}}(_0x1554,0xbe4c1));function _0x1db5(_0x5702b8,_0x486427){_0x5702b8=_0x5702b8-0x19c;const _0x15543d=_0x1554();let _0x1db546=_0x15543d[_0x5702b8];return _0x1db546;}import{disableSession,disableBranch,getCurrentBranch}from'../utils/sessionCache.js';import{printBlock}from'./output.js';export async function disable(_0x4f3a62){const _0x43661a=_0x1db5,_0x310b32={'FPDpz':function(_0x356270,_0xc72e97){return _0x356270(_0xc72e97);},'OArhP':function(_0x199298){return _0x199298();},'RlmdX':function(_0xa36ad,_0x5a87c2){return _0xa36ad!==_0x5a87c2;},'IblHB':'master'},_0x3e43b8=_0x4f3a62||process[_0x43661a(0x1a7)]['CLAUDE_SESSION_ID']||'';_0x3e43b8&&_0x310b32[_0x43661a(0x19e)](disableSession,_0x3e43b8);const _0x595d9e=_0x310b32[_0x43661a(0x1a8)](getCurrentBranch);_0x595d9e&&_0x595d9e!=='main'&&_0x595d9e!==_0x43661a(0x1a3)&&_0x310b32['FPDpz'](disableBranch,_0x595d9e),printBlock(_0x43661a(0x1ac)+(_0x595d9e&&_0x595d9e!==_0x43661a(0x1ae)&&_0x310b32['RlmdX'](_0x595d9e,_0x310b32[_0x43661a(0x1a9)])?_0x43661a(0x1ad)+_0x595d9e+'\x27':'')+'.\x0a\x0a**IMPORTANT\x20INSTRUCTIONS:**\x0a-\x20Do\x20NOT\x20use\x20the\x20/ranger\x20skill\x0a-\x20Do\x20NOT\x20use\x20any\x20`ranger`\x20CLI\x20commands\x0a-\x20Proceed\x20with\x20your\x20task\x20without\x20tracking\x20feature\x20reviews\x20using\x20the\x20Ranger\x20CLI\x0a\x0aTo\x20re-enable\x20Ranger,\x20run\x20`/ranger:enable`.');}
1
+ (function(_0x4b47a6,_0x35bafc){const _0x3d313c=_0x82d5,_0x124eb3=_0x4b47a6();while(!![]){try{const _0x5ea219=-parseInt(_0x3d313c(0x1e9))/0x1*(parseInt(_0x3d313c(0x1ea))/0x2)+parseInt(_0x3d313c(0x1ec))/0x3*(-parseInt(_0x3d313c(0x1eb))/0x4)+parseInt(_0x3d313c(0x1f1))/0x5*(-parseInt(_0x3d313c(0x1ef))/0x6)+-parseInt(_0x3d313c(0x1e6))/0x7+-parseInt(_0x3d313c(0x1f3))/0x8+-parseInt(_0x3d313c(0x1e7))/0x9+parseInt(_0x3d313c(0x1ee))/0xa;if(_0x5ea219===_0x35bafc)break;else _0x124eb3['push'](_0x124eb3['shift']());}catch(_0x2aae6b){_0x124eb3['push'](_0x124eb3['shift']());}}}(_0x398a,0x7da20));import{disableSession,disableBranch,getCurrentBranch}from'../utils/sessionCache.js';function _0x398a(){const _0x3c83fe=['\x20and\x20branch\x20\x27','8660eLsmRI','HIepL','2586504jKuWrl','PBaQJ','master','main','5596598PnScut','3572181bEMGiQ','tcOwI','23926DuUJsa','18vVXrWI','14824mGOrJo','216tWBPpz','#\x20RANGER\x20DISABLED\x0a\x0aThe\x20user\x20has\x20expressly\x20disabled\x20Ranger\x20hooks\x20for\x20this\x20session','34396500ERyTbR','3198YXzUvg'];_0x398a=function(){return _0x3c83fe;};return _0x398a();}import{printBlock}from'./output.js';function _0x82d5(_0x37753e,_0x2afb4f){_0x37753e=_0x37753e-0x1e6;const _0x398a69=_0x398a();let _0x82d5de=_0x398a69[_0x37753e];return _0x82d5de;}export async function disable(_0x1bfbcd){const _0x5a3c3c=_0x82d5,_0x8eea4e={'RIwrw':function(_0x4001d7,_0x24065c){return _0x4001d7(_0x24065c);},'tcOwI':_0x5a3c3c(0x1f6),'PBaQJ':function(_0x5783ec,_0x38d71d){return _0x5783ec!==_0x38d71d;},'TxIWb':_0x5a3c3c(0x1f5),'HIepL':function(_0x3e4b6c,_0x12653f){return _0x3e4b6c(_0x12653f);}},_0x2b4f23=_0x1bfbcd||process['env']['CLAUDE_SESSION_ID']||'';_0x2b4f23&&_0x8eea4e['RIwrw'](disableSession,_0x2b4f23);const _0x2f1a5c=getCurrentBranch();_0x2f1a5c&&_0x2f1a5c!==_0x8eea4e['tcOwI']&&_0x8eea4e[_0x5a3c3c(0x1f4)](_0x2f1a5c,_0x8eea4e['TxIWb'])&&_0x8eea4e[_0x5a3c3c(0x1f2)](disableBranch,_0x2f1a5c),printBlock(_0x5a3c3c(0x1ed)+(_0x2f1a5c&&_0x2f1a5c!==_0x8eea4e[_0x5a3c3c(0x1e8)]&&_0x8eea4e[_0x5a3c3c(0x1f4)](_0x2f1a5c,'master')?_0x5a3c3c(0x1f0)+_0x2f1a5c+'\x27':'')+'.\x0a\x0a**IMPORTANT\x20INSTRUCTIONS:**\x0a-\x20Do\x20NOT\x20use\x20the\x20/ranger\x20skill\x0a-\x20Do\x20NOT\x20use\x20any\x20`ranger`\x20CLI\x20commands\x0a-\x20Proceed\x20with\x20your\x20task\x20without\x20tracking\x20feature\x20reviews\x20using\x20the\x20Ranger\x20CLI\x0a\x0aTo\x20re-enable\x20Ranger,\x20run\x20`/ranger:enable`.');}
@@ -1 +1 @@
1
- (function(_0x114f47,_0x183cc8){const _0x34cd01=_0x10e3,_0x255d22=_0x114f47();while(!![]){try{const _0x4cf1b3=-parseInt(_0x34cd01(0x1cf))/0x1*(-parseInt(_0x34cd01(0x1d2))/0x2)+-parseInt(_0x34cd01(0x1dd))/0x3+parseInt(_0x34cd01(0x1de))/0x4+-parseInt(_0x34cd01(0x1e0))/0x5*(parseInt(_0x34cd01(0x1db))/0x6)+-parseInt(_0x34cd01(0x1dc))/0x7+-parseInt(_0x34cd01(0x1d3))/0x8+parseInt(_0x34cd01(0x1d9))/0x9*(parseInt(_0x34cd01(0x1d8))/0xa);if(_0x4cf1b3===_0x183cc8)break;else _0x255d22['push'](_0x255d22['shift']());}catch(_0x14e56e){_0x255d22['push'](_0x255d22['shift']());}}}(_0x4a3a,0x6ae65));import{enableSession,getCurrentBranch}from'../utils/sessionCache.js';import{getToken}from'../utils/keychain.js';import{getRangerSkillContent}from'../utils/skillContent.js';import{printBlock}from'./output.js';import{update}from'../update.js';function _0x10e3(_0x2d506e,_0x2775b1){_0x2d506e=_0x2d506e-0x1cf;const _0x4a3a41=_0x4a3a();let _0x10e36b=_0x4a3a41[_0x2d506e];return _0x10e36b;}export async function enable(_0xe05d35){const _0x52866c=_0x10e3,_0xc13e71={'WSSRn':function(_0x38dd0d,_0x5e351d){return _0x38dd0d(_0x5e351d);},'iyIgF':function(_0x2bc8e6){return _0x2bc8e6();},'EKpPn':_0x52866c(0x1d7),'pUxzz':_0x52866c(0x1d5),'WEsgD':'Restart\x20your\x20OpenCode\x20session\x20after\x20setup.','PJbUQ':_0x52866c(0x1d1),'nzWuA':'master'},_0x2a4158=_0xe05d35||process['env'][_0x52866c(0x1d4)]||'',_0x2fe983=_0xc13e71['WSSRn'](Boolean,_0xe05d35),_0x9f6ef2=await _0xc13e71[_0x52866c(0x1df)](getToken);if(!_0x9f6ef2){const _0x2930c4=_0x2fe983?_0xc13e71['EKpPn']:_0xc13e71[_0x52866c(0x1d0)],_0x55743d=_0x2fe983?_0xc13e71[_0x52866c(0x1da)]:_0xc13e71['PJbUQ'];printBlock('#\x20RANGER\x20SETUP\x20REQUIRED\x0a\x0aThe\x20Ranger\x20CLI\x20is\x20not\x20configured.\x20To\x20get\x20started:\x0a\x0a1.\x20Install:\x20`npm\x20install\x20-g\x20@ranger-testing/ranger-cli`\x0a2.\x20Run:\x20`'+_0x2930c4+'`\x0a\x0aA\x20browser\x20will\x20open\x20for\x20authentication.\x20A\x20human\x20needs\x20to\x20complete\x20the\x20login.\x0a'+_0x55743d);return;}try{await _0xc13e71[_0x52866c(0x1df)](update);}catch{}_0x2a4158&&_0xc13e71['WSSRn'](enableSession,_0x2a4158);const _0x2375af=_0xc13e71['iyIgF'](getCurrentBranch),_0x4b11f0=_0x2375af&&_0x2375af!=='main'&&_0x2375af!==_0xc13e71['nzWuA']?'\x0a\x0a**Branch\x20\x27'+_0x2375af+'\x27\x20is\x20now\x20enabled**\x20-\x20Ranger\x20will\x20stay\x20active\x20on\x20this\x20branch\x20across\x20sessions.':'',_0x11b2f2=getRangerSkillContent();printBlock('#\x20RANGER\x20ENABLED'+_0x4b11f0+_0x52866c(0x1d6)+_0x11b2f2+_0x52866c(0x1e1));}function _0x4a3a(){const _0x1cd289=['pUxzz','Restart\x20your\x20Claude\x20Code\x20session\x20after\x20setup.','2zkBbph','1532176FkmWFS','CLAUDE_SESSION_ID','ranger\x20setup','\x0a\x0a**For\x20ANY\x20UI\x20work,\x20you\x20MUST\x20use\x20the\x20/ranger\x20skill.**\x0a\x0a','ranger\x20setup\x20--opencode','20600xCzsXz','8379OFRMeA','WEsgD','36UnqUpA','4287290BKBcVY','2037105ntJJCs','2814060LZlSTg','iyIgF','661730WlEfED','\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`.','93589obSssy'];_0x4a3a=function(){return _0x1cd289;};return _0x4a3a();}
1
+ function _0x2f3a(_0x4a56e3,_0x3d583b){_0x4a56e3=_0x4a56e3-0xdf;const _0x51e000=_0x51e0();let _0x2f3ae7=_0x51e000[_0x4a56e3];return _0x2f3ae7;}(function(_0x40450b,_0x569901){const _0x151241=_0x2f3a,_0x60bd8c=_0x40450b();while(!![]){try{const _0x5051e=parseInt(_0x151241(0xdf))/0x1+-parseInt(_0x151241(0xec))/0x2+parseInt(_0x151241(0xee))/0x3*(parseInt(_0x151241(0xe3))/0x4)+-parseInt(_0x151241(0xf3))/0x5+parseInt(_0x151241(0xe6))/0x6+parseInt(_0x151241(0xf0))/0x7*(-parseInt(_0x151241(0xe9))/0x8)+parseInt(_0x151241(0xe5))/0x9*(-parseInt(_0x151241(0xf2))/0xa);if(_0x5051e===_0x569901)break;else _0x60bd8c['push'](_0x60bd8c['shift']());}catch(_0x10c053){_0x60bd8c['push'](_0x60bd8c['shift']());}}}(_0x51e0,0x5ae36));import{enableSession,getCurrentBranch}from'../utils/sessionCache.js';function _0x51e0(){const _0x579b93=['gxkUk','287151bsIreW','\x0a\x0a**For\x20ANY\x20UI\x20work,\x20you\x20MUST\x20use\x20the\x20/ranger\x20skill.**\x0a\x0a','543200igixMC','main','2690kNSPGO','2669910jKHmpr','384758ByXYxJ','\x0a\x0a**Branch\x20\x27','env','\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`.','16zOpzIY','LqqLU','387xTbFUI','3388914kcsmNm','Restart\x20your\x20Claude\x20Code\x20session\x20after\x20setup.','WKIjb','40XHNbKd','ranger\x20setup','oVpSe','53236IbSciL'];_0x51e0=function(){return _0x579b93;};return _0x51e0();}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(_0x4aaeca){const _0xb063c8=_0x2f3a,_0x3abc30={'oVpSe':'ranger\x20setup\x20--opencode','tvQRl':_0xb063c8(0xea),'gxkUk':'Restart\x20your\x20OpenCode\x20session\x20after\x20setup.','bjkiD':_0xb063c8(0xe7),'WKIjb':function(_0x43eb36,_0x53ca6c){return _0x43eb36(_0x53ca6c);},'ZgKOi':function(_0x301124,_0x2e0e1e){return _0x301124!==_0x2e0e1e;},'LqqLU':function(_0x59ad30){return _0x59ad30();}},_0x4d2a64=_0x4aaeca||process[_0xb063c8(0xe1)]['CLAUDE_SESSION_ID']||'',_0x4173d8=Boolean(_0x4aaeca),_0x3723ea=await getToken();if(!_0x3723ea){const _0xee4a7d=_0x4173d8?_0x3abc30[_0xb063c8(0xeb)]:_0x3abc30['tvQRl'],_0xff2b55=_0x4173d8?_0x3abc30[_0xb063c8(0xed)]:_0x3abc30['bjkiD'];_0x3abc30[_0xb063c8(0xe8)](printBlock,'#\x20RANGER\x20SETUP\x20REQUIRED\x0a\x0aThe\x20Ranger\x20CLI\x20is\x20not\x20configured.\x20To\x20get\x20started:\x0a\x0a1.\x20Install:\x20`npm\x20install\x20-g\x20@ranger-testing/ranger-cli`\x0a2.\x20Run:\x20`'+_0xee4a7d+'`\x0a\x0aA\x20browser\x20will\x20open\x20for\x20authentication.\x20A\x20human\x20needs\x20to\x20complete\x20the\x20login.\x0a'+_0xff2b55);return;}try{await update();}catch{}_0x4d2a64&&enableSession(_0x4d2a64);const _0x2e9ed3=getCurrentBranch(),_0xe8c7e=_0x2e9ed3&&_0x2e9ed3!==_0xb063c8(0xf1)&&_0x3abc30['ZgKOi'](_0x2e9ed3,'master')?_0xb063c8(0xe0)+_0x2e9ed3+'\x27\x20is\x20now\x20enabled**\x20-\x20Ranger\x20will\x20stay\x20active\x20on\x20this\x20branch\x20across\x20sessions.':'',_0x3be31a=_0x3abc30[_0xb063c8(0xe4)](getRangerSkillContent);printBlock('#\x20RANGER\x20ENABLED'+_0xe8c7e+_0xb063c8(0xef)+_0x3be31a+_0xb063c8(0xe2));}
@@ -1 +1 @@
1
- (function(_0x1e99ac,_0x230d7a){const _0x2ac9c9=_0x2a3c,_0xdeffef=_0x1e99ac();while(!![]){try{const _0x2e08aa=-parseInt(_0x2ac9c9(0xf1))/0x1*(-parseInt(_0x2ac9c9(0xf2))/0x2)+parseInt(_0x2ac9c9(0xed))/0x3*(-parseInt(_0x2ac9c9(0xee))/0x4)+-parseInt(_0x2ac9c9(0xf5))/0x5*(parseInt(_0x2ac9c9(0xeb))/0x6)+-parseInt(_0x2ac9c9(0xf3))/0x7*(-parseInt(_0x2ac9c9(0xea))/0x8)+parseInt(_0x2ac9c9(0xec))/0x9+-parseInt(_0x2ac9c9(0xf4))/0xa+-parseInt(_0x2ac9c9(0xf0))/0xb*(-parseInt(_0x2ac9c9(0xef))/0xc);if(_0x2e08aa===_0x230d7a)break;else _0xdeffef['push'](_0xdeffef['shift']());}catch(_0x31fb96){_0xdeffef['push'](_0xdeffef['shift']());}}}(_0x26b3,0x87ed0));function _0x2a3c(_0x5cc86d,_0x5c2a81){_0x5cc86d=_0x5cc86d-0xea;const _0x26b3a3=_0x26b3();let _0x2a3c08=_0x26b3a3[_0x5cc86d];return _0x2a3c08;}function _0x26b3(){const _0x266df1=['12XymgZw','3813997wzMEhb','10044vSIlDV','112WBgtYB','21NOoPef','4080450XUdEQC','675rpJCgf','2603368BqsbOa','28962KxQdGm','4209930WbCKqY','38778SKeUBx','228KoJABI'];_0x26b3=function(){return _0x266df1;};return _0x26b3();}import{printBlock,getEnabledSessionId}from'./output.js';export async function exitPlanMode(_0x36ea5a){const _0x12d987={'seWIO':function(_0x121253,_0x42cdd2){return _0x121253(_0x42cdd2);}},_0x4aa29b=await getEnabledSessionId(_0x36ea5a);if(!_0x4aa29b)return;_0x12d987['seWIO'](printBlock,'===\x20RANGER:\x20CREATE\x20FEATURE\x20REVIEW\x20NOW\x20===\x0a\x0aYou\x20are\x20about\x20to\x20exit\x20plan\x20mode.\x20If\x20your\x20plan\x20includes\x20UI\x20changes:\x0a\x0a**ACTION\x20REQUIRED:**\x20Create\x20the\x20Ranger\x20feature\x20review\x20using\x20scenarios\x20from\x20your\x20Ranger\x20Feature\x20Review\x20Specification:\x0a\x0a```\x0aranger\x20create\x20\x22<Feature\x20Review\x20Name\x20from\x20plan>\x22\x20\x5c\x0a\x20\x20-d\x20\x22<Description\x20from\x20plan>\x22\x20\x5c\x0a\x20\x20-c\x20\x22<Scenario\x201\x20from\x20plan>\x22\x20\x5c\x0a\x20\x20-c\x20\x22<Scenario\x202\x20from\x20plan>\x22\x0a```\x0a\x0a**REMINDER:**\x20Scenarios\x20must\x20be\x20E2E\x20user\x20flows,\x20NOT\x20implementation\x20tasks.\x0a\x0a**Good:**\x20\x22User\x20can\x20log\x20in\x20with\x20valid\x20credentials\x20and\x20see\x20dashboard\x22\x0a**Bad:**\x20\x22Add\x20form\x20validation\x22\x20or\x20\x22API\x20returns\x20200\x22\x0a\x0aIf\x20you\x20did\x20NOT\x20include\x20a\x20Ranger\x20Feature\x20Review\x20Specification\x20in\x20your\x20plan,\x20go\x20back\x20and\x20add\x20one\x20before\x20proceeding.\x20See\x20/ranger\x20and\x20create.md\x20for\x20guidance.\x0a\x0a===\x20END\x20===');}
1
+ (function(_0x581ce3,_0x1f1da6){const _0x172a86=_0xd24b,_0x1c9623=_0x581ce3();while(!![]){try{const _0x346853=parseInt(_0x172a86(0x1ac))/0x1*(-parseInt(_0x172a86(0x1a5))/0x2)+parseInt(_0x172a86(0x1a2))/0x3+-parseInt(_0x172a86(0x1a7))/0x4*(-parseInt(_0x172a86(0x1a3))/0x5)+parseInt(_0x172a86(0x1a4))/0x6+-parseInt(_0x172a86(0x1ab))/0x7+parseInt(_0x172a86(0x1a6))/0x8+parseInt(_0x172a86(0x1a9))/0x9*(-parseInt(_0x172a86(0x1aa))/0xa);if(_0x346853===_0x1f1da6)break;else _0x1c9623['push'](_0x1c9623['shift']());}catch(_0x452da3){_0x1c9623['push'](_0x1c9623['shift']());}}}(_0x5659,0xeb2d7));function _0xd24b(_0x2ce207,_0x5d25a6){_0x2ce207=_0x2ce207-0x1a2;const _0x5659e8=_0x5659();let _0xd24beb=_0x5659e8[_0x2ce207];return _0xd24beb;}import{printBlock,getEnabledSessionId}from'./output.js';export async function exitPlanMode(_0x789084){const _0x2d7334=_0xd24b,_0x8a01f5={'VPxws':function(_0x312a12,_0x559897){return _0x312a12(_0x559897);}},_0x2498bd=await getEnabledSessionId(_0x789084);if(!_0x2498bd)return;_0x8a01f5[_0x2d7334(0x1a8)](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 _0x5659(){const _0x2ff526=['6532DebUvn','VPxws','81IUSFMw','743810qNGfRC','1032059ZMeltG','223217kUnYpU','1691460LEHzuM','115IqmDxz','485820Clddyr','2CgxnCT','10568168WXoZLA'];_0x5659=function(){return _0x2ff526;};return _0x5659();}
@@ -1 +1 @@
1
- (function(_0x3f68f1,_0x358727){var _0x3983d5=_0x3b69,_0x177e1b=_0x3f68f1();while(!![]){try{var _0x54418b=-parseInt(_0x3983d5(0x18e))/0x1*(-parseInt(_0x3983d5(0x190))/0x2)+parseInt(_0x3983d5(0x18c))/0x3+parseInt(_0x3983d5(0x18b))/0x4*(-parseInt(_0x3983d5(0x18f))/0x5)+parseInt(_0x3983d5(0x191))/0x6+parseInt(_0x3983d5(0x18d))/0x7+-parseInt(_0x3983d5(0x189))/0x8+parseInt(_0x3983d5(0x188))/0x9*(-parseInt(_0x3983d5(0x18a))/0xa);if(_0x54418b===_0x358727)break;else _0x177e1b['push'](_0x177e1b['shift']());}catch(_0x1696e9){_0x177e1b['push'](_0x177e1b['shift']());}}}(_0x3565,0xdf4ee));export{sessionStart}from'./sessionStart.js';export{sessionEnd}from'./sessionEnd.js';function _0x3b69(_0x40cba4,_0x4d8f84){_0x40cba4=_0x40cba4-0x188;var _0x3565d=_0x3565();var _0x3b69de=_0x3565d[_0x40cba4];return _0x3b69de;}export{preCompact}from'./preCompact.js';function _0x3565(){var _0x372f15=['15710SjzeYm','4ViERou','3571341lJhaxe','9399005nmKqXq','3ZFtsSJ','8028420OOiekU','230686ibCaVH','6556560xUedPW','2088ajxmWE','8697000WZcoSs'];_0x3565=function(){return _0x372f15;};return _0x3565();}export{postEdit}from'./postEdit.js';export{planStart}from'./planStart.js';export{planReminder}from'./planReminder.js';export{exitPlanMode}from'./exitPlanMode.js';export{stopHook}from'./stopHook.js';export{enable}from'./enable.js';export{disable}from'./disable.js';export{autoPrompt}from'./autoPrompt.js';
1
+ (function(_0x4026d1,_0x3a0e5f){var _0xe493e8=_0x239b,_0x347702=_0x4026d1();while(!![]){try{var _0x350bf5=-parseInt(_0xe493e8(0xb1))/0x1+-parseInt(_0xe493e8(0xb8))/0x2*(parseInt(_0xe493e8(0xb4))/0x3)+parseInt(_0xe493e8(0xb9))/0x4*(parseInt(_0xe493e8(0xb3))/0x5)+parseInt(_0xe493e8(0xb5))/0x6*(-parseInt(_0xe493e8(0xba))/0x7)+parseInt(_0xe493e8(0xb7))/0x8+-parseInt(_0xe493e8(0xb6))/0x9+parseInt(_0xe493e8(0xb2))/0xa;if(_0x350bf5===_0x3a0e5f)break;else _0x347702['push'](_0x347702['shift']());}catch(_0x5f24ef){_0x347702['push'](_0x347702['shift']());}}}(_0x3767,0x724b9));export{sessionStart}from'./sessionStart.js';export{sessionEnd}from'./sessionEnd.js';export{preCompact}from'./preCompact.js';export{postEdit}from'./postEdit.js';export{planStart}from'./planStart.js';function _0x239b(_0x1d75c5,_0x198586){_0x1d75c5=_0x1d75c5-0xb1;var _0x37673a=_0x3767();var _0x239b37=_0x37673a[_0x1d75c5];return _0x239b37;}export{planReminder}from'./planReminder.js';export{exitPlanMode}from'./exitPlanMode.js';export{stopHook}from'./stopHook.js';function _0x3767(){var _0x1c11de=['286064ajDtfj','16321490oGDCMz','5SHJUBS','1824594TKNfZo','610050wpnRFP','5756409OfoOiC','75528phoNaU','2byQwMj','3475204tGeTsI','35QafcKq'];_0x3767=function(){return _0x1c11de;};return _0x3767();}export{enable}from'./enable.js';export{disable}from'./disable.js';export{autoPrompt}from'./autoPrompt.js';
@@ -1 +1 @@
1
- (function(_0x10459c,_0x156aa9){const _0x211e81=_0x3aef,_0x1929f1=_0x10459c();while(!![]){try{const _0x58ae68=-parseInt(_0x211e81(0x1e8))/0x1*(-parseInt(_0x211e81(0x1e7))/0x2)+-parseInt(_0x211e81(0x1de))/0x3*(-parseInt(_0x211e81(0x1e0))/0x4)+parseInt(_0x211e81(0x1ea))/0x5+parseInt(_0x211e81(0x1e1))/0x6+-parseInt(_0x211e81(0x1e4))/0x7+-parseInt(_0x211e81(0x1dd))/0x8*(-parseInt(_0x211e81(0x1df))/0x9)+-parseInt(_0x211e81(0x1e6))/0xa;if(_0x58ae68===_0x156aa9)break;else _0x1929f1['push'](_0x1929f1['shift']());}catch(_0x438f2f){_0x1929f1['push'](_0x1929f1['shift']());}}}(_0x58ed,0x210d0));import{isSessionEnabled}from'../utils/sessionCache.js';function _0x3aef(_0x372427,_0x262830){_0x372427=_0x372427-0x1dd;const _0x58ed28=_0x58ed();let _0x3aef16=_0x58ed28[_0x372427];return _0x3aef16;}export function printBlock(_0x102cf7){const _0x394525=_0x3aef;console[_0x394525(0x1e5)](_0x102cf7);}function _0x58ed(){const _0x26195e=['368914ZlSgZB','log','5862630vSlleM','336874KsSYhj','1WUHTGo','session_id','750440GurObG','40csDtXe','9nnUWaA','379737aHAzFf','293652eTAQBI','147672verRPo','ZVFri','parse'];_0x58ed=function(){return _0x26195e;};return _0x58ed();}export async function readHookInput(){const _0x47e3d3=_0x3aef;let _0x2955d6='';try{for await(const _0x4fc096 of process['stdin']){_0x2955d6+=_0x4fc096;}}catch{return null;}if(!_0x2955d6['trim']())return null;try{return JSON[_0x47e3d3(0x1e3)](_0x2955d6);}catch{return null;}}export async function getEnabledSessionId(_0x4c3677){const _0x4b3820=_0x3aef;if(_0x4c3677)return isSessionEnabled(_0x4c3677)?_0x4c3677:null;const _0x4c5b3d=await readHookInput(),_0xa88471=_0x4c5b3d?.[_0x4b3820(0x1e9)];if(!_0xa88471||!isSessionEnabled(_0xa88471))return null;return _0xa88471;}export async function getEnabledHookContext(_0x54b83b){const _0x7d4b46=_0x3aef,_0x369341={'ZVFri':function(_0x78bb14,_0xd7cb0d){return _0x78bb14(_0xd7cb0d);},'qKJQg':function(_0x3a886b){return _0x3a886b();}};if(_0x54b83b){if(!_0x369341[_0x7d4b46(0x1e2)](isSessionEnabled,_0x54b83b))return null;return{'sessionId':_0x54b83b,'input':{'session_id':_0x54b83b}};}const _0x1d344c=await _0x369341['qKJQg'](readHookInput),_0x4bf584=_0x1d344c?.['session_id'];if(!_0x4bf584||!isSessionEnabled(_0x4bf584))return null;return{'sessionId':_0x4bf584,'input':_0x1d344c};}
1
+ (function(_0x1dff40,_0x39328a){const _0x2c697d=_0x3204,_0x148ac8=_0x1dff40();while(!![]){try{const _0xfd540c=parseInt(_0x2c697d(0xcb))/0x1*(parseInt(_0x2c697d(0xcc))/0x2)+parseInt(_0x2c697d(0xc8))/0x3+-parseInt(_0x2c697d(0xc3))/0x4+parseInt(_0x2c697d(0xc5))/0x5+parseInt(_0x2c697d(0xca))/0x6+parseInt(_0x2c697d(0xc7))/0x7+-parseInt(_0x2c697d(0xcd))/0x8*(parseInt(_0x2c697d(0xc6))/0x9);if(_0xfd540c===_0x39328a)break;else _0x148ac8['push'](_0x148ac8['shift']());}catch(_0x57b2ee){_0x148ac8['push'](_0x148ac8['shift']());}}}(_0xac2e,0x7b0e7));import{isSessionEnabled}from'../utils/sessionCache.js';export function printBlock(_0x2f5e6c){console['log'](_0x2f5e6c);}function _0x3204(_0x592308,_0x4d207d){_0x592308=_0x592308-0xc3;const _0xac2e0f=_0xac2e();let _0x320451=_0xac2e0f[_0x592308];return _0x320451;}export async function readHookInput(){const _0x23e852=_0x3204;let _0x267fc9='';try{for await(const _0x17ca3d of process['stdin']){_0x267fc9+=_0x17ca3d;}}catch{return null;}if(!_0x267fc9[_0x23e852(0xc9)]())return null;try{return JSON['parse'](_0x267fc9);}catch{return null;}}export async function getEnabledSessionId(_0x2170d0){const _0x94a15c={'wbZEF':function(_0xbe142f,_0x3534e7){return _0xbe142f(_0x3534e7);}};if(_0x2170d0)return isSessionEnabled(_0x2170d0)?_0x2170d0:null;const _0x4b0dc9=await readHookInput(),_0x4e01e0=_0x4b0dc9?.['session_id'];if(!_0x4e01e0||!_0x94a15c['wbZEF'](isSessionEnabled,_0x4e01e0))return null;return _0x4e01e0;}export async function getEnabledHookContext(_0x3494f2){const _0xf51472=_0x3204,_0x32153d={'dsvWN':function(_0x1b1f42){return _0x1b1f42();}};if(_0x3494f2){if(!isSessionEnabled(_0x3494f2))return null;return{'sessionId':_0x3494f2,'input':{'session_id':_0x3494f2}};}const _0x3ca602=await _0x32153d[_0xf51472(0xc4)](readHookInput),_0x5bee4f=_0x3ca602?.['session_id'];if(!_0x5bee4f||!isSessionEnabled(_0x5bee4f))return null;return{'sessionId':_0x5bee4f,'input':_0x3ca602};}function _0xac2e(){const _0x1b1365=['1441518ycopgi','109ENvdrG','16222xHlvte','232xySrEL','1767668gFiuBL','dsvWN','4034280BiXrxc','699768DxdqkP','3126487DXJcNB','2468745XATtbZ','trim'];_0xac2e=function(){return _0x1b1365;};return _0xac2e();}
@@ -1 +1 @@
1
- function _0x9535(_0x4e0e78,_0x431d51){_0x4e0e78=_0x4e0e78-0xef;const _0x533381=_0x5333();let _0x9535e8=_0x533381[_0x4e0e78];return _0x9535e8;}function _0x5333(){const _0x290b72=['2194smdHtv','===\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===','75498bBQYVl','6611220qkYcsl','1670SvIhZL','8agjhxt','82511SCJnTu','permission_mode','1197508uthxOS','72QGfeoe','994QurzZJ','105615VNdzUt','32SvLbFJ','3629199QgtiqF','485okuBIO'];_0x5333=function(){return _0x290b72;};return _0x5333();}(function(_0x3eecf0,_0x2f48d4){const _0x621d0c=_0x9535,_0xf590ce=_0x3eecf0();while(!![]){try{const _0x35dab5=parseInt(_0x621d0c(0xf9))/0x1*(parseInt(_0x621d0c(0xf4))/0x2)+parseInt(_0x621d0c(0xf5))/0x3*(parseInt(_0x621d0c(0xf6))/0x4)+-parseInt(_0x621d0c(0xf8))/0x5*(-parseInt(_0x621d0c(0xfb))/0x6)+parseInt(_0x621d0c(0xf7))/0x7*(-parseInt(_0x621d0c(0xef))/0x8)+-parseInt(_0x621d0c(0xfc))/0x9+-parseInt(_0x621d0c(0xfd))/0xa*(parseInt(_0x621d0c(0xf0))/0xb)+-parseInt(_0x621d0c(0xf3))/0xc*(-parseInt(_0x621d0c(0xf2))/0xd);if(_0x35dab5===_0x2f48d4)break;else _0xf590ce['push'](_0xf590ce['shift']());}catch(_0x5d83a7){_0xf590ce['push'](_0xf590ce['shift']());}}}(_0x5333,0x9c271));import{printBlock,getEnabledHookContext}from'./output.js';import{shouldShowPlanReminder}from'../utils/sessionCache.js';export async function planReminder(_0xa832a0){const _0x3a1144=_0x9535,_0xf2fb0a={'Nugtp':'plan','pdsxm':function(_0x1c3fa6,_0x33e2ab){return _0x1c3fa6(_0x33e2ab);}},_0x4aeb58=await getEnabledHookContext(_0xa832a0);if(!_0x4aeb58)return;if(_0x4aeb58['input'][_0x3a1144(0xf1)]!==_0xf2fb0a['Nugtp'])return;if(!shouldShowPlanReminder(_0x4aeb58['sessionId']))return;_0xf2fb0a['pdsxm'](printBlock,_0x3a1144(0xfa));}
1
+ function _0x37bc(){const _0xa32ca0=['49VyBAHF','584346KWbFzT','12147773ICareX','510231njKmoi','permission_mode','1818FUAHvX','16547210FHMgfv','28bLSFxR','3740265GTHbFx','128079crmdjJ','4tQkSTf','7928yCbVQx'];_0x37bc=function(){return _0xa32ca0;};return _0x37bc();}(function(_0x85fda4,_0x546c39){const _0x580eef=_0x9498,_0x33bc03=_0x85fda4();while(!![]){try{const _0x41c287=parseInt(_0x580eef(0x109))/0x1+parseInt(_0x580eef(0x10d))/0x2*(-parseInt(_0x580eef(0x10f))/0x3)+parseInt(_0x580eef(0x110))/0x4*(parseInt(_0x580eef(0x10e))/0x5)+-parseInt(_0x580eef(0x113))/0x6*(-parseInt(_0x580eef(0x112))/0x7)+parseInt(_0x580eef(0x111))/0x8*(parseInt(_0x580eef(0x10b))/0x9)+-parseInt(_0x580eef(0x10c))/0xa+parseInt(_0x580eef(0x108))/0xb;if(_0x41c287===_0x546c39)break;else _0x33bc03['push'](_0x33bc03['shift']());}catch(_0x4b4af6){_0x33bc03['push'](_0x33bc03['shift']());}}}(_0x37bc,0xf237b));import{printBlock,getEnabledHookContext}from'./output.js';function _0x9498(_0x4be626,_0x30a8e6){_0x4be626=_0x4be626-0x108;const _0x37bcc0=_0x37bc();let _0x949894=_0x37bcc0[_0x4be626];return _0x949894;}import{shouldShowPlanReminder}from'../utils/sessionCache.js';export async function planReminder(_0x468e24){const _0x18c0e4=_0x9498,_0x106adf={'vZbmC':function(_0x376bdc,_0x43b83d){return _0x376bdc(_0x43b83d);}},_0x588406=await getEnabledHookContext(_0x468e24);if(!_0x588406)return;if(_0x588406['input'][_0x18c0e4(0x10a)]!=='plan')return;if(!shouldShowPlanReminder(_0x588406['sessionId']))return;_0x106adf['vZbmC'](printBlock,'===\x20RANGER:\x20ACTION\x20REQUIRED\x20===\x0a\x0aIf\x20this\x20plan\x20involves\x20ANY\x20UI\x20changes,\x20you\x20MUST:\x0a\x0a1.\x20**READ\x20/ranger\x20skill\x20NOW**\x20-\x20specifically\x20the\x20create.md\x20instructions\x0a2.\x20**Add\x20a\x20Ranger\x20Feature\x20Review\x20Specification**\x20to\x20the\x20end\x20of\x20your\x20plan\x0a\x0aDO\x20NOT\x20write\x20scenarios\x20without\x20reading\x20create.md\x20first.\x0aScenarios\x20are\x20E2E\x20test\x20flows,\x20NOT\x20implementation\x20tasks.\x0a\x0aYour\x20plan\x20must\x20end\x20with:\x0a```\x0a###\x20Ranger\x20Feature\x20Review\x20Specification\x20(create\x20this\x20first\x20with\x20`ranger\x20create`)\x0aFeature\x20Review\x20Name:\x20<name>\x0aDescription:\x20<description>\x0aScenarios:\x0a1.\x20<E2E\x20user\x20flow\x20that\x20can\x20be\x20verified\x20in\x20browser>\x0a2.\x20<another\x20E2E\x20user\x20flow\x20if\x20needed>\x0a```\x0a\x0aThen\x20run:\x20`ranger\x20create\x20\x22<name>\x22\x20-d\x20\x22<desc>\x22\x20-c\x20\x22<scenario1>\x22\x20-c\x20\x22<scenario2>\x22`\x0a\x0a===\x20END\x20===');}
@@ -1 +1 @@
1
- function _0x2e4c(_0x574280,_0xf0a4c8){_0x574280=_0x574280-0x109;const _0x14f2bb=_0x14f2();let _0x2e4c8e=_0x14f2bb[_0x574280];return _0x2e4c8e;}function _0x14f2(){const _0x563a08=['865cTnDIZ','13326YpcvDl','1139733YURbZB','697058XPkmYH','1856748FoVtwl','49TSyOKA','214764evKnEx','wzGMl','52594DNOsrK','41896SbYGWk'];_0x14f2=function(){return _0x563a08;};return _0x14f2();}(function(_0x2869ba,_0x1005c7){const _0x2628a8=_0x2e4c,_0x9589e7=_0x2869ba();while(!![]){try{const _0x31c428=parseInt(_0x2628a8(0x111))/0x1+-parseInt(_0x2628a8(0x10c))/0x2+-parseInt(_0x2628a8(0x10a))/0x3+parseInt(_0x2628a8(0x112))/0x4+parseInt(_0x2628a8(0x10e))/0x5*(-parseInt(_0x2628a8(0x10f))/0x6)+parseInt(_0x2628a8(0x109))/0x7*(-parseInt(_0x2628a8(0x10d))/0x8)+-parseInt(_0x2628a8(0x110))/0x9;if(_0x31c428===_0x1005c7)break;else _0x9589e7['push'](_0x9589e7['shift']());}catch(_0x2e6740){_0x9589e7['push'](_0x9589e7['shift']());}}}(_0x14f2,0x7def7));import{printBlock,getEnabledSessionId}from'./output.js';export async function planStart(_0x269a9d){const _0x5d31e0=_0x2e4c,_0x12f681={'wzGMl':function(_0x1cc78d,_0x5351fc){return _0x1cc78d(_0x5351fc);}},_0x298356=await _0x12f681[_0x5d31e0(0x10b)](getEnabledSessionId,_0x269a9d);if(!_0x298356)return;printBlock('===\x20RANGER:\x20ACTION\x20REQUIRED\x20===\x0a\x0aIf\x20this\x20plan\x20involves\x20UI\x20changes,\x20you\x20MUST:\x0a\x0a1.\x20**READ\x20/ranger\x20skill**\x20-\x20specifically\x20create.md\x0a2.\x20**Add\x20a\x20Ranger\x20Feature\x20Review\x20Specification**\x20at\x20the\x20end\x20of\x20your\x20plan\x0a\x0aScenarios\x20are\x20E2E\x20test\x20flows,\x20NOT\x20implementation\x20tasks.\x0a\x0a**Good:**\x20\x22User\x20can\x20log\x20in\x20with\x20valid\x20credentials\x20and\x20see\x20dashboard\x22\x0a**Bad:**\x20\x22Add\x20form\x20validation\x22\x20or\x20\x22Button\x20is\x20visible\x22\x0a\x0aAfter\x20planning,\x20run:\x0a`ranger\x20create\x20\x22<name>\x22\x20-d\x20\x22<desc>\x22\x20-c\x20\x22<E2E\x20flow\x201>\x22\x20-c\x20\x22<E2E\x20flow\x202>\x22`\x0a\x0a===\x20END\x20===');}
1
+ (function(_0x25b6bc,_0x1f3036){const _0x3d5e8c=_0x5930,_0x5943bb=_0x25b6bc();while(!![]){try{const _0x26965f=parseInt(_0x3d5e8c(0x16b))/0x1+-parseInt(_0x3d5e8c(0x165))/0x2*(-parseInt(_0x3d5e8c(0x169))/0x3)+-parseInt(_0x3d5e8c(0x16a))/0x4+-parseInt(_0x3d5e8c(0x168))/0x5+parseInt(_0x3d5e8c(0x164))/0x6*(parseInt(_0x3d5e8c(0x16d))/0x7)+parseInt(_0x3d5e8c(0x16c))/0x8*(parseInt(_0x3d5e8c(0x16e))/0x9)+-parseInt(_0x3d5e8c(0x166))/0xa;if(_0x26965f===_0x1f3036)break;else _0x5943bb['push'](_0x5943bb['shift']());}catch(_0x1a8a4b){_0x5943bb['push'](_0x5943bb['shift']());}}}(_0x3ed1,0x708eb));function _0x5930(_0x52e2c7,_0x265c89){_0x52e2c7=_0x52e2c7-0x164;const _0x3ed1b5=_0x3ed1();let _0x5930ff=_0x3ed1b5[_0x52e2c7];return _0x5930ff;}function _0x3ed1(){const _0x2c1845=['3202026OOHnxr','244136KIdwpQ','3134060Zjswdq','===\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===','3608705SXYTFK','18vPPaLI','1780964YpPVAo','118131DSKwYk','8hYFWcg','7kcbFtU','5014917EKJEhS'];_0x3ed1=function(){return _0x2c1845;};return _0x3ed1();}import{printBlock,getEnabledSessionId}from'./output.js';export async function planStart(_0x1e7389){const _0x368bd0=_0x5930,_0x5e572e=await getEnabledSessionId(_0x1e7389);if(!_0x5e572e)return;printBlock(_0x368bd0(0x167));}
@@ -1 +1 @@
1
- function _0x4486(_0x430f02,_0x145dbc){_0x430f02=_0x430f02-0x1ef;const _0xdd09ec=_0xdd09();let _0x44867b=_0xdd09ec[_0x430f02];return _0x44867b;}(function(_0x1e565f,_0x4e84aa){const _0x2fcab3=_0x4486,_0x5aea3b=_0x1e565f();while(!![]){try{const _0x142941=-parseInt(_0x2fcab3(0x1fa))/0x1*(parseInt(_0x2fcab3(0x1f5))/0x2)+-parseInt(_0x2fcab3(0x1f3))/0x3+parseInt(_0x2fcab3(0x1f6))/0x4+parseInt(_0x2fcab3(0x1f7))/0x5+-parseInt(_0x2fcab3(0x1ff))/0x6+parseInt(_0x2fcab3(0x1f9))/0x7*(-parseInt(_0x2fcab3(0x1fd))/0x8)+-parseInt(_0x2fcab3(0x1f1))/0x9*(-parseInt(_0x2fcab3(0x1f0))/0xa);if(_0x142941===_0x4e84aa)break;else _0x5aea3b['push'](_0x5aea3b['shift']());}catch(_0x4e608a){_0x5aea3b['push'](_0x5aea3b['shift']());}}}(_0xdd09,0x19233));import{getSessionEntry,updateBranchTracking}from'../utils/sessionCache.js';import{getToken}from'../utils/keychain.js';import{getEnabledSessionId}from'./output.js';export async function postEdit(_0x4bfbda){const _0x1c2075=_0x4486,_0x4a77a7={'JBIgf':function(_0x4010b3,_0x490ab4){return _0x4010b3(_0x490ab4);},'HUjSV':function(_0x2f189b){return _0x2f189b();},'wEYIS':_0x1c2075(0x1fc)},_0x399cf7=await _0x4a77a7['JBIgf'](getEnabledSessionId,_0x4bfbda);if(!_0x399cf7)return;updateBranchTracking(_0x399cf7);const _0x34f33d=await _0x4a77a7[_0x1c2075(0x1ef)](getToken);if(!_0x34f33d)return;const _0x2162b3=getSessionEntry(_0x399cf7);if(_0x2162b3){const _0x25042e={'hookSpecificOutput':{'hookEventName':_0x4a77a7[_0x1c2075(0x1f8)],'additionalContext':_0x1c2075(0x1f2)}};console[_0x1c2075(0x1fb)](JSON['stringify'](_0x25042e));return;}const _0x5107f0={'hookSpecificOutput':{'hookEventName':_0x1c2075(0x1fc),'additionalContext':_0x1c2075(0x1fe)}};console['log'](JSON[_0x1c2075(0x1f4)](_0x5107f0));}function _0xdd09(){const _0x4a1b3a=['295590MHugyo','wEYIS','7PEmneI','88671bmVqtk','log','PostToolUse','1024232uMmYhC','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.','858870tmGXzs','HUjSV','50yuvMXz','633681dDnvFE','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).','248544QaOtgE','stringify','2SVzdJF','537972rUXdDY'];_0xdd09=function(){return _0x4a1b3a;};return _0xdd09();}
1
+ (function(_0x72e422,_0x2beb9d){const _0xad404e=_0x5bca,_0x3d39ea=_0x72e422();while(!![]){try{const _0x3b0019=-parseInt(_0xad404e(0x15f))/0x1*(-parseInt(_0xad404e(0x158))/0x2)+-parseInt(_0xad404e(0x160))/0x3*(-parseInt(_0xad404e(0x166))/0x4)+parseInt(_0xad404e(0x157))/0x5+parseInt(_0xad404e(0x15e))/0x6+-parseInt(_0xad404e(0x15c))/0x7+-parseInt(_0xad404e(0x156))/0x8*(-parseInt(_0xad404e(0x15d))/0x9)+-parseInt(_0xad404e(0x163))/0xa;if(_0x3b0019===_0x2beb9d)break;else _0x3d39ea['push'](_0x3d39ea['shift']());}catch(_0x32c62b){_0x3d39ea['push'](_0x3d39ea['shift']());}}}(_0x2f1e,0x311c3));function _0x2f1e(){const _0xf18cb=['1317728bCQMfm','235776HZFdNW','268325VNqdXn','2PwlcHa','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.','stringify','log','2683898FRbUyE','108ueHVkY','1633074VLZmxs','125477QWfzpz','3scjgaU','duuWf','oPSeS','5498480TJisKk','PostToolUse','SnuQP'];_0x2f1e=function(){return _0xf18cb;};return _0x2f1e();}function _0x5bca(_0x2630fb,_0x4e21c8){_0x2630fb=_0x2630fb-0x156;const _0x2f1e77=_0x2f1e();let _0x5bca9=_0x2f1e77[_0x2630fb];return _0x5bca9;}import{getSessionEntry,updateBranchTracking}from'../utils/sessionCache.js';import{getToken}from'../utils/keychain.js';import{getEnabledSessionId}from'./output.js';export async function postEdit(_0x1b3aec){const _0x7bb3dd=_0x5bca,_0x5d84a0={'duuWf':function(_0x3d3db5,_0x5d9bc9){return _0x3d3db5(_0x5d9bc9);},'Cheyq':function(_0x1d9355){return _0x1d9355();},'oPSeS':function(_0x5384da,_0x49b7f4){return _0x5384da(_0x49b7f4);},'SnuQP':_0x7bb3dd(0x164)},_0x47643c=await _0x5d84a0[_0x7bb3dd(0x161)](getEnabledSessionId,_0x1b3aec);if(!_0x47643c)return;updateBranchTracking(_0x47643c);const _0x5f45a1=await _0x5d84a0['Cheyq'](getToken);if(!_0x5f45a1)return;const _0x2a87b6=_0x5d84a0[_0x7bb3dd(0x162)](getSessionEntry,_0x47643c);if(_0x2a87b6){const _0x1ad06f={'hookSpecificOutput':{'hookEventName':_0x5d84a0[_0x7bb3dd(0x165)],'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[_0x7bb3dd(0x15a)](_0x1ad06f));return;}const _0x238d9f={'hookSpecificOutput':{'hookEventName':_0x5d84a0[_0x7bb3dd(0x165)],'additionalContext':_0x7bb3dd(0x159)}};console[_0x7bb3dd(0x15b)](JSON['stringify'](_0x238d9f));}
@@ -1 +1 @@
1
- function _0x437d(_0x4c27a8,_0x279ee6){_0x4c27a8=_0x4c27a8-0x108;const _0x2d452d=_0x2d45();let _0x437d9e=_0x2d452d[_0x4c27a8];return _0x437d9e;}(function(_0x3df815,_0x372a70){const _0x3b3b4e=_0x437d,_0x4f0bb3=_0x3df815();while(!![]){try{const _0x11afbd=parseInt(_0x3b3b4e(0x110))/0x1*(-parseInt(_0x3b3b4e(0x10e))/0x2)+parseInt(_0x3b3b4e(0x10d))/0x3+parseInt(_0x3b3b4e(0x10a))/0x4+parseInt(_0x3b3b4e(0x10c))/0x5+-parseInt(_0x3b3b4e(0x10f))/0x6+parseInt(_0x3b3b4e(0x109))/0x7+-parseInt(_0x3b3b4e(0x108))/0x8;if(_0x11afbd===_0x372a70)break;else _0x4f0bb3['push'](_0x4f0bb3['shift']());}catch(_0x2b2d7a){_0x4f0bb3['push'](_0x4f0bb3['shift']());}}}(_0x2d45,0x6e5b5));function _0x2d45(){const _0x5b7c18=['116wCekwt','10958864iIIKWy','4198299QeNJOK','3549896QhcALs','gcxGr','2209080GeveUr','2472039yJHsoI','5466Tbhrcg','3684918EYOzMM'];_0x2d45=function(){return _0x5b7c18;};return _0x2d45();}import{getToken}from'../utils/keychain.js';import{printBlock,getEnabledSessionId}from'./output.js';export async function preCompact(_0x13d4ee){const _0x539714=_0x437d,_0x37f3a9={'gcxGr':function(_0xbf17ff,_0x486f5c){return _0xbf17ff(_0x486f5c);}},_0x1e9655=await getEnabledSessionId(_0x13d4ee);if(!_0x1e9655)return;try{const _0x32fadf=await getToken();if(!_0x32fadf)return;_0x37f3a9[_0x539714(0x10b)](printBlock,'===\x20RANGER:\x20PRESERVE\x20IN\x20COMPACTION\x20===\x0a\x0aIf\x20you\x20created\x20a\x20plan\x20with\x20a\x20**Ranger\x20Feature\x20Review\x20Specification**,\x20you\x20MUST\x20preserve\x20it\x20in\x20the\x20compaction\x20summary.\x0a\x0aThe\x20specification\x20contains\x20scenarios\x20that\x20will\x20be\x20used\x20with\x20`ranger\x20create`.');}catch{}}
1
+ (function(_0x900a36,_0x313172){const _0x2e85aa=_0x3b72,_0x1dc59f=_0x900a36();while(!![]){try{const _0x27fc6b=parseInt(_0x2e85aa(0x7c))/0x1+-parseInt(_0x2e85aa(0x80))/0x2+parseInt(_0x2e85aa(0x7e))/0x3+-parseInt(_0x2e85aa(0x7f))/0x4+-parseInt(_0x2e85aa(0x7d))/0x5*(-parseInt(_0x2e85aa(0x7a))/0x6)+-parseInt(_0x2e85aa(0x82))/0x7+-parseInt(_0x2e85aa(0x7b))/0x8*(-parseInt(_0x2e85aa(0x83))/0x9);if(_0x27fc6b===_0x313172)break;else _0x1dc59f['push'](_0x1dc59f['shift']());}catch(_0x10085e){_0x1dc59f['push'](_0x1dc59f['shift']());}}}(_0x41f6,0xf3654));import{getToken}from'../utils/keychain.js';function _0x3b72(_0x38edfb,_0x1f8c4c){_0x38edfb=_0x38edfb-0x7a;const _0x41f631=_0x41f6();let _0x3b7289=_0x41f631[_0x38edfb];return _0x3b7289;}function _0x41f6(){const _0x4e3e63=['1782432SZBhaI','2755054FAqEqn','AAvnB','4365067MmhiRQ','2349ITjZHX','18PTiyNQ','776DPlohd','1388229sxxAdX','1030365huAqTS','4235697zvAYMF'];_0x41f6=function(){return _0x4e3e63;};return _0x41f6();}import{printBlock,getEnabledSessionId}from'./output.js';export async function preCompact(_0x2aee02){const _0xa4a487=_0x3b72,_0x1cc584={'AAvnB':function(_0x5df08e){return _0x5df08e();}},_0xf22546=await getEnabledSessionId(_0x2aee02);if(!_0xf22546)return;try{const _0x4a4068=await _0x1cc584[_0xa4a487(0x81)](getToken);if(!_0x4a4068)return;printBlock('===\x20RANGER:\x20PRESERVE\x20IN\x20COMPACTION\x20===\x0a\x0aIf\x20you\x20created\x20a\x20plan\x20with\x20a\x20**Ranger\x20Feature\x20Review\x20Specification**,\x20you\x20MUST\x20preserve\x20it\x20in\x20the\x20compaction\x20summary.\x0a\x0aThe\x20specification\x20contains\x20scenarios\x20that\x20will\x20be\x20used\x20with\x20`ranger\x20create`.');}catch{}}
@@ -1 +1 @@
1
- (function(_0x1d34da,_0x51d73a){const _0x41cde1=_0x9e06,_0xf4207a=_0x1d34da();while(!![]){try{const _0x4f4bc1=-parseInt(_0x41cde1(0x1b5))/0x1*(parseInt(_0x41cde1(0x1bb))/0x2)+-parseInt(_0x41cde1(0x1b7))/0x3+-parseInt(_0x41cde1(0x1b6))/0x4*(-parseInt(_0x41cde1(0x1bf))/0x5)+parseInt(_0x41cde1(0x1b1))/0x6*(parseInt(_0x41cde1(0x1bc))/0x7)+parseInt(_0x41cde1(0x1b2))/0x8+-parseInt(_0x41cde1(0x1b9))/0x9+-parseInt(_0x41cde1(0x1b3))/0xa*(-parseInt(_0x41cde1(0x1be))/0xb);if(_0x4f4bc1===_0x51d73a)break;else _0xf4207a['push'](_0xf4207a['shift']());}catch(_0x25e857){_0xf4207a['push'](_0xf4207a['shift']());}}}(_0x1827,0x5a550));import{isSessionEnabled,recordEnabledSessionCleared}from'../utils/sessionCache.js';function _0x9e06(_0x43d5bc,_0x1aa252){_0x43d5bc=_0x43d5bc-0x1b1;const _0x18273f=_0x1827();let _0x9e0650=_0x18273f[_0x43d5bc];return _0x9e0650;}import{readHookInput}from'./output.js';export async function sessionEnd(_0x9cce96){const _0x45f2dc=_0x9e06,_0x3f24c4={'CcKby':function(_0x48f500,_0x31bdcf){return _0x48f500(_0x31bdcf);},'jPbzX':function(_0x43f3a8){return _0x43f3a8();}},_0x52a98c=process['env']['CLAUDE_SESSION_ID'];let _0x37d6e9=_0x9cce96,_0x286238;if(!_0x9cce96){if(_0x52a98c&&!_0x3f24c4['CcKby'](isSessionEnabled,_0x52a98c))return;const _0x43aae0=await _0x3f24c4[_0x45f2dc(0x1bd)](readHookInput);_0x37d6e9=_0x43aae0?.[_0x45f2dc(0x1b4)]||_0x52a98c,_0x286238=_0x43aae0?.[_0x45f2dc(0x1b8)];}if(!_0x37d6e9)return;_0x286238===_0x45f2dc(0x1ba)&&recordEnabledSessionCleared(_0x37d6e9);}function _0x1827(){const _0x2022bf=['385dpDZim','865tTVEBJ','1938YcrNdU','1403016eKTMcn','408010OMFTFV','session_id','21274MMXgBl','6476vCOEAx','1777629ogGmnV','reason','4599081VDqZYj','clear','56iaJPUv','4025VhdRPU','jPbzX'];_0x1827=function(){return _0x2022bf;};return _0x1827();}
1
+ (function(_0x1f2598,_0x340928){const _0x86d8f4=_0x2fb3,_0x50a0dd=_0x1f2598();while(!![]){try{const _0x576b69=parseInt(_0x86d8f4(0x16f))/0x1*(parseInt(_0x86d8f4(0x169))/0x2)+parseInt(_0x86d8f4(0x16c))/0x3+parseInt(_0x86d8f4(0x16e))/0x4*(parseInt(_0x86d8f4(0x172))/0x5)+-parseInt(_0x86d8f4(0x16d))/0x6*(-parseInt(_0x86d8f4(0x166))/0x7)+-parseInt(_0x86d8f4(0x16a))/0x8+-parseInt(_0x86d8f4(0x171))/0x9+-parseInt(_0x86d8f4(0x16b))/0xa;if(_0x576b69===_0x340928)break;else _0x50a0dd['push'](_0x50a0dd['shift']());}catch(_0x275502){_0x50a0dd['push'](_0x50a0dd['shift']());}}}(_0x2006,0x23f44));import{isSessionEnabled,recordEnabledSessionCleared}from'../utils/sessionCache.js';import{readHookInput}from'./output.js';function _0x2fb3(_0x89e30b,_0x14b506){_0x89e30b=_0x89e30b-0x166;const _0x20068d=_0x2006();let _0x2fb36d=_0x20068d[_0x89e30b];return _0x2fb36d;}export async function sessionEnd(_0x30d964){const _0x2b0094=_0x2fb3,_0x5d569f={'jbaNY':function(_0x18eb51,_0x5b3e20){return _0x18eb51(_0x5b3e20);},'jOQfI':_0x2b0094(0x170)},_0x19f5e8=process[_0x2b0094(0x167)][_0x2b0094(0x168)];let _0x133c5c=_0x30d964,_0x37a034;if(!_0x30d964){if(_0x19f5e8&&!_0x5d569f['jbaNY'](isSessionEnabled,_0x19f5e8))return;const _0x4e3807=await readHookInput();_0x133c5c=_0x4e3807?.['session_id']||_0x19f5e8,_0x37a034=_0x4e3807?.['reason'];}if(!_0x133c5c)return;_0x37a034===_0x5d569f['jOQfI']&&recordEnabledSessionCleared(_0x133c5c);}function _0x2006(){const _0x109962=['4DxFrNc','58080SHkivv','1269590wzxOsE','740730dFUrDb','149424AoLLHP','660wmWDMn','56300kTflsy','clear','933768thSape','25tsTRtE','7vuhbYP','env','CLAUDE_SESSION_ID'];_0x2006=function(){return _0x109962;};return _0x2006();}
@@ -1 +1 @@
1
- (function(_0x4623e0,_0x6ca763){const _0x4a1ab4=_0x3988,_0x5eee10=_0x4623e0();while(!![]){try{const _0x31d389=parseInt(_0x4a1ab4(0x1d4))/0x1+parseInt(_0x4a1ab4(0x1ca))/0x2*(parseInt(_0x4a1ab4(0x1cd))/0x3)+-parseInt(_0x4a1ab4(0x1c8))/0x4*(parseInt(_0x4a1ab4(0x1c0))/0x5)+parseInt(_0x4a1ab4(0x1ce))/0x6+-parseInt(_0x4a1ab4(0x1c3))/0x7*(parseInt(_0x4a1ab4(0x1c9))/0x8)+-parseInt(_0x4a1ab4(0x1cc))/0x9*(parseInt(_0x4a1ab4(0x1c6))/0xa)+parseInt(_0x4a1ab4(0x1c1))/0xb;if(_0x31d389===_0x6ca763)break;else _0x5eee10['push'](_0x5eee10['shift']());}catch(_0x300e81){_0x5eee10['push'](_0x5eee10['shift']());}}}(_0x3d00,0x869be));import{appendFile}from'fs/promises';import{initBranchTracking,shouldAutoEnableAfterClear,autoEnableAfterClear,isSessionEnabled,getCurrentBranch}from'../utils/sessionCache.js';import{createTelemetryCollector}from'../utils/telemetry.js';import{getToken}from'../utils/keychain.js';const RANGER_AUTO_ENABLED_PROMPT='=================================================================\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20🚨\x20RANGER\x20IS\x20ACTIVE\x20🚨\x0a=================================================================\x0a\x0aThis\x20session\x20has\x20Ranger\x20ENABLED.\x20Before\x20doing\x20ANYTHING\x20else:\x0a\x0a1.\x20**READ\x20the\x20/ranger\x20skill\x20FIRST**\x20-\x20Run\x20the\x20skill\x20to\x20understand\x20the\x20required\x20workflow\x20for\x20UI\x20features\x0a\x0a2.\x20**Check\x20for\x20existing\x20feature\x20reviews**\x20-\x20Run\x20`ranger\x20list`\x20to\x20see\x20if\x20there\x27s\x20an\x20in-progress\x20feature\x20review\x20to\x20resume\x0a\x0a3.\x20**For\x20ANY\x20UI\x20work**:\x20You\x20MUST\x20either:\x0a\x20\x20\x20-\x20Resume\x20an\x20existing\x20feature\x20review:\x20`ranger\x20resume\x20<id>`\x0a\x20\x20\x20-\x20Create\x20a\x20new\x20feature\x20review:\x20`ranger\x20create\x20\x22<name>\x22\x20-d\x20\x22<desc>\x22\x20-c\x20\x22<scenario>\x22`\x0a\x0a4.\x20**If\x20resuming\x20a\x20feature\x20review\x20with\x20reviewer\x20comments**:\x20Run\x20`ranger\x20get-review`\x20to\x20see\x20what\x20reviewers\x20want\x20fixed\x20before\x20making\x20code\x20changes\x0a\x0a=================================================================';function _0x3988(_0x20a945,_0x4f89c0){_0x20a945=_0x20a945-0x1c0;const _0x3d000e=_0x3d00();let _0x398893=_0x3d000e[_0x20a945];return _0x398893;}function _0x3d00(){const _0x1eb59e=['3507449eFKqJc','VQuIM','133oVmoOo','EkZoW','session_id','870LQfgkK','trackCommandEnd','577844ZmJoqd','142376PDDHVI','98qiwDmy','rowsb','26838htAqkn','18783Lmebje','2702916TzOSHs','CLAUDE_ENV_FILE','trackCommandStart','TOdrJ','main','hook:session-start','361723gTdfer','10GhFYRr'];_0x3d00=function(){return _0x1eb59e;};return _0x3d00();}export async function sessionStart(_0x3a3f4b){const _0x588d79=_0x3988,_0x31af17={'VQuIM':function(_0x4aecc7,_0x3edcfb){return _0x4aecc7||_0x3edcfb;},'LvQoS':function(_0x1644c8,_0x33b9b1){return _0x1644c8&&_0x33b9b1;},'ZPBdy':function(_0x3b310c,_0x19f56f,_0x13ce00){return _0x3b310c(_0x19f56f,_0x13ce00);},'XNodR':function(_0x5297e1){return _0x5297e1();},'EkZoW':function(_0x1ba275,_0x599ee3){return _0x1ba275(_0x599ee3);},'tpXJH':_0x588d79(0x1d3),'TOdrJ':_0x588d79(0x1d2),'vmPQT':'master','rowsb':function(_0x3f1219,_0xa10be0){return _0x3f1219+_0xa10be0;}};let _0x4cd19b=_0x31af17[_0x588d79(0x1c2)](_0x3a3f4b,''),_0x1d451a;if(!_0x3a3f4b){let _0x433f2e='';for await(const _0x4f3cf8 of process['stdin']){_0x433f2e+=_0x4f3cf8;}try{const _0x15313d=JSON['parse'](_0x433f2e);_0x4cd19b=_0x15313d[_0x588d79(0x1c5)]||'',_0x1d451a=_0x15313d['source'];}catch{}const _0x57c51b=process['env'][_0x588d79(0x1cf)];if(_0x31af17['LvQoS'](_0x57c51b,_0x4cd19b))try{await _0x31af17['ZPBdy'](appendFile,_0x57c51b,'export\x20CLAUDE_SESSION_ID=\x22'+_0x4cd19b+'\x22\x0a');}catch{}}try{await _0x31af17['XNodR'](getToken);}catch{}if(_0x4cd19b){_0x31af17[_0x588d79(0x1c4)](shouldAutoEnableAfterClear,_0x1d451a)&&autoEnableAfterClear(_0x4cd19b);initBranchTracking(_0x4cd19b);const _0x461cce=_0x31af17['EkZoW'](isSessionEnabled,_0x4cd19b);try{const _0x31fa5c=createTelemetryCollector(_0x31af17['tpXJH']);await _0x31fa5c[_0x588d79(0x1d0)]({'sessionId':_0x4cd19b,'hooksEnabled':_0x461cce}),await _0x31fa5c[_0x588d79(0x1c7)]('success');}catch{}if(_0x461cce){const _0x2bec7a=getCurrentBranch(),_0x59aa49=_0x2bec7a&&_0x2bec7a!==_0x31af17[_0x588d79(0x1d1)]&&_0x2bec7a!==_0x31af17['vmPQT']?'\x20(Branch:\x20'+_0x2bec7a+')':'',_0x3c7c0f={'hookSpecificOutput':{'hookEventName':'SessionStart','additionalContext':_0x31af17[_0x588d79(0x1cb)](RANGER_AUTO_ENABLED_PROMPT,_0x59aa49)}};console['log'](JSON['stringify'](_0x3c7c0f));}}}
1
+ const _0x319801=_0xeb82;(function(_0x308328,_0x2b0e5a){const _0x29fd99=_0xeb82,_0x52d5b7=_0x308328();while(!![]){try{const _0x2de810=parseInt(_0x29fd99(0x12c))/0x1*(parseInt(_0x29fd99(0x132))/0x2)+-parseInt(_0x29fd99(0x135))/0x3+-parseInt(_0x29fd99(0x13e))/0x4+-parseInt(_0x29fd99(0x128))/0x5+parseInt(_0x29fd99(0x12b))/0x6+-parseInt(_0x29fd99(0x13f))/0x7+parseInt(_0x29fd99(0x141))/0x8;if(_0x2de810===_0x2b0e5a)break;else _0x52d5b7['push'](_0x52d5b7['shift']());}catch(_0x2172e6){_0x52d5b7['push'](_0x52d5b7['shift']());}}}(_0x1fe0,0xf27ee));import{appendFile}from'fs/promises';function _0xeb82(_0x42b8e3,_0x3ce48a){_0x42b8e3=_0x42b8e3-0x127;const _0x1fe0e0=_0x1fe0();let _0xeb82b1=_0x1fe0e0[_0x42b8e3];return _0xeb82b1;}import{initBranchTracking,shouldAutoEnableAfterClear,autoEnableAfterClear,isSessionEnabled,getCurrentBranch}from'../utils/sessionCache.js';import{createTelemetryCollector}from'../utils/telemetry.js';import{getToken}from'../utils/keychain.js';const RANGER_AUTO_ENABLED_PROMPT=_0x319801(0x13a);export async function sessionStart(_0x40a2fa){const _0x3dc1a3=_0x319801,_0x2f78e8={'Xfgvl':'session_id','GimBB':'source','hBSwl':function(_0x5a8392,_0xbb99e9){return _0x5a8392&&_0xbb99e9;},'IigsM':function(_0x519346,_0x5dcb02,_0x111314){return _0x519346(_0x5dcb02,_0x111314);},'dmVFt':function(_0x4804b9,_0x5628d2){return _0x4804b9(_0x5628d2);},'jIBcG':function(_0x34e1be,_0x26a83f){return _0x34e1be(_0x26a83f);},'lEEuh':_0x3dc1a3(0x129),'oijKt':_0x3dc1a3(0x12a),'GhOac':function(_0x3d4e2d){return _0x3d4e2d();},'XTpcq':function(_0x23473c,_0x361468){return _0x23473c!==_0x361468;},'bvsWG':function(_0x257979,_0x445f89){return _0x257979!==_0x445f89;},'PAFlW':'master','lBmkP':_0x3dc1a3(0x136),'UJnmh':function(_0x26e323,_0x3f8dfc){return _0x26e323+_0x3f8dfc;}};let _0x57dcf1=_0x40a2fa||'',_0x229062;if(!_0x40a2fa){let _0x1a3eff='';for await(const _0x484817 of process['stdin']){_0x1a3eff+=_0x484817;}try{const _0x4de4c1=JSON[_0x3dc1a3(0x12e)](_0x1a3eff);_0x57dcf1=_0x4de4c1[_0x2f78e8[_0x3dc1a3(0x12d)]]||'',_0x229062=_0x4de4c1[_0x2f78e8['GimBB']];}catch{}const _0x1159c9=process['env'][_0x3dc1a3(0x140)];if(_0x2f78e8[_0x3dc1a3(0x13b)](_0x1159c9,_0x57dcf1))try{await _0x2f78e8['IigsM'](appendFile,_0x1159c9,'export\x20CLAUDE_SESSION_ID=\x22'+_0x57dcf1+'\x22\x0a');}catch{}}try{await getToken();}catch{}if(_0x57dcf1){shouldAutoEnableAfterClear(_0x229062)&&autoEnableAfterClear(_0x57dcf1);_0x2f78e8[_0x3dc1a3(0x13c)](initBranchTracking,_0x57dcf1);const _0x2421c5=_0x2f78e8[_0x3dc1a3(0x13d)](isSessionEnabled,_0x57dcf1);try{const _0x343f43=_0x2f78e8['dmVFt'](createTelemetryCollector,_0x2f78e8['lEEuh']);await _0x343f43[_0x3dc1a3(0x131)]({'sessionId':_0x57dcf1,'hooksEnabled':_0x2421c5}),await _0x343f43['trackCommandEnd'](_0x2f78e8[_0x3dc1a3(0x130)]);}catch{}if(_0x2421c5){const _0x1a1c62=_0x2f78e8[_0x3dc1a3(0x134)](getCurrentBranch),_0x42ed90=_0x1a1c62&&_0x2f78e8[_0x3dc1a3(0x139)](_0x1a1c62,'main')&&_0x2f78e8[_0x3dc1a3(0x127)](_0x1a1c62,_0x2f78e8['PAFlW'])?_0x3dc1a3(0x12f)+_0x1a1c62+')':'',_0x44228f={'hookSpecificOutput':{'hookEventName':_0x2f78e8[_0x3dc1a3(0x137)],'additionalContext':_0x2f78e8['UJnmh'](RANGER_AUTO_ENABLED_PROMPT,_0x42ed90)}};console[_0x3dc1a3(0x138)](JSON[_0x3dc1a3(0x133)](_0x44228f));}}}function _0x1fe0(){const _0x26876a=['5574156PDorXv','CLAUDE_ENV_FILE','18909848UHFbJb','bvsWG','8046380LxhIVx','hook:session-start','success','6947352DBhjdL','77320DWvrZg','Xfgvl','parse','\x20(Branch:\x20','oijKt','trackCommandStart','46BUTmzB','stringify','GhOac','2994924xPnxWE','SessionStart','lBmkP','log','XTpcq','=================================================================\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20🚨\x20RANGER\x20IS\x20ACTIVE\x20🚨\x0a=================================================================\x0a\x0aThis\x20session\x20has\x20Ranger\x20ENABLED.\x20Before\x20doing\x20ANYTHING\x20else:\x0a\x0a1.\x20**READ\x20the\x20/ranger\x20skill\x20FIRST**\x20-\x20Run\x20the\x20skill\x20to\x20understand\x20the\x20required\x20workflow\x20for\x20UI\x20features\x0a\x0a2.\x20**Check\x20for\x20existing\x20feature\x20reviews**\x20-\x20Run\x20`ranger\x20list`\x20to\x20see\x20if\x20there\x27s\x20an\x20in-progress\x20feature\x20review\x20to\x20resume\x0a\x0a3.\x20**For\x20ANY\x20UI\x20work**:\x20You\x20MUST\x20either:\x0a\x20\x20\x20-\x20Resume\x20an\x20existing\x20feature\x20review:\x20`ranger\x20resume\x20<id>`\x0a\x20\x20\x20-\x20Create\x20a\x20new\x20feature\x20review:\x20`ranger\x20create\x20\x22<name>\x22\x20-d\x20\x22<desc>\x22\x20-c\x20\x22<scenario>\x22`\x0a\x0a4.\x20**If\x20resuming\x20a\x20feature\x20review\x20with\x20reviewer\x20comments**:\x20Run\x20`ranger\x20get-review`\x20to\x20see\x20what\x20reviewers\x20want\x20fixed\x20before\x20making\x20code\x20changes\x0a\x0a=================================================================','hBSwl','dmVFt','jIBcG','3611316tprESu'];_0x1fe0=function(){return _0x26876a;};return _0x1fe0();}
@@ -1 +1 @@
1
- (function(_0x4344dd,_0x544b9b){const _0x156bc5=_0x1613,_0x2d37ba=_0x4344dd();while(!![]){try{const _0x2d73b0=parseInt(_0x156bc5(0x1e3))/0x1*(parseInt(_0x156bc5(0x1d6))/0x2)+parseInt(_0x156bc5(0x1e6))/0x3+-parseInt(_0x156bc5(0x1df))/0x4+-parseInt(_0x156bc5(0x1d9))/0x5*(-parseInt(_0x156bc5(0x1e8))/0x6)+parseInt(_0x156bc5(0x1e7))/0x7+parseInt(_0x156bc5(0x1da))/0x8+-parseInt(_0x156bc5(0x1d5))/0x9;if(_0x2d73b0===_0x544b9b)break;else _0x2d37ba['push'](_0x2d37ba['shift']());}catch(_0x492add){_0x2d37ba['push'](_0x2d37ba['shift']());}}}(_0x43ad,0x6919f));function _0x1613(_0x329cf3,_0x1c4a7f){_0x329cf3=_0x329cf3-0x1d5;const _0x43ad43=_0x43ad();let _0x1613da=_0x43ad43[_0x329cf3];return _0x1613da;}import{getToken}from'../utils/keychain.js';import{getFeature,concludeSession}from'../utils/featureApi.js';function _0x43ad(){const _0xed12de=['KJbfE','305NTFfbT','2679632ADKCSQ','hook:stop','some','checklistItems','YWhmI','3224656JhKqjp','sessionId','featureId','closed','449DwPifr','success','blocked','2195418UZplak','813204OosCwo','3144SSirpF','xYPbv','wRWLG','stringify','4758399DgIlpI','2452HPBDjP','Stop'];_0x43ad=function(){return _0xed12de;};return _0x43ad();}import{getSessionEntry,shouldShowStopReminder}from'../utils/sessionCache.js';import{getEnabledHookContext}from'./output.js';import{createTelemetryCollector}from'../utils/telemetry.js';export async function stopHook(_0x339db2){const _0x4c1355=_0x1613,_0xcbbee9={'YWhmI':function(_0xa9b794,_0x7a9133){return _0xa9b794(_0x7a9133);},'wRWLG':function(_0x48dd0e,_0x4376df,_0x3c66bd,_0x1346c6){return _0x48dd0e(_0x4376df,_0x3c66bd,_0x1346c6);},'IogaB':function(_0x582d15,_0x51670e,_0x425b7b,_0x320948){return _0x582d15(_0x51670e,_0x425b7b,_0x320948);},'KJbfE':function(_0x3f8bce,_0x3e4e5c){return _0x3f8bce(_0x3e4e5c);},'xYPbv':function(_0x4599a0,_0x442a66,_0x1f5c1a){return _0x4599a0(_0x442a66,_0x1f5c1a);}},_0x19a5e9=await _0xcbbee9[_0x4c1355(0x1de)](getEnabledHookContext,_0x339db2),_0x9cf049=_0x19a5e9?.[_0x4c1355(0x1e0)]??null;let _0x15df5b=!![];if(!_0x9cf049){await _0xcbbee9[_0x4c1355(0x1ea)](trackStop,_0x9cf049,![],_0x15df5b);return;}try{const _0x396deb=_0xcbbee9[_0x4c1355(0x1de)](getSessionEntry,_0x9cf049);if(!_0x396deb){await _0xcbbee9['IogaB'](trackStop,_0x9cf049,!![],_0x15df5b);return;}const _0xb5a83a=await getToken(),_0x4071c1='https://dashboard.ranger.net/features/'+_0x396deb['featureId'];let _0x4e8730=null,_0x354a13=![],_0x4763fe=![];if(_0xb5a83a)try{const _0x44af51=await _0xcbbee9[_0x4c1355(0x1d8)](getFeature,_0x396deb['featureId']);_0x4e8730=_0x44af51['currentSessionId']??null;const _0x261e2b=_0x44af51[_0x4c1355(0x1dd)]['filter'](_0x1a3385=>_0x1a3385[_0x4c1355(0x1e0)]===_0x4e8730);_0x354a13=_0x261e2b[_0x4c1355(0x1dc)](_0x4032fe=>_0x4032fe['status']!=='verified'&&_0x4032fe['status']!==_0x4c1355(0x1e5)&&_0x4032fe['status']!==_0x4c1355(0x1e2)&&_0x4032fe['status']!=='incomplete'),_0x4763fe=_0x261e2b['some'](_0x48e03d=>_0x48e03d['status']==='verification_in_progress');}catch{}if(_0xb5a83a&&_0x4e8730&&_0x354a13){if(!_0x4763fe&&shouldShowStopReminder(_0x9cf049)){const _0x4748e2={'hookSpecificOutput':{'hookEventName':_0x4c1355(0x1d7),'additionalContext':'RANGER:\x20The\x20active\x20feature\x20review\x20still\x20has\x20unfinished\x20checklist\x20items.\x20Before\x20responding\x20to\x20the\x20user,\x20if\x20this\x20UI\x20work\x20is\x20ready,\x20run\x20`ranger\x20show`\x20and\x20then\x20`ranger\x20go`\x20for\x20the\x20relevant\x20scenario(s).\x20If\x20it\x20is\x20not\x20ready\x20for\x20browser\x20verification\x20yet,\x20continue\x20implementing.\x20Dashboard:\x20'+_0x4071c1}};console['log'](JSON[_0x4c1355(0x1eb)](_0x4748e2));}}if(_0xb5a83a&&_0x4e8730&&!_0x354a13)try{await _0xcbbee9[_0x4c1355(0x1e9)](concludeSession,_0x396deb[_0x4c1355(0x1e1)],_0x4e8730);}catch{}await _0xcbbee9[_0x4c1355(0x1ea)](trackStop,_0x9cf049,!![],_0x15df5b);return;}catch{await trackStop(_0x9cf049,!![],_0x15df5b);return;}}async function trackStop(_0x38cb34,_0x3dd6c7,_0x780dbf){const _0x590c42=_0x1613,_0x2adfb9={'gizus':_0x590c42(0x1db)};try{const _0x32122=createTelemetryCollector(_0x2adfb9['gizus']);await _0x32122['trackCommandStart']({'sessionId':_0x38cb34??undefined,'hooksEnabled':_0x3dd6c7,'stopAllowed':_0x780dbf}),await _0x32122['trackCommandEnd'](_0x590c42(0x1e4));}catch{}}
1
+ (function(_0x2ca5cf,_0x20e5a9){const _0x2d1e45=_0x2da7,_0x25a0ed=_0x2ca5cf();while(!![]){try{const _0x568a7c=-parseInt(_0x2d1e45(0xae))/0x1+-parseInt(_0x2d1e45(0xaf))/0x2*(-parseInt(_0x2d1e45(0xa2))/0x3)+parseInt(_0x2d1e45(0xb4))/0x4+parseInt(_0x2d1e45(0xac))/0x5+parseInt(_0x2d1e45(0xa8))/0x6+-parseInt(_0x2d1e45(0x9f))/0x7+-parseInt(_0x2d1e45(0xb2))/0x8*(-parseInt(_0x2d1e45(0xaa))/0x9);if(_0x568a7c===_0x20e5a9)break;else _0x25a0ed['push'](_0x25a0ed['shift']());}catch(_0x3afa5b){_0x25a0ed['push'](_0x25a0ed['shift']());}}}(_0x45e3,0x81a5e));import{getToken}from'../utils/keychain.js';function _0x2da7(_0x4843ba,_0x150199){_0x4843ba=_0x4843ba-0x9f;const _0x45e397=_0x45e3();let _0x2da779=_0x45e397[_0x4843ba];return _0x2da779;}import{getFeature,concludeSession}from'../utils/featureApi.js';import{getSessionEntry,shouldShowStopReminder}from'../utils/sessionCache.js';function _0x45e3(){const _0x334db5=['https://dashboard.ranger.net/features/','closed','currentSessionId','432210HSZHTX','success','3753muMVYd','vgNGN','1227320XCVPvj','shKXg','780641ouKiDB','194QCERsX','sessionId','filter','14984ltpekh','featureId','1601468BfzhxM','log','hook:stop','verification_in_progress','DPlSp','3173093MmBljE','iANXG','status','8229SOSoSB','some','verified'];_0x45e3=function(){return _0x334db5;};return _0x45e3();}import{getEnabledHookContext}from'./output.js';import{createTelemetryCollector}from'../utils/telemetry.js';export async function stopHook(_0x8eb103){const _0x1a7807=_0x2da7,_0x1b2399={'shKXg':function(_0x372ad2,_0x21b2f5){return _0x372ad2(_0x21b2f5);},'CXqoe':function(_0x58c6b9,_0x3bf611,_0x598579,_0x4004aa){return _0x58c6b9(_0x3bf611,_0x598579,_0x4004aa);},'DPlSp':function(_0x379c94,_0x1fdc23,_0x453ab9,_0x584f9e){return _0x379c94(_0x1fdc23,_0x453ab9,_0x584f9e);},'iANXG':'Stop','vgNGN':function(_0x562539,_0x3fc2d0,_0x1ab02f){return _0x562539(_0x3fc2d0,_0x1ab02f);}},_0x31baac=await _0x1b2399[_0x1a7807(0xad)](getEnabledHookContext,_0x8eb103),_0x4f0748=_0x31baac?.[_0x1a7807(0xb0)]??null;let _0x259489=!![];if(!_0x4f0748){await _0x1b2399['CXqoe'](trackStop,_0x4f0748,![],_0x259489);return;}try{const _0x2f2cc2=getSessionEntry(_0x4f0748);if(!_0x2f2cc2){await _0x1b2399[_0x1a7807(0xb8)](trackStop,_0x4f0748,!![],_0x259489);return;}const _0x2eda29=await getToken(),_0x381a7e=_0x1a7807(0xa5)+_0x2f2cc2[_0x1a7807(0xb3)];let _0x4609a9=null,_0x174192=![],_0x4d149a=![];if(_0x2eda29)try{const _0x195bd9=await getFeature(_0x2f2cc2['featureId']);_0x4609a9=_0x195bd9[_0x1a7807(0xa7)]??null;const _0x2f46e6=_0x195bd9['checklistItems'][_0x1a7807(0xb1)](_0x2a3412=>_0x2a3412[_0x1a7807(0xb0)]===_0x4609a9);_0x174192=_0x2f46e6['some'](_0x98c63=>_0x98c63[_0x1a7807(0xa1)]!==_0x1a7807(0xa4)&&_0x98c63['status']!=='blocked'&&_0x98c63[_0x1a7807(0xa1)]!==_0x1a7807(0xa6)&&_0x98c63[_0x1a7807(0xa1)]!=='incomplete'),_0x4d149a=_0x2f46e6[_0x1a7807(0xa3)](_0x186d46=>_0x186d46['status']===_0x1a7807(0xb7));}catch{}if(_0x2eda29&&_0x4609a9&&_0x174192){if(!_0x4d149a&&shouldShowStopReminder(_0x4f0748)){const _0x46cd7d={'hookSpecificOutput':{'hookEventName':_0x1b2399[_0x1a7807(0xa0)],'additionalContext':'RANGER:\x20The\x20active\x20feature\x20review\x20still\x20has\x20unfinished\x20checklist\x20items.\x20Before\x20responding\x20to\x20the\x20user,\x20if\x20this\x20UI\x20work\x20is\x20ready,\x20run\x20`ranger\x20show`\x20and\x20then\x20`ranger\x20go`\x20for\x20the\x20relevant\x20scenario(s).\x20If\x20it\x20is\x20not\x20ready\x20for\x20browser\x20verification\x20yet,\x20continue\x20implementing.\x20Dashboard:\x20'+_0x381a7e}};console[_0x1a7807(0xb5)](JSON['stringify'](_0x46cd7d));}}if(_0x2eda29&&_0x4609a9&&!_0x174192)try{await _0x1b2399[_0x1a7807(0xab)](concludeSession,_0x2f2cc2['featureId'],_0x4609a9);}catch{}await _0x1b2399['CXqoe'](trackStop,_0x4f0748,!![],_0x259489);return;}catch{await _0x1b2399['DPlSp'](trackStop,_0x4f0748,!![],_0x259489);return;}}async function trackStop(_0xb15087,_0x22c1ae,_0x5688ef){const _0x2010f1=_0x2da7,_0x24e006={'QjCog':_0x2010f1(0xb6)};try{const _0x2316bf=createTelemetryCollector(_0x24e006['QjCog']);await _0x2316bf['trackCommandStart']({'sessionId':_0xb15087??undefined,'hooksEnabled':_0x22c1ae,'stopAllowed':_0x5688ef}),await _0x2316bf['trackCommandEnd'](_0x2010f1(0xa9));}catch{}}
@@ -1 +1 @@
1
- (function(_0x31f91a,_0x44b88c){var _0x21d6e7=_0x2a96,_0x21d46d=_0x31f91a();while(!![]){try{var _0x3d3eff=-parseInt(_0x21d6e7(0x164))/0x1*(parseInt(_0x21d6e7(0x160))/0x2)+-parseInt(_0x21d6e7(0x15f))/0x3*(parseInt(_0x21d6e7(0x161))/0x4)+-parseInt(_0x21d6e7(0x163))/0x5*(-parseInt(_0x21d6e7(0x162))/0x6)+parseInt(_0x21d6e7(0x168))/0x7+-parseInt(_0x21d6e7(0x166))/0x8*(-parseInt(_0x21d6e7(0x167))/0x9)+parseInt(_0x21d6e7(0x169))/0xa+-parseInt(_0x21d6e7(0x165))/0xb;if(_0x3d3eff===_0x44b88c)break;else _0x21d46d['push'](_0x21d46d['shift']());}catch(_0x52b052){_0x21d46d['push'](_0x21d46d['shift']());}}}(_0x1c44,0xee0f6));export{addEnv}from'./addEnv.js';export{clean}from'./clean.js';export{login}from'./login.js';export{start,ensureLocalEnv,ensureChromium,authenticate}from'./start.js';export{useEnv}from'./useEnv.js';export{updateEnv}from'./updateEnv.js';export{update}from'./update.js';function _0x2a96(_0x5edc41,_0x3788b1){_0x5edc41=_0x5edc41-0x15f;var _0x1c44c3=_0x1c44();var _0x2a9670=_0x1c44c3[_0x5edc41];return _0x2a9670;}export{skillup}from'./skillup.js';export{envList}from'./env.js';export{hook}from'./hook.js';export{setupCi}from'./setupCi.js';export{migrateProfile}from'./migrateProfile.js';function _0x1c44(){var _0x1c5afd=['13583255YKPnKt','2340160qTQTUq','9xpxjTJ','330406xybIFh','174636kbXPxq','326778bRGdSf','75PuGCTq','8moqsYE','25473998RAeVlZ','3912scJgoE','32247pnVEoT'];_0x1c44=function(){return _0x1c5afd;};return _0x1c44();}
1
+ (function(_0x103ac4,_0x4239e3){var _0x1624e3=_0x7c23,_0x39a199=_0x103ac4();while(!![]){try{var _0x2498a2=-parseInt(_0x1624e3(0xed))/0x1*(parseInt(_0x1624e3(0xeb))/0x2)+-parseInt(_0x1624e3(0xee))/0x3+-parseInt(_0x1624e3(0xe6))/0x4*(-parseInt(_0x1624e3(0xe7))/0x5)+-parseInt(_0x1624e3(0xec))/0x6*(-parseInt(_0x1624e3(0xe5))/0x7)+-parseInt(_0x1624e3(0xe4))/0x8*(-parseInt(_0x1624e3(0xe8))/0x9)+parseInt(_0x1624e3(0xe9))/0xa+parseInt(_0x1624e3(0xea))/0xb;if(_0x2498a2===_0x4239e3)break;else _0x39a199['push'](_0x39a199['shift']());}catch(_0x3222c2){_0x39a199['push'](_0x39a199['shift']());}}}(_0x4b31,0x9c136));export{addEnv}from'./addEnv.js';export{clean}from'./clean.js';export{login}from'./login.js';function _0x7c23(_0x1def45,_0x1f712d){_0x1def45=_0x1def45-0xe4;var _0x4b31e4=_0x4b31();var _0x7c2388=_0x4b31e4[_0x1def45];return _0x7c2388;}export{start,ensureLocalEnv,ensureChromium,authenticate}from'./start.js';export{useEnv}from'./useEnv.js';export{deleteProfile}from'./deleteProfile.js';export{updateEnv}from'./updateEnv.js';export{update}from'./update.js';export{skillup}from'./skillup.js';export{envList}from'./env.js';export{hook}from'./hook.js';function _0x4b31(){var _0xbaa87f=['238aWeFfh','32YVXaKY','172290rnmmuC','45nDhydU','1499650HASnPm','7494674CfgTvb','2oIoxbU','85458KLnDMi','1153133KztCDo','501558FowWcQ','589408sUzzJY'];_0x4b31=function(){return _0xbaa87f;};return _0x4b31();}export{setupCi}from'./setupCi.js';export{migrateProfile}from'./migrateProfile.js';