@ranger-testing/ranger-cli 2.5.4-alpha.0e8b82c-9 → 2.5.4-alpha.36a12ca-10

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 (77) hide show
  1. package/build/cli.js +1 -1
  2. package/build/commands/addEnv.js +1 -1
  3. package/build/commands/authEncrypt.js +1 -1
  4. package/build/commands/clean.js +1 -1
  5. package/build/commands/config.js +1 -1
  6. package/build/commands/env.js +1 -1
  7. package/build/commands/feature.js +1 -1
  8. package/build/commands/hook.js +1 -1
  9. package/build/commands/hooks/autoPrompt.js +1 -1
  10. package/build/commands/hooks/disable.js +1 -1
  11. package/build/commands/hooks/enable.js +1 -1
  12. package/build/commands/hooks/exitPlanMode.js +1 -1
  13. package/build/commands/hooks/index.js +1 -1
  14. package/build/commands/hooks/output.js +1 -1
  15. package/build/commands/hooks/planReminder.js +1 -1
  16. package/build/commands/hooks/planStart.js +1 -1
  17. package/build/commands/hooks/postEdit.js +1 -1
  18. package/build/commands/hooks/preCompact.js +1 -1
  19. package/build/commands/hooks/sessionEnd.js +1 -1
  20. package/build/commands/hooks/sessionStart.js +1 -1
  21. package/build/commands/hooks/stopHook.js +1 -1
  22. package/build/commands/index.js +1 -1
  23. package/build/commands/login.js +1 -1
  24. package/build/commands/mcpBootstrap.js +1 -1
  25. package/build/commands/migrateProfile.js +1 -1
  26. package/build/commands/setup/claude.js +1 -1
  27. package/build/commands/setup/opencode.js +1 -1
  28. package/build/commands/setupCi.js +1 -1
  29. package/build/commands/skillup.js +1 -1
  30. package/build/commands/start.js +1 -1
  31. package/build/commands/status.js +1 -1
  32. package/build/commands/update.js +1 -1
  33. package/build/commands/updateEnv.js +1 -1
  34. package/build/commands/useEnv.js +1 -1
  35. package/build/commands/utils/activeProfile.js +1 -1
  36. package/build/commands/utils/agentEnv.js +1 -1
  37. package/build/commands/utils/browserSessionsApi.js +1 -1
  38. package/build/commands/utils/claudeConfig.js +1 -1
  39. package/build/commands/utils/claudeOverrideSettings.js +1 -1
  40. package/build/commands/utils/claudePlugin.js +1 -1
  41. package/build/commands/utils/cloudProfile.js +1 -1
  42. package/build/commands/utils/cloudProfileSession.js +1 -1
  43. package/build/commands/utils/crypto.js +1 -1
  44. package/build/commands/utils/desirePathLog.js +1 -1
  45. package/build/commands/utils/deviceAuth.js +1 -1
  46. package/build/commands/utils/environment.js +1 -1
  47. package/build/commands/utils/featureApi.js +1 -1
  48. package/build/commands/utils/fixWebmDuration.js +1 -1
  49. package/build/commands/utils/gitTracked.js +1 -1
  50. package/build/commands/utils/keychain.js +1 -1
  51. package/build/commands/utils/localAgentInstallationsApi.js +1 -1
  52. package/build/commands/utils/matchAuthEnvironment.js +1 -1
  53. package/build/commands/utils/mcpImageBase64.js +1 -1
  54. package/build/commands/utils/model.js +1 -1
  55. package/build/commands/utils/opencodeConfig.js +1 -1
  56. package/build/commands/utils/playwrightCli.js +1 -1
  57. package/build/commands/utils/profileMessages.js +1 -1
  58. package/build/commands/utils/profileSetupBanner.js +1 -1
  59. package/build/commands/utils/projectsConfig.js +1 -1
  60. package/build/commands/utils/rangerConfig.js +1 -1
  61. package/build/commands/utils/rangerRoot.js +1 -1
  62. package/build/commands/utils/resolveProfileContext.js +1 -1
  63. package/build/commands/utils/resolveProfileUrl.js +1 -1
  64. package/build/commands/utils/retry.js +1 -1
  65. package/build/commands/utils/sessionCache.js +1 -1
  66. package/build/commands/utils/settings.js +1 -1
  67. package/build/commands/utils/skillContent.js +1 -1
  68. package/build/commands/utils/skills.js +1 -1
  69. package/build/commands/utils/stitchWebmFiles.js +1 -1
  70. package/build/commands/utils/telemetry.js +1 -1
  71. package/build/commands/utils/tokenRefresh.js +1 -1
  72. package/build/commands/utils/traceSnapshotMapper.js +1 -1
  73. package/build/commands/utils/userApi.js +1 -1
  74. package/build/commands/utils/version.js +1 -1
  75. package/build/commands/verifyFeature.js +1 -1
  76. package/build/commands/verifyFeatureCli.js +1 -1
  77. package/package.json +1 -1
@@ -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 _0x48552e=_0x94bc;(function(_0x499508,_0x1e5a2b){const _0x3d9048=_0x94bc,_0x516fa7=_0x499508();while(!![]){try{const _0x2250de=parseInt(_0x3d9048(0x150))/0x1+-parseInt(_0x3d9048(0x19d))/0x2*(-parseInt(_0x3d9048(0x113))/0x3)+-parseInt(_0x3d9048(0x126))/0x4*(parseInt(_0x3d9048(0x187))/0x5)+parseInt(_0x3d9048(0x101))/0x6*(parseInt(_0x3d9048(0xe5))/0x7)+-parseInt(_0x3d9048(0x142))/0x8*(parseInt(_0x3d9048(0x13a))/0x9)+parseInt(_0x3d9048(0xcf))/0xa*(parseInt(_0x3d9048(0xd7))/0xb)+-parseInt(_0x3d9048(0xf5))/0xc;if(_0x2250de===_0x1e5a2b)break;else _0x516fa7['push'](_0x516fa7['shift']());}catch(_0x5e8ff3){_0x516fa7['push'](_0x516fa7['shift']());}}}(_0x1bb3,0xbb244));import{readFile,writeFile,mkdir}from'fs/promises';import{join}from'path';import{existsSync}from'fs';import{execSync}from'child_process';import _0x8c3609 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';import{listCloudProfiles}from'./utils/cloudProfile.js';const ACTIVE_FEATURE_FILE=_0x48552e(0x16f),bold=_0x32db3a=>_0x48552e(0xf8)+_0x32db3a+'\x1b[0m';function getGitRepoUrl(){const _0x20183a=_0x48552e,_0x5cb2c5={'YfNkv':function(_0xe8e4ec,_0x5d8d70,_0x8da28c){return _0xe8e4ec(_0x5d8d70,_0x8da28c);},'aIiEh':'git\x20remote\x20get-url\x20origin','QKkyi':'pipe'};try{const _0x45c6d1=_0x5cb2c5[_0x20183a(0x186)](execSync,_0x5cb2c5[_0x20183a(0x11b)],{'encoding':'utf-8','stdio':['pipe',_0x5cb2c5['QKkyi'],_0x20183a(0xf6)]})[_0x20183a(0x10e)]();return _0x45c6d1[_0x20183a(0x122)](/\.git$/,'')['replace'](/^git@github\.com:/,_0x20183a(0x102))['replace'](/^https?:\/\//,'');}catch{return undefined;}}function getGitBranch(){const _0x109bb2=_0x48552e,_0x50f301={'wlvno':function(_0x196acb,_0x33f7b5,_0x127641){return _0x196acb(_0x33f7b5,_0x127641);},'VBSMv':'utf-8'};try{return _0x50f301['wlvno'](execSync,_0x109bb2(0xc9),{'encoding':_0x50f301[_0x109bb2(0x137)],'stdio':['pipe',_0x109bb2(0xf6),_0x109bb2(0xf6)]})['trim']();}catch{return undefined;}}export async function getActiveFeatureId(){const _0x1c4603=_0x48552e,_0x50dbd9={'gsQsA':function(_0x3f4cfb){return _0x3f4cfb();},'kxRfi':_0x1c4603(0xfa)},_0x55df1e=join(_0x50dbd9[_0x1c4603(0x1a5)](getRangerDir),ACTIVE_FEATURE_FILE);if(!existsSync(_0x55df1e))return null;try{const _0x101682=await readFile(_0x55df1e,_0x50dbd9['kxRfi']);return _0x101682[_0x1c4603(0x10e)]()||null;}catch{return null;}}function _0x94bc(_0x17baea,_0x1c4fae){_0x17baea=_0x17baea-0xc3;const _0x1bb3a9=_0x1bb3();let _0x94bc7f=_0x1bb3a9[_0x17baea];return _0x94bc7f;}async function setActiveFeatureId(_0x1a2da1){const _0x2520d2=_0x48552e,_0x2726a0={'loiWD':function(_0x2b87b5){return _0x2b87b5();},'sqMPq':function(_0x8b550c,_0x528eb0){return _0x8b550c(_0x528eb0);},'QdvgH':function(_0x57a93a,_0x408521,_0x5c5618){return _0x57a93a(_0x408521,_0x5c5618);},'rulIh':_0x2520d2(0xfa)},_0xaf371b=_0x2726a0['loiWD'](getRangerDir),_0x2c192b=join(_0xaf371b,ACTIVE_FEATURE_FILE);!_0x2726a0['sqMPq'](existsSync,_0xaf371b)&&await _0x2726a0['QdvgH'](mkdir,_0xaf371b,{'recursive':!![]}),await writeFile(_0x2c192b,_0x1a2da1,_0x2726a0[_0x2520d2(0x18c)]);}function getProgressDisplay(_0x1a0c13){const _0xf5e535=_0x48552e,_0x404ac8={'bMWJb':function(_0xc49e3f,_0x1e3d93){return _0xc49e3f+_0x1e3d93;},'JkKlE':function(_0x2271e0,_0x31b77f){return _0x2271e0/_0x31b77f;},'kQRpx':function(_0x2026c2,_0x1b10cf){return _0x2026c2>_0x1b10cf;}},_0x4d2101=_0x1a0c13['verifiedItems']||0x0,_0x552fa7=_0x1a0c13['verificationInProgressItems']||0x0,_0x4aeb15=_0x1a0c13[_0xf5e535(0xec)]||0x0,_0x2a77f9=_0x1a0c13[_0xf5e535(0x193)]||0x0,_0x1b43a0=_0x1a0c13[_0xf5e535(0x11a)]||0x0,_0x3ee44c=_0x404ac8['bMWJb'](_0x404ac8[_0xf5e535(0x183)](_0x4d2101+_0x552fa7,_0x4aeb15)+_0x2a77f9,_0x1b43a0);if(_0x3ee44c===0x0)return'-';const _0x2c90df=0xa,_0x186e98=Math[_0xf5e535(0x123)](_0x404ac8[_0xf5e535(0x19b)](_0x4d2101,_0x3ee44c)*_0x2c90df),_0x13fcdd=_0x404ac8['bMWJb']('█'['repeat'](_0x186e98),'░'['repeat'](_0x2c90df-_0x186e98)),_0x7ac38f=[];if(_0x404ac8['kQRpx'](_0x4aeb15,0x0))_0x7ac38f['push'](_0x4aeb15+_0xf5e535(0x130));if(_0x404ac8[_0xf5e535(0xdd)](_0x2a77f9,0x0))_0x7ac38f['push'](_0x2a77f9+_0xf5e535(0x121));if(_0x404ac8[_0xf5e535(0xdd)](_0x552fa7,0x0))_0x7ac38f[_0xf5e535(0xe9)](_0x552fa7+_0xf5e535(0x19e));const _0x51fbec=_0x7ac38f[_0xf5e535(0x188)]>0x0?'\x20('+_0x7ac38f['join'](',\x20')+')':'';return _0x13fcdd+'\x20'+_0x4d2101+'/'+_0x3ee44c+'\x20verified'+_0x51fbec;}function getCurrentSessionItems(_0x29c170,_0xdc078b){const _0x4b29c2=_0x48552e;if(!_0x29c170['currentSessionId'])return _0xdc078b['filter'](_0x58cb9f=>!_0x58cb9f['sessionId']);return _0xdc078b['filter'](_0x3f8f99=>_0x3f8f99[_0x4b29c2(0x181)]===_0x29c170['currentSessionId']||!_0x3f8f99[_0x4b29c2(0x181)]);}function displayFeature(_0x446f0c,_0x15a04a){const _0x34fdb4=_0x48552e,_0x17a1b1={'wbcOy':'\x0a\x20\x20\x20Scenarios:','jCvTb':function(_0x22478b,_0xde2f4e){return _0x22478b<_0xde2f4e;},'LrGHH':_0x34fdb4(0x192),'OSTmj':function(_0x49e4df,_0x1d4146){return _0x49e4df===_0x1d4146;},'fdqgb':function(_0x1900bb,_0x128197){return _0x1900bb===_0x128197;},'fjUaj':'verified','pwefr':function(_0x484988,_0x2628b8){return _0x484988===_0x2628b8;},'pfypM':'incomplete','PULiq':_0x34fdb4(0xe8),'fwGls':function(_0x19f785,_0x33fba2){return _0x19f785>_0x33fba2;},'EVhZY':function(_0x216bcb,_0x385b9b){return _0x216bcb!==_0x385b9b;},'tWkGg':'\x20[has\x20reviewer\x20feedback]','SBZRG':function(_0x1d8aec,_0x1887cd){return _0x1d8aec===_0x1887cd;},'DudCu':_0x34fdb4(0x160),'bZAEY':function(_0x4fbd14,_0x2b8f2a){return _0x4fbd14===_0x2b8f2a;},'ORNBU':function(_0x2a71da,_0x58cda3){return _0x2a71da===_0x58cda3;},'IjVbJ':'approved','rchcY':function(_0x466416,_0x51376d){return _0x466416===_0x51376d;}};console[_0x34fdb4(0xff)]('\x0a'+_0x446f0c[_0x34fdb4(0x11e)]+'\x20('+_0x446f0c[_0x34fdb4(0x195)]+')');_0x446f0c['stats']&&console[_0x34fdb4(0xff)]('\x20\x20\x20Progress:\x20'+getProgressDisplay(_0x446f0c[_0x34fdb4(0xfb)]));_0x446f0c[_0x34fdb4(0xe3)]&&console['log']('\x20\x20\x20Description:\x20'+_0x446f0c[_0x34fdb4(0xe3)]);_0x446f0c[_0x34fdb4(0xef)]&&console['log'](_0x34fdb4(0x133)+_0x446f0c[_0x34fdb4(0xef)]);_0x446f0c[_0x34fdb4(0x176)]&&console['log'](_0x34fdb4(0x109)+_0x446f0c['gitBranch']);console[_0x34fdb4(0xff)](_0x34fdb4(0xf7)+new Date(_0x446f0c['createdAt'])[_0x34fdb4(0xe1)]());_0x446f0c[_0x34fdb4(0x19c)]&&console[_0x34fdb4(0xff)](_0x34fdb4(0x170)+new Date(_0x446f0c['completedAt'])[_0x34fdb4(0xe1)]());if(_0x15a04a&&_0x15a04a['length']>0x0){console['log'](_0x17a1b1['wbcOy']);for(let _0x252186=0x0;_0x17a1b1['jCvTb'](_0x252186,_0x15a04a['length']);_0x252186++){const _0x19c758=_0x15a04a[_0x252186];let _0x20c06d;if(_0x19c758['status']===_0x17a1b1[_0x34fdb4(0x107)]&&_0x17a1b1['OSTmj'](_0x19c758['terminalReason'],'approved'))_0x20c06d='✅';else{if(_0x17a1b1[_0x34fdb4(0x14c)](_0x19c758['status'],_0x17a1b1['fjUaj']))_0x20c06d='🟢';else{if(_0x17a1b1[_0x34fdb4(0xeb)](_0x19c758[_0x34fdb4(0xcc)],_0x17a1b1['pfypM']))_0x20c06d='🟠';else{if(_0x19c758[_0x34fdb4(0xcc)]==='blocked')_0x20c06d='🛑';else{if(_0x19c758['status']===_0x17a1b1['LrGHH'])_0x20c06d='⛔';else _0x19c758['status']===_0x17a1b1['PULiq']?_0x20c06d='⏳':_0x20c06d='⬜';}}}}const _0x3af39f=_0x19c758[_0x34fdb4(0xc3)]>0x1?_0x34fdb4(0xf3)+_0x19c758['version']+')':'',_0x2ddeb1=_0x17a1b1[_0x34fdb4(0xd9)](_0x19c758[_0x34fdb4(0xc3)],0x1)&&_0x19c758[_0x34fdb4(0x16c)]&&_0x17a1b1[_0x34fdb4(0xea)](_0x19c758[_0x34fdb4(0xcc)],_0x34fdb4(0x192))&&_0x17a1b1[_0x34fdb4(0xea)](_0x19c758[_0x34fdb4(0xcc)],'verified')?_0x17a1b1[_0x34fdb4(0x108)]:'';console['log'](_0x34fdb4(0xf0)+(_0x252186+0x1)+'.\x20'+_0x20c06d+'\x20'+_0x19c758[_0x34fdb4(0xe3)]+_0x3af39f+_0x2ddeb1);_0x17a1b1['SBZRG'](_0x19c758[_0x34fdb4(0xcc)],_0x17a1b1[_0x34fdb4(0xe6)])&&_0x19c758[_0x34fdb4(0x196)]&&console['log'](_0x34fdb4(0x18e)+_0x19c758['blockedReason']);_0x19c758[_0x34fdb4(0xcc)]===_0x34fdb4(0x13b)&&_0x19c758['incompleteReason']&&console['log'](_0x34fdb4(0x171)+_0x19c758[_0x34fdb4(0xca)]);if(_0x17a1b1[_0x34fdb4(0x103)](_0x19c758['status'],_0x17a1b1[_0x34fdb4(0x107)])&&_0x17a1b1[_0x34fdb4(0x15c)](_0x19c758[_0x34fdb4(0x191)],_0x17a1b1[_0x34fdb4(0x10c)]))console['log']('\x20\x20\x20\x20\x20\x20Approved');else _0x17a1b1[_0x34fdb4(0x18a)](_0x19c758['status'],_0x17a1b1[_0x34fdb4(0x107)])&&_0x19c758[_0x34fdb4(0x17e)]&&console[_0x34fdb4(0xff)](_0x34fdb4(0x10b)+_0x19c758[_0x34fdb4(0x17e)]);}}}export async function featureCreate(_0x55449c,_0x4c7a04){const _0x85715f=_0x48552e,_0x541c2a={'GaOur':function(_0x8f349f){return _0x8f349f();},'YLfCu':function(_0x1c57f5,_0x2cf434){return _0x1c57f5===_0x2cf434;},'MvhqS':function(_0x322841,_0x257fb1){return _0x322841(_0x257fb1);},'duvdR':function(_0x2e2266){return _0x2e2266();}},{envNames:_0x354db9}=await getEnvNames();if(_0x354db9['length']===0x0&&!process[_0x85715f(0x1a7)]['RANGER_TEST_USERNAME']){let _0x1217c8=0x0;try{_0x1217c8=(await _0x541c2a[_0x85715f(0x120)](listCloudProfiles))[_0x85715f(0x188)];}catch{_0x1217c8=0x1;}_0x541c2a[_0x85715f(0x173)](_0x1217c8,0x0)&&console[_0x85715f(0x168)]('\x0a'+_0x541c2a['MvhqS'](formatProfileRequiredMessage,_0x6dbdb0=>bold(_0x6dbdb0)));}const _0x4855bb=_0x4c7a04[_0x85715f(0x194)]?_0x4c7a04[_0x85715f(0x194)]['map'](_0x5cadaf=>_0x5cadaf['trim']()):[],_0x3a7231=_0x541c2a['duvdR'](getGitRepoUrl),_0x2fe4ba=_0x541c2a['GaOur'](getGitBranch);console[_0x85715f(0xff)](_0x85715f(0xc6));const _0x2142d8=await createFeature({'name':_0x55449c,'description':_0x4c7a04['description'],'checklist':_0x4855bb,'gitRepoUrl':_0x3a7231,'gitBranch':_0x2fe4ba});await setActiveFeatureId(_0x2142d8['id']),await tryStartCurrentSession(_0x2142d8['id']);const _0x5cd665=process[_0x85715f(0x1a7)]['CLAUDE_SESSION_ID'];_0x5cd665&&registerSession(_0x5cd665,_0x2142d8['id']),console['log']('\x0a✅\x20Feature\x20review\x20created:\x20'+_0x2142d8['id']),displayFeature(_0x2142d8,_0x2142d8[_0x85715f(0x156)]),console[_0x85715f(0xff)](_0x85715f(0x12c));}export async function featureList(_0x228064){const _0x2ab1fc=_0x48552e,_0x37b134={'bsQET':function(_0x340518){return _0x340518();},'xYOPD':function(_0x21b6dd,_0x137264){return _0x21b6dd(_0x137264);},'NZXDs':'\x0aNo\x20feature\x20reviews\x20found.','Xenqx':function(_0x57b0aa,_0x9afd81){return _0x57b0aa>_0x9afd81;},'HMeJo':_0x2ab1fc(0xc5),'qSIiG':function(_0xd59613,_0x53c553){return _0xd59613(_0x53c553);},'InEYT':function(_0x44fa9a,_0x5cc8d4){return _0x44fa9a<_0x5cc8d4;},'HznDy':function(_0x330447,_0xb7d8af){return _0x330447!==_0xb7d8af;},'noJuJ':'\x20--current-branch','EphBC':_0x2ab1fc(0x174)},_0x1760e8={'limit':_0x228064[_0x2ab1fc(0x179)]??0xa,'offset':_0x228064['offset']??0x0,'includeDeleted':_0x228064['includeDeleted']};_0x228064[_0x2ab1fc(0x12f)]&&(_0x1760e8[_0x2ab1fc(0xef)]=_0x37b134[_0x2ab1fc(0x13e)](getGitRepoUrl),_0x1760e8[_0x2ab1fc(0x176)]=getGitBranch());const _0x2c7e64=await _0x37b134['xYOPD'](listFeatures,_0x1760e8);if(_0x2c7e64[_0x2ab1fc(0x105)][_0x2ab1fc(0x188)]===0x0){console['log'](_0x37b134['NZXDs']);return;}const _0x23cc1e=_0x37b134[_0x2ab1fc(0xdb)](_0x2c7e64[_0x2ab1fc(0x116)],_0x2c7e64['items']['length'])?'Showing\x20'+_0x2c7e64['items']['length']+_0x2ab1fc(0x14f)+_0x2c7e64[_0x2ab1fc(0x116)]:_0x2c7e64['totalCount']+_0x2ab1fc(0xd8);console[_0x2ab1fc(0xff)]('\x0a'+_0x23cc1e+':\x0a');for(const _0x56204c of _0x2c7e64[_0x2ab1fc(0x105)]){const _0xae4066=_0x37b134['HMeJo']['split']('|');let _0x4a0b72=0x0;while(!![]){switch(_0xae4066[_0x4a0b72++]){case'0':console[_0x2ab1fc(0xff)]('\x20\x20\x20Created:\x20'+new Date(_0x56204c[_0x2ab1fc(0x148)])[_0x2ab1fc(0x165)]());continue;case'1':console['log'](''+_0x56204c['name']);continue;case'2':console[_0x2ab1fc(0xff)]('');continue;case'3':console['log'](_0x2ab1fc(0xfe)+_0x56204c['id']);continue;case'4':_0x56204c[_0x2ab1fc(0x176)]&&console[_0x2ab1fc(0xff)]('\x20\x20\x20Branch:\x20'+_0x56204c['gitBranch']);continue;case'5':_0x56204c[_0x2ab1fc(0xfb)]&&console[_0x2ab1fc(0xff)]('\x20\x20\x20Progress:\x20'+_0x37b134[_0x2ab1fc(0x10a)](getProgressDisplay,_0x56204c[_0x2ab1fc(0xfb)]));continue;}break;}}const _0x46d353=_0x1760e8['limit']??0xa,_0x419695=(_0x1760e8[_0x2ab1fc(0x139)]??0x0)+_0x2c7e64['items'][_0x2ab1fc(0x188)];if(_0x37b134[_0x2ab1fc(0x177)](_0x419695,_0x2c7e64[_0x2ab1fc(0x116)])){const _0x11e817=_0x37b134['HznDy'](_0x46d353,0xa)?_0x2ab1fc(0x166)+_0x46d353:'',_0x1f2fa9=_0x228064[_0x2ab1fc(0x12f)]?_0x37b134['noJuJ']:'',_0x19142c=_0x228064[_0x2ab1fc(0x182)]?_0x37b134[_0x2ab1fc(0x198)]:'';console[_0x2ab1fc(0xff)]('Next\x20page:\x20ranger\x20list\x20--offset\x20'+_0x419695+_0x11e817+_0x1f2fa9+_0x19142c);}}export async function featureShow(_0x3381ae){const _0x421219=_0x48552e,_0xaf30ad={'GlEKC':_0x421219(0xd4),'VKzSr':function(_0x4d6585,_0x292e9c){return _0x4d6585(_0x292e9c);},'CsjRy':function(_0x411eac,_0x43eb33,_0x26d1b7){return _0x411eac(_0x43eb33,_0x26d1b7);}},_0x4dcbbc=_0x3381ae||await getActiveFeatureId();if(!_0x4dcbbc)throw new Error(_0xaf30ad[_0x421219(0xe4)]);const _0x4db2cd=await _0xaf30ad['VKzSr'](getFeature,_0x4dcbbc);_0xaf30ad[_0x421219(0xf4)](displayFeature,_0x4db2cd,_0x4db2cd[_0x421219(0x156)]);}export async function featureResume(_0x3f35e0){const _0x551edd=_0x48552e,_0x206bb5={'TMoZz':function(_0xf9aa8a,_0x477159){return _0xf9aa8a(_0x477159);},'tflCZ':function(_0x2f68b5,_0x2b0d64,_0x20ae26){return _0x2f68b5(_0x2b0d64,_0x20ae26);},'ELUyK':function(_0x4ecf0c){return _0x4ecf0c();},'TfgNf':'any','XqKLa':function(_0x321a81,_0x1bffa9){return _0x321a81===_0x1bffa9;},'ucJCW':_0x551edd(0x19a),'satnn':'\x0aNon-interactive\x20mode\x20detected.\x20Multiple\x20feature\x20reviews\x20found:','EakHB':'Please\x20specify\x20the\x20feature\x20review\x20ID:\x20ranger\x20resume\x20<id>','mkPRu':_0x551edd(0xe7),'TQgdx':_0x551edd(0x17b)};if(_0x3f35e0){const _0x35711e=await _0x206bb5['TMoZz'](getFeature,_0x3f35e0);await setActiveFeatureId(_0x35711e['id']);const _0x46747f=getGitBranch();_0x46747f&&_0x46747f!==_0x35711e['gitBranch']&&(await _0x206bb5[_0x551edd(0x1a8)](updateFeature,_0x35711e['id'],{'gitBranch':_0x46747f}),console['log'](_0x551edd(0x131)+_0x46747f));console[_0x551edd(0xff)]('\x0a✅\x20Resumed\x20feature\x20review:\x20'+_0x35711e[_0x551edd(0x11e)]+'\x20('+_0x35711e['id']+')'),await tryStartCurrentSession(_0x35711e['id']);const _0x4be47e=process[_0x551edd(0x1a7)]['CLAUDE_SESSION_ID'];_0x4be47e&&_0x206bb5[_0x551edd(0x1a8)](registerSession,_0x4be47e,_0x35711e['id']);displayFeature(_0x35711e,_0x35711e['checklistItems']),await _0x206bb5[_0x551edd(0x180)](printFeedbackNudge,_0x35711e['id']);return;}const _0x21e39f=_0x206bb5['ELUyK'](getGitRepoUrl),_0x5b6858=getGitBranch();if(!_0x21e39f&&!_0x5b6858)throw new Error('Not\x20in\x20a\x20git\x20repository.');console['log']('\x0aSearching\x20for\x20feature\x20reviews\x20matching:\x20'+(_0x21e39f||_0x551edd(0x152))+'\x20/\x20'+(_0x5b6858||_0x206bb5[_0x551edd(0xfc)])+'...');const _0x367dfd=await listFeatures({'gitRepoUrl':_0x21e39f,'gitBranch':_0x5b6858}),_0xc50b6c=_0x367dfd[_0x551edd(0x105)]['filter'](_0x3b47ab=>_0x3b47ab[_0x551edd(0xcc)]?_0x3b47ab['status']!=='verified':!_0x3b47ab[_0x551edd(0x19c)]);if(_0x206bb5['XqKLa'](_0xc50b6c['length'],0x0)){console['log']('\x0aNo\x20matching\x20active\x20feature\x20reviews\x20found.'),console[_0x551edd(0xff)](_0x206bb5[_0x551edd(0x157)]);return;}let _0x3a89cc;if(_0xc50b6c['length']===0x1)_0x3a89cc=_0xc50b6c[0x0];else{const _0x3e8552=process[_0x551edd(0x12b)]['isTTY']&&process['stdout']['isTTY'];if(!_0x3e8552){console['log'](_0x206bb5['satnn']);for(const _0xea23e6 of _0xc50b6c){console['log']('\x20\x20'+_0xea23e6[_0x551edd(0x11e)]),console[_0x551edd(0xff)]('\x20\x20\x20\x20\x20ID:\x20'+_0xea23e6['id']),_0xea23e6['stats']&&console['log']('\x20\x20\x20\x20\x20Progress:\x20'+getProgressDisplay(_0xea23e6[_0x551edd(0xfb)])),_0xea23e6[_0x551edd(0x176)]&&console['log']('\x20\x20\x20\x20\x20Branch:\x20'+_0xea23e6['gitBranch']);}throw new Error(_0x206bb5['EakHB']);}const {selected:_0x92477b}=await _0x8c3609[_0x551edd(0xf9)]([{'type':_0x206bb5[_0x551edd(0xe0)],'name':_0x551edd(0xfd),'message':_0x206bb5['TQgdx'],'choices':_0xc50b6c[_0x551edd(0x124)](_0x57788f=>({'name':_0x57788f[_0x551edd(0x11e)]+'\x20('+_0x57788f['id']+')','value':_0x57788f['id']}))}]);_0x3a89cc=_0xc50b6c[_0x551edd(0x16d)](_0x51d05b=>_0x51d05b['id']===_0x92477b);}await setActiveFeatureId(_0x3a89cc['id']);_0x5b6858&&_0x5b6858!==_0x3a89cc[_0x551edd(0x176)]&&(await updateFeature(_0x3a89cc['id'],{'gitBranch':_0x5b6858}),console['log'](_0x551edd(0x131)+_0x5b6858));console['log']('\x0a✅\x20Resumed\x20feature\x20review:\x20'+_0x3a89cc['name']+'\x20('+_0x3a89cc['id']+')'),await _0x206bb5[_0x551edd(0x180)](tryStartCurrentSession,_0x3a89cc['id']);const _0x137396=await getFeature(_0x3a89cc['id']),_0xe51ab9=process['env']['CLAUDE_SESSION_ID'];_0xe51ab9&&registerSession(_0xe51ab9,_0x137396['id']),displayFeature(_0x137396,_0x137396['checklistItems']),await _0x206bb5['TMoZz'](printFeedbackNudge,_0x137396['id']);}async function printFeedbackNudge(_0x3f5a9b){const _0x16220c=_0x48552e,_0x22177b={'EkdcM':function(_0x3b6b62,_0x5989f0,_0x3c06d7){return _0x3b6b62(_0x5989f0,_0x3c06d7);},'rRIFw':function(_0x386c5b,_0x35d3e5){return _0x386c5b>_0x35d3e5;},'dMydk':_0x16220c(0x153)};try{const {items:_0x2f024c}=await getActionItems(_0x3f5a9b);let _0x475fb8=0x0,_0x78892b=0x0;for(const _0x18ac4e of _0x2f024c){const _0x2d61ef=await _0x22177b['EkdcM'](getItemFeedback,_0x3f5a9b,_0x18ac4e['id']);_0x2d61ef[_0x16220c(0x114)]['length']>0x0&&(_0x475fb8+=_0x2d61ef[_0x16220c(0x114)]['length'],_0x78892b++);}_0x22177b[_0x16220c(0x12e)](_0x475fb8,0x0)&&(console['log']('\x0a⚠️\x20\x20'+_0x475fb8+'\x20unaddressed\x20reviewer\x20comment(s)\x20across\x20'+_0x78892b+_0x16220c(0xd5)),console['log'](_0x22177b[_0x16220c(0x149)]));}catch{}}async function tryStartCurrentSession(_0x47f0c1){const _0x54ed18=_0x48552e,_0x341618={'Qhley':function(_0x3c8acd,_0xa24ec1){return _0x3c8acd(_0xa24ec1);}};try{const {sessions:_0x576f0f}=await _0x341618['Qhley'](listFeatureSessions,_0x47f0c1),_0x127af0=_0x576f0f['find'](_0x4967e8=>_0x4967e8['status']===_0x54ed18(0x1a4));_0x127af0&&(await startSession(_0x47f0c1,_0x127af0['id']),console['log'](_0x54ed18(0x127)+_0x127af0['iteration']));}catch{}}export async function featureReport(_0x3119d9,_0x1a9980){const _0x1f39bb=_0x48552e,_0x4604e3={'IKeOf':function(_0x241c2d){return _0x241c2d();},'OGDrP':_0x1f39bb(0x115),'iBYDE':function(_0x473cba,_0x3189b3,_0x759f7,_0x4c594c){return _0x473cba(_0x3189b3,_0x759f7,_0x4c594c);},'DXFHn':function(_0x5f4856){return _0x5f4856();},'oVdUp':function(_0x511e89,_0x11f0d5,_0x2d94bc){return _0x511e89(_0x11f0d5,_0x2d94bc);},'qARiO':_0x1f39bb(0xfa)},_0x2515dc=_0x3119d9||await _0x4604e3['IKeOf'](getActiveFeatureId);if(!_0x2515dc)throw new Error('No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.');console[_0x1f39bb(0xff)](_0x4604e3[_0x1f39bb(0xf2)]);const _0x2f6a0f=await getFeatureReportMarkdown(_0x2515dc,{'style':_0x1a9980[_0x1f39bb(0x110)]}),_0x29201d=_0x1a9980[_0x1f39bb(0x19f)]||_0x4604e3[_0x1f39bb(0x118)](join,_0x4604e3[_0x1f39bb(0x10f)](getRangerDir),_0x1f39bb(0x18f),_0x2515dc+_0x1f39bb(0x159)),_0x1bc85e=join(_0x29201d,'..');!existsSync(_0x1bc85e)&&await _0x4604e3['oVdUp'](mkdir,_0x1bc85e,{'recursive':!![]}),await writeFile(_0x29201d,_0x2f6a0f,_0x4604e3[_0x1f39bb(0x1a3)]),console[_0x1f39bb(0xff)]('\x0a✅\x20Report\x20generated:\x20'+_0x29201d);}function getScenarioResult(_0xffbe8a){const _0x2f7f0d=_0x48552e,_0x81a4d5={'lXpQI':'closed','EzNOI':function(_0x4a075e,_0x366ab2){return _0x4a075e===_0x366ab2;},'ZBvkH':'verification_in_progress','ROoit':'in_progress'};if(_0xffbe8a[_0x2f7f0d(0xcc)]===_0x2f7f0d(0x192))return _0xffbe8a[_0x2f7f0d(0x191)]??_0x81a4d5[_0x2f7f0d(0xd1)];if(_0x81a4d5[_0x2f7f0d(0x190)](_0xffbe8a[_0x2f7f0d(0xcc)],_0x81a4d5[_0x2f7f0d(0x155)]))return _0x81a4d5['ROoit'];return _0xffbe8a[_0x2f7f0d(0xcc)];}function getScenarioRationale(_0x5d2624,_0x478ed9){const _0x13ac13=_0x48552e;if(_0x478ed9)return _0x478ed9;if(_0x5d2624[_0x13ac13(0x196)])return _0x5d2624[_0x13ac13(0x196)];if(_0x5d2624[_0x13ac13(0xca)])return _0x5d2624[_0x13ac13(0xca)];if(_0x5d2624['canceledReason'])return _0x5d2624['canceledReason'];if(_0x5d2624[_0x13ac13(0xc4)])return _0x5d2624[_0x13ac13(0xc4)];return null;}export async function featureReportPrDescription(_0x3baf03,_0x5ae788){const _0x27e890=_0x48552e,_0x532b5d={'eSZzV':'No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.','OjAoU':function(_0x47d0f2,_0x26f09f){return _0x47d0f2(_0x26f09f);},'ORVly':_0x27e890(0x1a6),'hCjGL':function(_0x4cef7e,_0x118242){return _0x4cef7e>_0x118242;},'QCKxZ':_0x27e890(0x14b),'orIrO':function(_0x58b9f8,_0x104e82){return _0x58b9f8<_0x104e82;},'bEAQv':function(_0x21190e,_0x11df28){return _0x21190e===_0x11df28;},'QEpDi':'\x0a❌\x20All\x20scenarios\x20were\x20excluded.'},_0x4d2ea1=_0x3baf03||await getActiveFeatureId();if(!_0x4d2ea1)throw new Error(_0x532b5d[_0x27e890(0xd6)]);const _0x2ba4cd=await _0x532b5d[_0x27e890(0x18b)](getFeature,_0x4d2ea1),_0x145c72=_0x2ba4cd[_0x27e890(0x156)]||[],_0x54363e=getCurrentSessionItems(_0x2ba4cd,_0x145c72);_0x54363e['length']===0x0&&(console[_0x27e890(0xe2)](_0x532b5d[_0x27e890(0x10d)]),process[_0x27e890(0x136)](0x1));const _0x2606b7=_0x5ae788[_0x27e890(0x138)]??[],_0x5dadff=_0x2606b7['filter'](_0x509915=>!Number['isInteger'](_0x509915)||_0x509915<0x1||_0x509915>_0x54363e['length']);if(_0x532b5d[_0x27e890(0x16b)](_0x5dadff[_0x27e890(0x188)],0x0)){console['error']('\x0a❌\x20Invalid\x20scenario\x20number(s):\x20'+_0x5dadff[_0x27e890(0x172)](',\x20')),console['log'](_0x532b5d['QCKxZ']);for(let _0x59845a=0x0;_0x532b5d['orIrO'](_0x59845a,_0x54363e['length']);_0x59845a++){console[_0x27e890(0xff)]('\x20\x20'+(_0x59845a+0x1)+'.\x20'+_0x54363e[_0x59845a]['description']);}process['exit'](0x1);}const _0xe8d0df=new Set(_0x2606b7['map'](_0x1c09ae=>_0x1c09ae-0x1)),_0x515732=_0x54363e[_0x27e890(0xd3)]((_0x554e1e,_0x5d698c)=>!_0xe8d0df[_0x27e890(0x151)](_0x5d698c));_0x532b5d['bEAQv'](_0x515732['length'],0x0)&&(console[_0x27e890(0xe2)](_0x532b5d['QEpDi']),process['exit'](0x1));if(_0x5ae788['json'])await outputJsonReport(_0x4d2ea1,_0x2ba4cd,_0x515732);else{const _0x63d83f=await getFeatureReportMarkdown(_0x4d2ea1,{'itemIds':_0x515732['map'](_0x41703f=>_0x41703f['id'])});process['stdout']['write'](_0x63d83f[_0x27e890(0x1a1)]()+'\x0a');}}async function outputJsonReport(_0x374fa2,_0x28d09f,_0xac2d1){const _0xc2a81f=_0x48552e,_0x449032={'pABjf':function(_0x154cd5,_0x1c0a6){return _0x154cd5>_0x1c0a6;},'GqVMO':function(_0x4f51b5,_0x22096a){return _0x4f51b5(_0x22096a);}},_0x2f9660=getApiBaseUrl(),_0x5d049e=await _0x449032['GqVMO'](getFeatureReport,_0x374fa2),_0x49bd56=new Map(_0x5d049e['checklistItems'][_0xc2a81f(0x124)](_0x2cf423=>[_0x2cf423['id'],_0x2cf423])),_0x295bd3=await Promise['all'](_0xac2d1[_0xc2a81f(0x124)](async _0x4a210e=>{const _0x4b02d2=_0xc2a81f,_0x3e5fa3=_0x49bd56['get'](_0x4a210e['id']),_0x6242ea=_0x3e5fa3?.['linkedSession']??null;let _0x569ea3=[];if(_0x4a210e['browserSessionId'])try{const {steps:_0x3414a7}=await getBrowserSessionSteps(_0x4a210e[_0x4b02d2(0x117)]);_0x449032['pABjf'](_0x3414a7[_0x4b02d2(0x188)],0x0)&&(_0x569ea3=_0x3414a7['map'](_0x21b717=>{const _0x185369=_0x4b02d2,_0x4885e0=_0x21b717['assets']['find'](_0x11faf6=>_0x11faf6['assetType']===_0x185369(0x100)&&_0x11faf6['timing']==='after')??_0x21b717[_0x185369(0x17c)]['find'](_0x128ebe=>_0x128ebe['assetType']==='screenshot');let _0x137355=null,_0x47ef07=null;if(_0x4885e0){const _0x2eeff2=_0x4885e0[_0x185369(0x15a)][_0x185369(0x154)][_0x185369(0x167)]('/')['pop']();_0x137355=_0x2f9660+_0x185369(0x162)+_0x4a210e['browserSessionId']+'/artifacts/'+_0x2eeff2,_0x2eeff2&&(_0x47ef07=_0x2eeff2['replace'](/\.\w+$/,'')[_0x185369(0x122)](/^(key_)?\d+_/,'')['replace'](/[-_]/g,'\x20'));}return{'description':_0x47ef07||_0x21b717['description']||_0x21b717['stepName']||_0x185369(0xce)+_0x21b717[_0x185369(0x132)],'screenshot':_0x137355,'is_key_step':_0x21b717['isKeyStep']};}));}catch{}return _0x569ea3[_0x4b02d2(0x188)]===0x0&&_0x6242ea?.['screenshotUrls']&&(_0x569ea3=_0x6242ea['screenshotUrls']['map']((_0x38828b,_0x5a3fdc)=>({'description':'Screenshot\x20'+(_0x5a3fdc+0x1),'screenshot':_0x38828b,'is_key_step':![]}))),{'description':_0x4a210e['description'],'result':getScenarioResult(_0x4a210e),'rationale':getScenarioRationale(_0x4a210e,_0x6242ea?.[_0x4b02d2(0x197)]),'steps':_0x569ea3};})),_0x565961={'url':_0x28d09f['dashboardUrl'],'scenarios':_0x295bd3};process[_0xc2a81f(0x112)][_0xc2a81f(0x189)](JSON['stringify'](_0x565961,null,0x2)+'\x0a');}export async function featureConcludeSession(_0x28bc96){const _0x50eac1=_0x48552e,_0x1db7b3={'AsorW':function(_0x2dcf16){return _0x2dcf16();},'GQqUY':function(_0x26d9b7,_0x958e69){return _0x26d9b7(_0x958e69);},'wfYEi':function(_0x196920,_0x1fba79){return _0x196920===_0x1fba79;},'PpOsO':_0x50eac1(0x17a),'BIoJX':function(_0x236e0b,_0x1ec0a6){return _0x236e0b!==_0x1ec0a6;},'BLeAP':_0x50eac1(0x1a0),'GoGqf':'\x0aConcluding\x20session...'},_0x228a2=_0x28bc96||await _0x1db7b3['AsorW'](getActiveFeatureId);if(!_0x228a2)throw new Error(_0x50eac1(0xd4));const _0x169f4a=await getFeature(_0x228a2);if(!_0x169f4a['currentSessionId'])throw new Error('No\x20active\x20session\x20for\x20this\x20feature\x20review.');const {sessions:_0x24ea6}=await _0x1db7b3['GQqUY'](listFeatureSessions,_0x228a2),_0x3bdd91=_0x24ea6[_0x50eac1(0x16d)](_0x54d3ee=>_0x54d3ee['id']===_0x169f4a['currentSessionId']);if(!_0x3bdd91)throw new Error('Current\x20session\x20not\x20found.');if(_0x1db7b3[_0x50eac1(0x119)](_0x3bdd91[_0x50eac1(0xcc)],'completed')){console['log'](_0x1db7b3['PpOsO']);return;}if(_0x1db7b3[_0x50eac1(0x13f)](_0x3bdd91[_0x50eac1(0xcc)],_0x1db7b3['BLeAP']))throw new Error(_0x50eac1(0x125)+_0x3bdd91['status']);console['log'](_0x1db7b3['GoGqf']),await concludeSession(_0x228a2,_0x169f4a[_0x50eac1(0xdf)]),console['log']('\x0a✅\x20Session\x20'+_0x3bdd91['iteration']+_0x50eac1(0xcb)),console['log'](_0x50eac1(0x13d));}export async function featureSessions(_0x5ba7ae){const _0x4b2127=_0x48552e,_0x1a4501={'ChYkZ':function(_0x5a8907,_0x10324c){return _0x5a8907(_0x10324c);},'FzTqz':'completed'},_0x2f26fa=_0x5ba7ae||await getActiveFeatureId();if(!_0x2f26fa)throw new Error(_0x4b2127(0x15d));const _0x254fcc=await getFeature(_0x2f26fa);console['log'](_0x4b2127(0x17d)+_0x254fcc['name']+'\x0a');const {sessions:_0x181586}=await _0x1a4501[_0x4b2127(0x175)](listFeatureSessions,_0x2f26fa);if(_0x181586['length']===0x0){console['log'](_0x4b2127(0x1a2));return;}for(const _0x48ca02 of _0x181586){const _0x8ce256=_0x48ca02[_0x4b2127(0xcc)]===_0x1a4501['FzTqz']?'✅':_0x48ca02[_0x4b2127(0xcc)]==='in_progress'?'🔄':'▶️';console[_0x4b2127(0xff)](_0x8ce256+'\x20Session\x20'+_0x48ca02[_0x4b2127(0x147)]+'\x20('+_0x48ca02['id']+')'),console[_0x4b2127(0xff)](_0x4b2127(0x12d)+_0x48ca02[_0x4b2127(0xcc)]),console['log'](_0x4b2127(0xf7)+new Date(_0x48ca02[_0x4b2127(0x148)])['toLocaleString']()),_0x48ca02[_0x4b2127(0x19c)]&&console['log']('\x20\x20\x20Completed:\x20'+new Date(_0x48ca02['completedAt'])[_0x4b2127(0xe1)]()),console[_0x4b2127(0xff)]('');}}export async function featureAddScenario(_0x365860,_0x27fce7){const _0x13a381=_0x48552e,_0x229828={'hANBS':function(_0x31412c,_0x10121d,_0x3f6e29){return _0x31412c(_0x10121d,_0x3f6e29);},'CMxJk':function(_0x7dceaa,_0x3df64f){return _0x7dceaa(_0x3df64f);}},_0xe05fd3=_0x27fce7||await getActiveFeatureId();if(!_0xe05fd3)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 _0x587dea=await getFeature(_0xe05fd3);if(_0x587dea['latestReview']&&!_0x587dea[_0x13a381(0x14d)][_0x13a381(0x128)])throw new Error('Cannot\x20add\x20scenario:\x20feature\x20review\x20has\x20an\x20active\x20review.\x20Please\x20finish\x20your\x20review\x20first:\x20'+_0x587dea[_0x13a381(0x195)]);await _0x229828['hANBS'](createChecklistItem,_0xe05fd3,_0x365860);const _0x236b33=await _0x229828[_0x13a381(0x143)](getFeature,_0xe05fd3);console[_0x13a381(0xff)]('\x0a✅\x20Scenario\x20added'),displayFeature(_0x236b33,_0x236b33['checklistItems']);}export async function featureEditScenario(_0x9039b,_0x53549f){const _0xedc241=_0x48552e,_0x3bb430={'tDyet':_0xedc241(0x15e),'Aqles':function(_0x169bad,_0x5820e4){return _0x169bad(_0x5820e4);},'nkzja':'\x0a❌\x20Cannot\x20edit\x20scenario:\x20feature\x20review\x20has\x20an\x20active\x20review.','bKlip':_0xedc241(0x18d),'uwfGZ':_0xedc241(0xee),'FJYuu':function(_0x268403,_0x7c171e){return _0x268403<_0x7c171e;},'umzwt':function(_0x4bd814,_0x261008){return _0x4bd814-_0x261008;},'qcQVA':function(_0x187c4b,_0x4b0c26){return _0x187c4b>=_0x4b0c26;},'ByhOG':function(_0x31b8e2,_0x3a093d){return _0x31b8e2+_0x3a093d;},'dSxZB':function(_0x160b62,_0x39e62a,_0x3c942a){return _0x160b62(_0x39e62a,_0x3c942a);}},_0x5f0fab=_0x53549f['id']||await getActiveFeatureId();!_0x5f0fab&&(console[_0xedc241(0xe2)](_0xedc241(0x15b)),console[_0xedc241(0xe2)](_0x3bb430['tDyet']),process[_0xedc241(0x136)](0x1));const _0xfc5693=await _0x3bb430['Aqles'](getFeature,_0x5f0fab);_0xfc5693[_0xedc241(0x14d)]&&!_0xfc5693[_0xedc241(0x14d)]['submittedAt']&&(console['error'](_0x3bb430[_0xedc241(0x144)]),console[_0xedc241(0xe2)]('Please\x20finish\x20your\x20review\x20first:'),console['error']('\x20\x20'+_0xfc5693['dashboardUrl']),process[_0xedc241(0x136)](0x1));const _0x1cc31d=_0xfc5693[_0xedc241(0x156)]||[];_0x1cc31d[_0xedc241(0x188)]===0x0&&(console['error'](_0x3bb430['bKlip']),process[_0xedc241(0x136)](0x1));if(_0x53549f[_0xedc241(0x134)]===undefined){console[_0xedc241(0xe2)](_0x3bb430[_0xedc241(0x145)]),console[_0xedc241(0xff)]('\x0aAvailable\x20scenarios:');for(let _0x79ba26=0x0;_0x3bb430['FJYuu'](_0x79ba26,_0x1cc31d[_0xedc241(0x188)]);_0x79ba26++){console[_0xedc241(0xff)]('\x20\x20'+(_0x79ba26+0x1)+'.\x20'+_0x1cc31d[_0x79ba26][_0xedc241(0xe3)]);}process[_0xedc241(0x136)](0x1);}const _0x27fb25=_0x3bb430[_0xedc241(0xc8)](_0x53549f[_0xedc241(0x134)],0x1);if(_0x3bb430['FJYuu'](_0x27fb25,0x0)||_0x3bb430[_0xedc241(0x16a)](_0x27fb25,_0x1cc31d[_0xedc241(0x188)])){console['error']('\x0a❌\x20Invalid\x20scenario\x20index:\x20'+_0x53549f['scenario']+_0xedc241(0xde)+_0x1cc31d['length']+_0xedc241(0x164)),console['log']('\x0aAvailable\x20scenarios:');for(let _0x4888b5=0x0;_0x3bb430[_0xedc241(0xd2)](_0x4888b5,_0x1cc31d['length']);_0x4888b5++){console['log']('\x20\x20'+_0x3bb430[_0xedc241(0xc7)](_0x4888b5,0x1)+'.\x20'+_0x1cc31d[_0x4888b5]['description']);}process[_0xedc241(0x136)](0x1);}const _0x3368d8=_0x1cc31d[_0x27fb25];await updateChecklistItem(_0x5f0fab,_0x3368d8['id'],{'description':_0x9039b});const _0x569e21=await getFeature(_0x5f0fab);console['log'](_0xedc241(0x184)),_0x3bb430[_0xedc241(0x158)](displayFeature,_0x569e21,_0x569e21[_0xedc241(0x156)]);}async function downloadFeedbackImage(_0x4c6414,_0x551731){const _0x4401fa=_0x48552e,_0x1909c0={'NozQw':function(_0x465a30){return _0x465a30();},'JZicb':_0x4401fa(0x15f),'dGxaH':function(_0x1bcefb,_0x57afd3,_0x1bee3a){return _0x1bcefb(_0x57afd3,_0x1bee3a);}};try{const _0x3e5949=join(_0x1909c0[_0x4401fa(0x11c)](getRangerDir),_0x1909c0['JZicb']);await mkdir(_0x3e5949,{'recursive':!![]});const _0x78eed3=_0x1909c0[_0x4401fa(0x16e)](join,_0x3e5949,_0x4401fa(0x106)+_0x551731+'.png'),_0x2e300f=await fetch(_0x4c6414);if(!_0x2e300f['ok'])return null;const _0x388cec=Buffer['from'](await _0x2e300f['arrayBuffer']());return await writeFile(_0x78eed3,_0x388cec),_0x78eed3;}catch{return null;}}export async function featureGetReview(_0x1ae7b2){const _0x12332b=_0x48552e,_0x4f484a={'GQYVK':function(_0x4d77ad,_0x5d5701){return _0x4d77ad(_0x5d5701);},'QCQoc':function(_0x43bbf6,_0x1d6e75){return _0x43bbf6(_0x1d6e75);},'npelk':function(_0x5f4338,_0x492bac){return _0x5f4338<_0x492bac;},'tpaTq':function(_0x759352,_0x39f6c2,_0x281046){return _0x759352(_0x39f6c2,_0x281046);},'yyVjM':function(_0x371a50,_0x1b2b1f){return _0x371a50+_0x1b2b1f;},'bnpmL':_0x12332b(0x141),'XbQML':_0x12332b(0x163)},_0x4ef99e=_0x1ae7b2||await getActiveFeatureId();if(!_0x4ef99e)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 _0x4ac40e=await _0x4f484a['GQYVK'](getFeature,_0x4ef99e),{items:_0xd7cdc5}=await _0x4f484a['QCQoc'](getActionItems,_0x4ef99e);console['log'](_0x12332b(0x199)+_0x4ac40e[_0x12332b(0x11e)]+'\x20('+_0x4ac40e['id']+')\x0a');if(_0xd7cdc5['length']===0x0){console[_0x12332b(0xff)](_0x12332b(0x169));return;}for(let _0x2b1964=0x0;_0x4f484a['npelk'](_0x2b1964,_0xd7cdc5[_0x12332b(0x188)]);_0x2b1964++){const _0x5a195d=_0xd7cdc5[_0x2b1964],_0x2dabe3=_0x5a195d['version']>0x1?_0x12332b(0xf3)+_0x5a195d['version']+')':'',_0x47e1e9=await _0x4f484a['tpaTq'](getItemFeedback,_0x4ef99e,_0x5a195d['id']);if(_0x47e1e9['unaddressedComments']['length']>0x0){console[_0x12332b(0xff)]('Scenario\x20'+_0x4f484a[_0x12332b(0x14e)](_0x2b1964,0x1)+_0x12332b(0xcd)+_0x5a195d['description']+'\x22'+_0x2dabe3+'\x20—\x20'+_0x47e1e9['unaddressedComments'][_0x12332b(0x188)]+_0x12332b(0x146));for(const _0x476172 of _0x47e1e9[_0x12332b(0x114)]){const _0x33906f=new Date(_0x476172['createdAt'])[_0x12332b(0x165)](_0x4f484a[_0x12332b(0x178)],{'month':'short','day':'numeric'}),_0x2e245c=_0x476172['authorName']||_0x476172['authorEmail']||_0x4f484a[_0x12332b(0x13c)];console['log']('\x20\x20💬\x20'+_0x2e245c+'\x20('+_0x33906f+_0x12332b(0xf1)+_0x476172['content']+'\x22');if(_0x476172[_0x12332b(0xda)]){const _0x145bd8=await downloadFeedbackImage(_0x476172[_0x12332b(0xda)],_0x476172['id']);_0x145bd8&&console[_0x12332b(0xff)]('\x20\x20\x20\x20\x20📷\x20Screenshot:\x20'+_0x145bd8);}if(_0x476172['domRef']){const _0x3e0c33=_0x476172['domRef']['selector'][_0x12332b(0x167)]('\x20>\x20')['pop']()?.['split'](':')[0x0]||_0x12332b(0x14a),_0x580e6e=_0x476172['domRef']['textContent']?'\x20\x22'+_0x476172[_0x12332b(0x11d)]['textContent'][_0x12332b(0x111)](0x0,0x3c)+'\x22':'';console[_0x12332b(0xff)]('\x20\x20\x20\x20\x20🎯\x20Element:\x20<'+_0x3e0c33+'>'+_0x580e6e),console['log']('\x20\x20\x20\x20\x20📋\x20Selector:\x20'+_0x476172['domRef'][_0x12332b(0x17f)]);}else{if(_0x476172['spatial']){const _0x3947be=_0x476172['spatial']['coordinates'];_0x476172[_0x12332b(0x11f)][_0x12332b(0x185)]===_0x12332b(0x12a)&&_0x3947be['length']>=0x2?console['log'](_0x12332b(0xdc)+_0x3947be[0x0]['toFixed'](0x2)+',\x20'+_0x3947be[0x1][_0x12332b(0x129)](0x2)+')'):console[_0x12332b(0xff)]('\x20\x20\x20\x20\x20📍\x20Annotation:\x20'+_0x476172['spatial'][_0x12332b(0x185)]+_0x12332b(0x161)+_0x3947be[_0x12332b(0x124)](_0x14e697=>_0x14e697['toFixed'](0x2))[_0x12332b(0x172)](',\x20')+']');}}}if(_0x47e1e9['canonicalFlow']){console[_0x12332b(0xff)](_0x12332b(0xd0));for(const _0x3909f9 of _0x47e1e9[_0x12332b(0x135)][_0x12332b(0x167)]('\x0a')){console['log']('\x20\x20\x20\x20'+_0x3909f9);}}}else console['log']('Scenario\x20'+(_0x2b1964+0x1)+_0x12332b(0xcd)+_0x5a195d[_0x12332b(0xe3)]+'\x22'+_0x2dabe3+'\x20—\x20no\x20comments'),console['log']('\x20\x20✅\x20No\x20feedback\x20to\x20address');console['log']('');}}export async function featureDelete(_0x5bbb58){const _0x37bc61=_0x48552e,_0x399b94={'gwILx':function(_0x389e90){return _0x389e90();},'mXLeL':_0x37bc61(0xd4),'ZKRnc':_0x37bc61(0x140)},_0x4a43de=_0x5bbb58||await _0x399b94['gwILx'](getActiveFeatureId);if(!_0x4a43de)throw new Error(_0x399b94['mXLeL']);const _0x642097=await getFeature(_0x4a43de);await softDeleteFeature(_0x4a43de),console['log']('\x0a🗑️\x20\x20Deleted\x20feature\x20review:\x20'+_0x642097[_0x37bc61(0x11e)]+'\x20('+_0x4a43de+')'),console[_0x37bc61(0xff)](_0x399b94['ZKRnc']+_0x4a43de);}function _0x1bb3(){const _0x3359fb=['Step\x20','178850GUWVgm','\x20\x20Expected\x20flow:','lXpQI','FJYuu','filter','No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','\x20scenario(s).','eSZzV','770BtRLKa','\x20feature\x20review(s)\x20found','fwGls','assetUrl','Xenqx','\x20\x20\x20\x20\x20📍\x20Annotation:\x20point\x20at\x20(','kQRpx','.\x20Feature\x20review\x20has\x20','currentSessionId','mkPRu','toLocaleString','error','description','GlEKC','119189GnikRJ','DudCu','list','verification_in_progress','push','EVhZY','pwefr','blockedItems','WvESO','\x0a❌\x20No\x20scenario\x20number\x20provided.\x20Use\x20--scenario\x20<number>.','gitRepoUrl','\x20\x20\x20','):\x20\x22','OGDrP','\x20(v','CsjRy','33991620ZltRyW','pipe','\x20\x20\x20Created:\x20','\x1b[1m','prompt','utf-8','stats','TfgNf','selected','\x20\x20\x20ID:\x20','log','screenshot','186pMklPE','github.com/','bZAEY','\x0a✅\x20Restored\x20feature\x20review:\x20','items','comment_','LrGHH','tWkGg','\x20\x20\x20Branch:\x20','qSIiG','\x20\x20\x20\x20\x20\x20Cancelled:\x20','IjVbJ','ORVly','trim','DXFHn','style','slice','stdout','320523UHHxUU','unaddressedComments','\x0aGenerating\x20report...','totalCount','browserSessionId','iBYDE','wfYEi','pendingItems','aIiEh','NozQw','domRef','name','spatial','GaOur','\x20incomplete','replace','round','map','Cannot\x20conclude\x20session\x20with\x20status:\x20','5096cdBiYI','\x20\x20\x20▶️\x20Started\x20session\x20','submittedAt','toFixed','point','stdin','\x0a➡️\x20\x20Set\x20as\x20active\x20feature\x20review','\x20\x20\x20Status:\x20','rRIFw','currentBranch','\x20blocked','\x20\x20\x20Updated\x20branch\x20to:\x20','position','\x20\x20\x20Repository:\x20','scenario','canonicalFlow','exit','VBSMv','excludeScenarios','offset','7539165uawIaP','incomplete','XbQML','\x20\x20\x20The\x20feature\x20review\x20is\x20now\x20ready\x20for\x20human\x20review\x20on\x20the\x20Ranger\x20dashboard.','bsQET','BIoJX','\x20\x20\x20To\x20restore\x20it,\x20run:\x20ranger\x20restore\x20','en-US','8dogHHP','CMxJk','nkzja','uwfGZ','\x20unaddressed\x20comment(s)','iteration','createdAt','dMydk','element','\x0aAvailable\x20scenarios:','fdqgb','latestReview','yyVjM','\x20of\x20','1285968HxbKhk','has','any','\x20\x20\x20Run\x20`ranger\x20get-review`\x20to\x20see\x20what\x20needs\x20to\x20be\x20fixed.','location','ZBvkH','checklistItems','ucJCW','dSxZB','.md','storage','\x0a❌\x20No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.','ORNBU','No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.','Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','feedback-images','blocked','\x20at\x20[','/api/v1/mcp/browser-sessions/','Unknown','\x20scenarios.','toLocaleDateString','\x20--limit\x20','split','warn','No\x20scenarios\x20found.','qcQVA','hCjGL','parentItemId','find','dGxaH','active-feature.txt','\x20\x20\x20Completed:\x20','\x20\x20\x20\x20\x20\x20Incomplete:\x20','join','YLfCu','\x20--include-deleted','ChYkZ','gitBranch','InEYT','bnpmL','limit','\x0a✅\x20Session\x20is\x20already\x20completed.','Multiple\x20feature\x20reviews\x20found.\x20Select\x20one:','assets','\x0a📁\x20Sessions\x20for\x20feature\x20review:\x20','canceledReason','selector','TMoZz','sessionId','includeDeleted','bMWJb','\x0a✅\x20Scenario\x20updated','type','YfNkv','70tbOCfo','length','write','rchcY','OjAoU','rulIh','\x0a❌\x20No\x20scenarios\x20found\x20to\x20edit.','\x20\x20\x20\x20\x20\x20Blocked:\x20','reports','EzNOI','terminalReason','closed','incompleteItems','scenarios','dashboardUrl','blockedReason','agentResponse','EphBC','\x0a📋\x20Feedback\x20for:\x20','Run:\x20ranger\x20create\x20\x22<name>\x22\x20to\x20create\x20a\x20new\x20feature\x20review','JkKlE','completedAt','26HGjOUb','\x20in\x20progress','output','in_progress','trimEnd','No\x20sessions\x20found.','qARiO','ready','gsQsA','\x0a❌\x20No\x20scenarios\x20found\x20to\x20include.','env','tflCZ','version','notes','1|3|5|4|0|2','\x0aCreating\x20feature\x20review...','ByhOG','umzwt','git\x20rev-parse\x20--abbrev-ref\x20HEAD','incompleteReason','\x20concluded.','status',':\x20\x22'];_0x1bb3=function(){return _0x3359fb;};return _0x1bb3();}export async function featureRestore(_0x2011fb){const _0x3613c7=_0x48552e,_0x1649de={'WvESO':function(_0x4bc2eb,_0x2df1f0,_0x4623fa){return _0x4bc2eb(_0x2df1f0,_0x4623fa);}};await restoreFeature(_0x2011fb);const _0x1f4117=await getFeature(_0x2011fb);console['log'](_0x3613c7(0x104)+_0x1f4117[_0x3613c7(0x11e)]+'\x20('+_0x2011fb+')'),_0x1649de[_0x3613c7(0xed)](displayFeature,_0x1f4117,_0x1f4117['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(_0x14ad71,_0x3a1b17){const _0x2c15f9=_0x4bd6,_0x12d9b2=_0x14ad71();while(!![]){try{const _0x18fbfa=parseInt(_0x2c15f9(0x10f))/0x1*(parseInt(_0x2c15f9(0x112))/0x2)+parseInt(_0x2c15f9(0x10b))/0x3+parseInt(_0x2c15f9(0x11e))/0x4*(-parseInt(_0x2c15f9(0x117))/0x5)+-parseInt(_0x2c15f9(0x115))/0x6+-parseInt(_0x2c15f9(0x119))/0x7*(parseInt(_0x2c15f9(0x111))/0x8)+parseInt(_0x2c15f9(0x110))/0x9+-parseInt(_0x2c15f9(0x10a))/0xa*(-parseInt(_0x2c15f9(0x10c))/0xb);if(_0x18fbfa===_0x3a1b17)break;else _0x12d9b2['push'](_0x12d9b2['shift']());}catch(_0x1bcca8){_0x12d9b2['push'](_0x12d9b2['shift']());}}}(_0x35a4,0xe42b1));import{sessionStart,sessionEnd,preCompact,postEdit,planStart,planReminder,exitPlanMode,stopHook,enable,disable,autoPrompt}from'./hooks/index.js';const HOOKS={'session-start':sessionStart,'session-end':sessionEnd,'pre-compact':preCompact,'post-edit':postEdit,'plan-start':planStart,'plan-reminder':planReminder,'exit-plan-mode':exitPlanMode,'stop':stopHook,'enable':enable,'disable':disable,'auto-prompt':autoPrompt};function _0x4bd6(_0xcf114e,_0x2caf7e){_0xcf114e=_0xcf114e-0x10a;const _0x35a419=_0x35a4();let _0x4bd6aa=_0x35a419[_0xcf114e];return _0x4bd6aa;}function _0x35a4(){const _0x93f53a=['3238NyFrYX','5168592qJGzCJ','88qeclAy','964GvKGYz','exit','oJbZg','9753114RNgkpf','Unknown\x20hook:\x20','174855qYKrFG','Valid\x20hooks:\x20','1037757uLvGnD','SIGHUP','wBQhF','wqdtF','error','44mGeqUo','20ExlZxJ','103200RbVfOz','13233737rPccOa','once','SIGTERM'];_0x35a4=function(){return _0x93f53a;};return _0x35a4();}let cancellationHandlersInstalled=![];function installCancellationHandlers(){const _0x2f1b55=_0x4bd6,_0x146d62={'wqdtF':'SIGINT','wBQhF':_0x2f1b55(0x10e)};if(cancellationHandlersInstalled)return;const _0x15496e=()=>{const _0x8c9875=_0x2f1b55;process[_0x8c9875(0x113)](0x0);};process['once'](_0x146d62[_0x2f1b55(0x11c)],_0x15496e),process[_0x2f1b55(0x10d)](_0x146d62[_0x2f1b55(0x11b)],_0x15496e),process[_0x2f1b55(0x10d)](_0x2f1b55(0x11a),_0x15496e),cancellationHandlersInstalled=!![];}export async function hook(_0x13630e,_0x54552d){const _0x4848df=_0x4bd6,_0x785774={'oJbZg':function(_0x58bc85,_0x4b1b99){return _0x58bc85(_0x4b1b99);}};installCancellationHandlers();const _0x441510=HOOKS[_0x13630e];if(!_0x441510){const _0x62a41a=Object['keys'](HOOKS)['join'](',\x20');console[_0x4848df(0x11d)](_0x4848df(0x116)+_0x13630e),console[_0x4848df(0x11d)](_0x4848df(0x118)+_0x62a41a),process[_0x4848df(0x113)](0x1);}await _0x785774[_0x4848df(0x114)](_0x441510,_0x54552d);}
@@ -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(_0x48fab5,_0x1dc38c){const _0xeee61b=_0x244b,_0x438ea3=_0x48fab5();while(!![]){try{const _0x4f3a9e=-parseInt(_0xeee61b(0x154))/0x1+parseInt(_0xeee61b(0x15b))/0x2+-parseInt(_0xeee61b(0x158))/0x3*(parseInt(_0xeee61b(0x153))/0x4)+-parseInt(_0xeee61b(0x156))/0x5+-parseInt(_0xeee61b(0x15a))/0x6+-parseInt(_0xeee61b(0x15c))/0x7+parseInt(_0xeee61b(0x157))/0x8;if(_0x4f3a9e===_0x1dc38c)break;else _0x438ea3['push'](_0x438ea3['shift']());}catch(_0x3e8118){_0x438ea3['push'](_0x438ea3['shift']());}}}(_0x18f1,0xeab4c));function _0x244b(_0x5b748b,_0x18b72b){_0x5b748b=_0x5b748b-0x153;const _0x18f1e1=_0x18f1();let _0x244bd8=_0x18f1e1[_0x5b748b];return _0x244bd8;}import{readHookInput}from'./output.js';import{isSessionEnabled,hasSessionBeenPrompted,markSessionPrompted}from'../utils/sessionCache.js';function _0x18f1(){const _0x55fdc1=['oZODm','4500642xxVntj','2129756yelmoP','7344113VinKjI','2341516KkRYwy','707433dwhkOd','log','6170890EEmoBP','33781872nXpkkC','3AYIKIg'];_0x18f1=function(){return _0x55fdc1;};return _0x18f1();}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 _0x202ebd=_0x244b,_0x1cd248={'oZODm':function(_0x4eb9dc,_0x188a30){return _0x4eb9dc(_0x188a30);}},_0x21d2d5=await readHookInput(),_0xade9c2=_0x21d2d5?.['session_id'];if(!_0xade9c2)return;if(isSessionEnabled(_0xade9c2)||_0x1cd248[_0x202ebd(0x159)](hasSessionBeenPrompted,_0xade9c2))return;_0x1cd248['oZODm'](markSessionPrompted,_0xade9c2),console[_0x202ebd(0x155)](AUTO_PROMPT_TEXT);}
@@ -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(_0x3aaf0a,_0x36d8f7){const _0x2bd149=_0x74da,_0x40b898=_0x3aaf0a();while(!![]){try{const _0x513c1c=parseInt(_0x2bd149(0xe2))/0x1+parseInt(_0x2bd149(0xe0))/0x2*(parseInt(_0x2bd149(0xd8))/0x3)+-parseInt(_0x2bd149(0xda))/0x4*(parseInt(_0x2bd149(0xdd))/0x5)+-parseInt(_0x2bd149(0xe4))/0x6+parseInt(_0x2bd149(0xd9))/0x7+-parseInt(_0x2bd149(0xdb))/0x8*(parseInt(_0x2bd149(0xe8))/0x9)+-parseInt(_0x2bd149(0xdf))/0xa;if(_0x513c1c===_0x36d8f7)break;else _0x40b898['push'](_0x40b898['shift']());}catch(_0x3dbd38){_0x40b898['push'](_0x40b898['shift']());}}}(_0x5dc3,0x31a50));import{disableSession,disableBranch,getCurrentBranch}from'../utils/sessionCache.js';import{printBlock}from'./output.js';function _0x74da(_0x39ded9,_0x5b4fff){_0x39ded9=_0x39ded9-0xd7;const _0x5dc326=_0x5dc3();let _0x74dad1=_0x5dc326[_0x39ded9];return _0x74dad1;}export async function disable(_0x38d201){const _0x393031=_0x74da,_0x3d8397={'YBeHY':function(_0x32046d,_0x3bf70b){return _0x32046d(_0x3bf70b);},'pXRdR':function(_0x1ef71d,_0x2cddc3){return _0x1ef71d!==_0x2cddc3;},'gpZuo':_0x393031(0xdc),'VyBlg':_0x393031(0xe5),'UqVbm':function(_0x30a362,_0x3389e4){return _0x30a362!==_0x3389e4;}},_0x9358b6=_0x38d201||process['env'][_0x393031(0xe1)]||'';_0x9358b6&&_0x3d8397['YBeHY'](disableSession,_0x9358b6);const _0xdd8c=getCurrentBranch();_0xdd8c&&_0xdd8c!==_0x393031(0xe5)&&_0x3d8397[_0x393031(0xe6)](_0xdd8c,_0x3d8397['gpZuo'])&&disableBranch(_0xdd8c),printBlock(_0x393031(0xd7)+(_0xdd8c&&_0xdd8c!==_0x3d8397[_0x393031(0xe7)]&&_0x3d8397['UqVbm'](_0xdd8c,_0x3d8397['gpZuo'])?_0x393031(0xde)+_0xdd8c+'\x27':'')+_0x393031(0xe3));}function _0x5dc3(){const _0x46f06b=['#\x20RANGER\x20DISABLED\x0a\x0aThe\x20user\x20has\x20expressly\x20disabled\x20Ranger\x20hooks\x20for\x20this\x20session','6PoNKWi','1370033QClPhs','29688anZvSn','72Buvowz','master','10mSYzjI','\x20and\x20branch\x20\x27','248510ewSQiM','288394PYQlaX','CLAUDE_SESSION_ID','385459eaJMbs','.\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`.','1967586LNqzie','main','pXRdR','VyBlg','298602PAEccQ'];_0x5dc3=function(){return _0x46f06b;};return _0x5dc3();}
@@ -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(_0x497e18,_0x4f6b82){const _0x22ac72=_0x5977,_0x1e13ce=_0x497e18();while(!![]){try{const _0x4600f4=parseInt(_0x22ac72(0xc7))/0x1+parseInt(_0x22ac72(0xc8))/0x2+parseInt(_0x22ac72(0xc2))/0x3+parseInt(_0x22ac72(0xc1))/0x4+parseInt(_0x22ac72(0xc9))/0x5+parseInt(_0x22ac72(0xc3))/0x6+-parseInt(_0x22ac72(0xc4))/0x7;if(_0x4600f4===_0x4f6b82)break;else _0x1e13ce['push'](_0x1e13ce['shift']());}catch(_0x57c6b1){_0x1e13ce['push'](_0x1e13ce['shift']());}}}(_0x3e35,0xaa523));function _0x3e35(){const _0x775a6=['985144foZFWt','3934848ZAKpdB','6419058qIPyFU','28074151vqkVxD','\x0a\x0a**Branch\x20\x27','ranger\x20setup','946809rOvBBh','2251288tYObSr','40150akPSUg','`\x0a\x0aA\x20browser\x20will\x20open\x20for\x20authentication.\x20A\x20human\x20needs\x20to\x20complete\x20the\x20login.\x0a','#\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`','Restart\x20your\x20OpenCode\x20session\x20after\x20setup.','bvCPs','\x0a\x0a**For\x20ANY\x20UI\x20work,\x20you\x20MUST\x20use\x20the\x20/ranger\x20skill.**\x0a\x0a','Restart\x20your\x20Claude\x20Code\x20session\x20after\x20setup.','env','BTOLF'];_0x3e35=function(){return _0x775a6;};return _0x3e35();}import{enableSession,getCurrentBranch}from'../utils/sessionCache.js';import{getToken}from'../utils/keychain.js';function _0x5977(_0x667935,_0x2c4ab7){_0x667935=_0x667935-0xbf;const _0x3e35f0=_0x3e35();let _0x5977c6=_0x3e35f0[_0x667935];return _0x5977c6;}import{getRangerSkillContent}from'../utils/skillContent.js';import{printBlock}from'./output.js';import{update}from'../update.js';export async function enable(_0x4e492c){const _0x58417e=_0x5977,_0xc45ca9={'DRLwy':_0x58417e(0xc6),'uinXP':_0x58417e(0xcc),'NQVqO':_0x58417e(0xcf),'BTOLF':function(_0x158f1b,_0x3f657c){return _0x158f1b(_0x3f657c);},'oHsee':'main','bvCPs':function(_0x5c60e8,_0x5bc8db){return _0x5c60e8!==_0x5bc8db;}},_0x169dde=_0x4e492c||process[_0x58417e(0xbf)]['CLAUDE_SESSION_ID']||'',_0x2cbc69=Boolean(_0x4e492c),_0x3f988d=await getToken();if(!_0x3f988d){const _0x586837=_0x2cbc69?'ranger\x20setup\x20--opencode':_0xc45ca9['DRLwy'],_0x3a0122=_0x2cbc69?_0xc45ca9['uinXP']:_0xc45ca9['NQVqO'];_0xc45ca9[_0x58417e(0xc0)](printBlock,_0x58417e(0xcb)+_0x586837+_0x58417e(0xca)+_0x3a0122);return;}try{await update();}catch{}_0x169dde&&_0xc45ca9['BTOLF'](enableSession,_0x169dde);const _0x5f5cde=getCurrentBranch(),_0x26f10f=_0x5f5cde&&_0x5f5cde!==_0xc45ca9['oHsee']&&_0xc45ca9[_0x58417e(0xcd)](_0x5f5cde,'master')?_0x58417e(0xc5)+_0x5f5cde+'\x27\x20is\x20now\x20enabled**\x20-\x20Ranger\x20will\x20stay\x20active\x20on\x20this\x20branch\x20across\x20sessions.':'',_0x20a4b1=getRangerSkillContent();printBlock('#\x20RANGER\x20ENABLED'+_0x26f10f+_0x58417e(0xce)+_0x20a4b1+'\x0a\x0a##\x20Quick\x20Reference\x0a\x0a**In\x20plan\x20mode:**\x20Include\x20Ranger\x20Feature\x20Review\x20Specification\x20at\x20end\x20of\x20plan.\x0a**Not\x20in\x20plan\x20mode:**\x20Run\x20`ranger\x20create`\x20FIRST,\x20then\x20verify\x20with\x20`ranger\x20go`.');}
@@ -1 +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 _0x2cfb(){const _0x4312ea=['622392fShnbe','127vqZSZh','1523490EQNanL','1155123pKiBJe','1641227fiJavx','1613854sMlDLJ','tqwPZ','436863SJZvWM','928heQvUs','5JWRukL','6VfLZRy','8kajifL'];_0x2cfb=function(){return _0x4312ea;};return _0x2cfb();}function _0x1ddf(_0xbb7a11,_0x4f9bb3){_0xbb7a11=_0xbb7a11-0x192;const _0x2cfbba=_0x2cfb();let _0x1ddf68=_0x2cfbba[_0xbb7a11];return _0x1ddf68;}(function(_0x5c5d65,_0xdda6e2){const _0xcc30a7=_0x1ddf,_0x1eb0e1=_0x5c5d65();while(!![]){try{const _0x4a6a12=-parseInt(_0xcc30a7(0x19b))/0x1*(parseInt(_0xcc30a7(0x196))/0x2)+parseInt(_0xcc30a7(0x195))/0x3+-parseInt(_0xcc30a7(0x19a))/0x4*(-parseInt(_0xcc30a7(0x197))/0x5)+-parseInt(_0xcc30a7(0x198))/0x6*(parseInt(_0xcc30a7(0x192))/0x7)+parseInt(_0xcc30a7(0x199))/0x8*(parseInt(_0xcc30a7(0x19d))/0x9)+parseInt(_0xcc30a7(0x19c))/0xa+-parseInt(_0xcc30a7(0x193))/0xb;if(_0x4a6a12===_0xdda6e2)break;else _0x1eb0e1['push'](_0x1eb0e1['shift']());}catch(_0xc54a78){_0x1eb0e1['push'](_0x1eb0e1['shift']());}}}(_0x2cfb,0x229f4));import{printBlock,getEnabledSessionId}from'./output.js';export async function exitPlanMode(_0x1c1c74){const _0x1e1c2f=_0x1ddf,_0x39f900={'tqwPZ':function(_0x2df482,_0x1e40a0){return _0x2df482(_0x1e40a0);}},_0x5a18d7=await _0x39f900[_0x1e1c2f(0x194)](getEnabledSessionId,_0x1c1c74);if(!_0x5a18d7)return;printBlock('===\x20RANGER:\x20CREATE\x20FEATURE\x20REVIEW\x20NOW\x20===\x0a\x0aYou\x20are\x20about\x20to\x20exit\x20plan\x20mode.\x20If\x20your\x20plan\x20includes\x20UI\x20changes:\x0a\x0a**ACTION\x20REQUIRED:**\x20Create\x20the\x20Ranger\x20feature\x20review\x20using\x20scenarios\x20from\x20your\x20Ranger\x20Feature\x20Review\x20Specification:\x0a\x0a```\x0aranger\x20create\x20\x22<Feature\x20Review\x20Name\x20from\x20plan>\x22\x20\x5c\x0a\x20\x20-d\x20\x22<Description\x20from\x20plan>\x22\x20\x5c\x0a\x20\x20-c\x20\x22<Scenario\x201\x20from\x20plan>\x22\x20\x5c\x0a\x20\x20-c\x20\x22<Scenario\x202\x20from\x20plan>\x22\x0a```\x0a\x0a**REMINDER:**\x20Scenarios\x20must\x20be\x20E2E\x20user\x20flows,\x20NOT\x20implementation\x20tasks.\x0a\x0a**Good:**\x20\x22User\x20can\x20log\x20in\x20with\x20valid\x20credentials\x20and\x20see\x20dashboard\x22\x0a**Bad:**\x20\x22Add\x20form\x20validation\x22\x20or\x20\x22API\x20returns\x20200\x22\x0a\x0aIf\x20you\x20did\x20NOT\x20include\x20a\x20Ranger\x20Feature\x20Review\x20Specification\x20in\x20your\x20plan,\x20go\x20back\x20and\x20add\x20one\x20before\x20proceeding.\x20See\x20/ranger\x20and\x20create.md\x20for\x20guidance.\x0a\x0a===\x20END\x20===');}
@@ -1 +1 @@
1
- (function(_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(_0x2736c3,_0x3aa1d7){var _0x993aba=_0x23b9,_0x34162a=_0x2736c3();while(!![]){try{var _0x9c642=parseInt(_0x993aba(0x1b0))/0x1+parseInt(_0x993aba(0x1a8))/0x2+-parseInt(_0x993aba(0x1ad))/0x3*(parseInt(_0x993aba(0x1ac))/0x4)+parseInt(_0x993aba(0x1a9))/0x5+parseInt(_0x993aba(0x1ae))/0x6+parseInt(_0x993aba(0x1ab))/0x7*(parseInt(_0x993aba(0x1aa))/0x8)+parseInt(_0x993aba(0x1af))/0x9*(-parseInt(_0x993aba(0x1a7))/0xa);if(_0x9c642===_0x3aa1d7)break;else _0x34162a['push'](_0x34162a['shift']());}catch(_0x4dda52){_0x34162a['push'](_0x34162a['shift']());}}}(_0x5469,0xa82ea));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 _0x23b9(_0x4054ed,_0x3632c3){_0x4054ed=_0x4054ed-0x1a7;var _0x5469d5=_0x5469();var _0x23b9ee=_0x5469d5[_0x4054ed];return _0x23b9ee;}function _0x5469(){var _0x5404b9=['95819aNkCFJ','10ltySvw','2376248yntsuN','5338780NuMlYy','8929456KpvnHR','7OklXsy','4DjvIwc','2226081CvUEmf','6598068UnmEjW','28229922lcuiBe'];_0x5469=function(){return _0x5404b9;};return _0x5469();}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 +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 _0x1e4e(_0x336f80,_0x25b314){_0x336f80=_0x336f80-0x1ce;const _0x356b3d=_0x356b();let _0x1e4e02=_0x356b3d[_0x336f80];return _0x1e4e02;}(function(_0x13ca5d,_0x545320){const _0x5add18=_0x1e4e,_0x554702=_0x13ca5d();while(!![]){try{const _0x74a88c=parseInt(_0x5add18(0x1d6))/0x1+parseInt(_0x5add18(0x1d1))/0x2+-parseInt(_0x5add18(0x1d3))/0x3*(-parseInt(_0x5add18(0x1d0))/0x4)+-parseInt(_0x5add18(0x1ce))/0x5+parseInt(_0x5add18(0x1d4))/0x6+-parseInt(_0x5add18(0x1db))/0x7+parseInt(_0x5add18(0x1cf))/0x8*(-parseInt(_0x5add18(0x1da))/0x9);if(_0x74a88c===_0x545320)break;else _0x554702['push'](_0x554702['shift']());}catch(_0xeb6541){_0x554702['push'](_0x554702['shift']());}}}(_0x356b,0xe84bb));import{isSessionEnabled}from'../utils/sessionCache.js';export function printBlock(_0x226c8e){console['log'](_0x226c8e);}export async function readHookInput(){const _0x55dadb=_0x1e4e;let _0x1e5d50='';try{for await(const _0xb9dd2a of process['stdin']){_0x1e5d50+=_0xb9dd2a;}}catch{return null;}if(!_0x1e5d50[_0x55dadb(0x1d7)]())return null;try{return JSON[_0x55dadb(0x1d5)](_0x1e5d50);}catch{return null;}}export async function getEnabledSessionId(_0x28dfc7){const _0x39f755=_0x1e4e,_0x24a734={'xjQrl':function(_0x971550){return _0x971550();},'oDeyg':function(_0x540d68,_0x3559dc){return _0x540d68(_0x3559dc);}};if(_0x28dfc7)return isSessionEnabled(_0x28dfc7)?_0x28dfc7:null;const _0x33f906=await _0x24a734['xjQrl'](readHookInput),_0x1d9e41=_0x33f906?.['session_id'];if(!_0x1d9e41||!_0x24a734[_0x39f755(0x1d9)](isSessionEnabled,_0x1d9e41))return null;return _0x1d9e41;}function _0x356b(){const _0x105739=['8895544LeiNSe','1133270dCqzss','40wiNnYS','1176956aeNAmE','663078cUHWea','pbSXc','9KcbWsW','4394460nQhzKR','parse','1301318imyAti','trim','WsKCE','oDeyg','1438299tXzUbo'];_0x356b=function(){return _0x105739;};return _0x356b();}export async function getEnabledHookContext(_0x3b3800){const _0x17b259=_0x1e4e,_0x3fa271={'WsKCE':function(_0x2afdca,_0x55361f){return _0x2afdca(_0x55361f);},'pbSXc':function(_0x1fcab1){return _0x1fcab1();}};if(_0x3b3800){if(!_0x3fa271[_0x17b259(0x1d8)](isSessionEnabled,_0x3b3800))return null;return{'sessionId':_0x3b3800,'input':{'session_id':_0x3b3800}};}const _0x20eff9=await _0x3fa271[_0x17b259(0x1d2)](readHookInput),_0x311bc8=_0x20eff9?.['session_id'];if(!_0x311bc8||!isSessionEnabled(_0x311bc8))return null;return{'sessionId':_0x311bc8,'input':_0x20eff9};}
@@ -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(_0x17281b,_0x44136b){const _0x474788=_0x419c,_0x1deae8=_0x17281b();while(!![]){try{const _0x57b920=parseInt(_0x474788(0x169))/0x1+parseInt(_0x474788(0x168))/0x2+parseInt(_0x474788(0x171))/0x3+parseInt(_0x474788(0x16b))/0x4*(parseInt(_0x474788(0x16f))/0x5)+parseInt(_0x474788(0x167))/0x6*(parseInt(_0x474788(0x170))/0x7)+parseInt(_0x474788(0x16a))/0x8+-parseInt(_0x474788(0x165))/0x9*(parseInt(_0x474788(0x16c))/0xa);if(_0x57b920===_0x44136b)break;else _0x1deae8['push'](_0x1deae8['shift']());}catch(_0x13fa2d){_0x1deae8['push'](_0x1deae8['shift']());}}}(_0x5834,0x68ecf));import{printBlock,getEnabledHookContext}from'./output.js';function _0x419c(_0x21bc77,_0x45499c){_0x21bc77=_0x21bc77-0x165;const _0x5834df=_0x5834();let _0x419c19=_0x5834df[_0x21bc77];return _0x419c19;}import{shouldShowPlanReminder}from'../utils/sessionCache.js';function _0x5834(){const _0x3c6b2b=['2376tWeSPc','170PNkmjH','plan','sessionId','185KLYbAO','7Sjmjta','1445352PWjwNk','1004373nmsPBY','===\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===','807654jGllaM','1530548mUdHCi','304458KHGQbm','4950568NSJXwx'];_0x5834=function(){return _0x3c6b2b;};return _0x5834();}export async function planReminder(_0x542893){const _0x296dfa=_0x419c,_0x16296b={'CvWpP':function(_0xb7f1bf,_0x54c5b5){return _0xb7f1bf(_0x54c5b5);}},_0x28a261=await _0x16296b['CvWpP'](getEnabledHookContext,_0x542893);if(!_0x28a261)return;if(_0x28a261['input']['permission_mode']!==_0x296dfa(0x16d))return;if(!shouldShowPlanReminder(_0x28a261[_0x296dfa(0x16e)]))return;printBlock(_0x296dfa(0x166));}
@@ -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 _0x350e(_0x1fa10b,_0x5bf3e8){_0x1fa10b=_0x1fa10b-0xbc;const _0x4343f5=_0x4343();let _0x350e8a=_0x4343f5[_0x1fa10b];return _0x350e8a;}(function(_0x400e76,_0x3eff04){const _0x2bb5df=_0x350e,_0x2e76d9=_0x400e76();while(!![]){try{const _0x1a2981=-parseInt(_0x2bb5df(0xc6))/0x1+parseInt(_0x2bb5df(0xbe))/0x2*(-parseInt(_0x2bb5df(0xc2))/0x3)+parseInt(_0x2bb5df(0xc3))/0x4+-parseInt(_0x2bb5df(0xc1))/0x5*(-parseInt(_0x2bb5df(0xc0))/0x6)+-parseInt(_0x2bb5df(0xc5))/0x7+parseInt(_0x2bb5df(0xbf))/0x8+-parseInt(_0x2bb5df(0xc4))/0x9*(-parseInt(_0x2bb5df(0xbc))/0xa);if(_0x1a2981===_0x3eff04)break;else _0x2e76d9['push'](_0x2e76d9['shift']());}catch(_0x510ba4){_0x2e76d9['push'](_0x2e76d9['shift']());}}}(_0x4343,0x76929));function _0x4343(){const _0x258dfe=['351306bPfMOf','knIam','12862730vTDmoz','YoJMv','2lbWhUG','1555096DcXCnT','1578HSqJjT','4105tXKdOr','1446186AcjWfE','798864kgWoow','9hUQPNl','4040806zYKbqt'];_0x4343=function(){return _0x258dfe;};return _0x4343();}import{printBlock,getEnabledSessionId}from'./output.js';export async function planStart(_0x5c51f9){const _0x36130d=_0x350e,_0x58d7cc={'knIam':function(_0x6ff211,_0x26ad3c){return _0x6ff211(_0x26ad3c);},'YoJMv':function(_0x10d7b3,_0x246ff0){return _0x10d7b3(_0x246ff0);}},_0x5087aa=await _0x58d7cc[_0x36130d(0xc7)](getEnabledSessionId,_0x5c51f9);if(!_0x5087aa)return;_0x58d7cc[_0x36130d(0xbd)](printBlock,'===\x20RANGER:\x20ACTION\x20REQUIRED\x20===\x0a\x0aIf\x20this\x20plan\x20involves\x20UI\x20changes,\x20you\x20MUST:\x0a\x0a1.\x20**READ\x20/ranger\x20skill**\x20-\x20specifically\x20create.md\x0a2.\x20**Add\x20a\x20Ranger\x20Feature\x20Review\x20Specification**\x20at\x20the\x20end\x20of\x20your\x20plan\x0a\x0aScenarios\x20are\x20E2E\x20test\x20flows,\x20NOT\x20implementation\x20tasks.\x0a\x0a**Good:**\x20\x22User\x20can\x20log\x20in\x20with\x20valid\x20credentials\x20and\x20see\x20dashboard\x22\x0a**Bad:**\x20\x22Add\x20form\x20validation\x22\x20or\x20\x22Button\x20is\x20visible\x22\x0a\x0aAfter\x20planning,\x20run:\x0a`ranger\x20create\x20\x22<name>\x22\x20-d\x20\x22<desc>\x22\x20-c\x20\x22<E2E\x20flow\x201>\x22\x20-c\x20\x22<E2E\x20flow\x202>\x22`\x0a\x0a===\x20END\x20===');}
@@ -1 +1 @@
1
- function _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 _0x1438(_0x407677,_0x25f3d3){_0x407677=_0x407677-0x194;const _0x319b71=_0x319b();let _0x143859=_0x319b71[_0x407677];return _0x143859;}(function(_0x2bb063,_0x337daf){const _0x3fe622=_0x1438,_0x35a183=_0x2bb063();while(!![]){try{const _0x4e5e16=parseInt(_0x3fe622(0x196))/0x1+parseInt(_0x3fe622(0x19d))/0x2+parseInt(_0x3fe622(0x19f))/0x3*(parseInt(_0x3fe622(0x19a))/0x4)+parseInt(_0x3fe622(0x198))/0x5+parseInt(_0x3fe622(0x195))/0x6*(parseInt(_0x3fe622(0x19c))/0x7)+parseInt(_0x3fe622(0x199))/0x8+parseInt(_0x3fe622(0x19b))/0x9*(-parseInt(_0x3fe622(0x194))/0xa);if(_0x4e5e16===_0x337daf)break;else _0x35a183['push'](_0x35a183['shift']());}catch(_0x2436e9){_0x35a183['push'](_0x35a183['shift']());}}}(_0x319b,0x44957));function _0x319b(){const _0x593478=['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.','1881340fsFPvC','1795496XaXkeL','244YrDSpQ','5514417LrHaKA','7xRArnx','986948WJpBRo','stringify','22476tLBmyW','PostToolUse','30JuFhZj','3129348jfsEXa','46309RtFNQy'];_0x319b=function(){return _0x593478;};return _0x319b();}import{getSessionEntry,updateBranchTracking}from'../utils/sessionCache.js';import{getToken}from'../utils/keychain.js';import{getEnabledSessionId}from'./output.js';export async function postEdit(_0x155535){const _0x22c939=_0x1438,_0x46895b={'ERrpZ':function(_0x36dc1e){return _0x36dc1e();},'RrBwL':_0x22c939(0x1a0)},_0x2d03de=await getEnabledSessionId(_0x155535);if(!_0x2d03de)return;updateBranchTracking(_0x2d03de);const _0x244d4a=await _0x46895b['ERrpZ'](getToken);if(!_0x244d4a)return;const _0x2243ad=getSessionEntry(_0x2d03de);if(_0x2243ad){const _0x14a01f={'hookSpecificOutput':{'hookEventName':_0x22c939(0x1a0),'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['stringify'](_0x14a01f));return;}const _0x54b5d2={'hookSpecificOutput':{'hookEventName':_0x46895b['RrBwL'],'additionalContext':_0x22c939(0x197)}};console['log'](JSON[_0x22c939(0x19e)](_0x54b5d2));}
@@ -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 _0x1e2a(){const _0x13f0e8=['3625152fLzFal','557268DeniYJ','7WiRxXL','===\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`.','7105505stqrVq','2047213TLkwxY','6409352CCROTT','144636bDVGNY','131126ciEajX'];_0x1e2a=function(){return _0x13f0e8;};return _0x1e2a();}function _0x3b46(_0x507b97,_0x3aa787){_0x507b97=_0x507b97-0x151;const _0x1e2aa0=_0x1e2a();let _0x3b46a0=_0x1e2aa0[_0x507b97];return _0x3b46a0;}(function(_0x407dcc,_0x333f18){const _0x141308=_0x3b46,_0x526baf=_0x407dcc();while(!![]){try{const _0x405c05=parseInt(_0x141308(0x155))/0x1*(-parseInt(_0x141308(0x152))/0x2)+parseInt(_0x141308(0x153))/0x3+-parseInt(_0x141308(0x154))/0x4+parseInt(_0x141308(0x157))/0x5+-parseInt(_0x141308(0x151))/0x6+-parseInt(_0x141308(0x158))/0x7+-parseInt(_0x141308(0x159))/0x8;if(_0x405c05===_0x333f18)break;else _0x526baf['push'](_0x526baf['shift']());}catch(_0x4da5eb){_0x526baf['push'](_0x526baf['shift']());}}}(_0x1e2a,0xdf055));import{getToken}from'../utils/keychain.js';import{printBlock,getEnabledSessionId}from'./output.js';export async function preCompact(_0x4ac8a1){const _0x5d5da3=_0x3b46,_0x2204e0={'Xdccm':function(_0x3ac514,_0x2c6452){return _0x3ac514(_0x2c6452);}},_0x3cd629=await getEnabledSessionId(_0x4ac8a1);if(!_0x3cd629)return;try{const _0x525f1f=await getToken();if(!_0x525f1f)return;_0x2204e0['Xdccm'](printBlock,_0x5d5da3(0x156));}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(_0x115185,_0x3252e9){const _0x94d44=_0x403f,_0x3a1e71=_0x115185();while(!![]){try{const _0x4312d6=parseInt(_0x94d44(0x1b8))/0x1*(parseInt(_0x94d44(0x1be))/0x2)+parseInt(_0x94d44(0x1bd))/0x3+-parseInt(_0x94d44(0x1bb))/0x4+parseInt(_0x94d44(0x1b6))/0x5*(parseInt(_0x94d44(0x1bc))/0x6)+parseInt(_0x94d44(0x1b5))/0x7*(parseInt(_0x94d44(0x1b9))/0x8)+parseInt(_0x94d44(0x1b3))/0x9+parseInt(_0x94d44(0x1b4))/0xa*(-parseInt(_0x94d44(0x1ba))/0xb);if(_0x4312d6===_0x3252e9)break;else _0x3a1e71['push'](_0x3a1e71['shift']());}catch(_0x449423){_0x3a1e71['push'](_0x3a1e71['shift']());}}}(_0x2432,0x3e302));function _0x403f(_0x12a101,_0x5d2cbc){_0x12a101=_0x12a101-0x1b3;const _0x24322f=_0x2432();let _0x403fcf=_0x24322f[_0x12a101];return _0x403fcf;}import{isSessionEnabled,recordEnabledSessionCleared}from'../utils/sessionCache.js';import{readHookInput}from'./output.js';export async function sessionEnd(_0x34b942){const _0x21371c=_0x403f,_0x5c0991={'MsJWc':function(_0x2bf542,_0x5e96da){return _0x2bf542===_0x5e96da;}},_0x5b5f94=process['env']['CLAUDE_SESSION_ID'];let _0x586d01=_0x34b942,_0x5177d6;if(!_0x34b942){if(_0x5b5f94&&!isSessionEnabled(_0x5b5f94))return;const _0x3321fe=await readHookInput();_0x586d01=_0x3321fe?.[_0x21371c(0x1bf)]||_0x5b5f94,_0x5177d6=_0x3321fe?.['reason'];}if(!_0x586d01)return;_0x5c0991['MsJWc'](_0x5177d6,_0x21371c(0x1b7))&&recordEnabledSessionCleared(_0x586d01);}function _0x2432(){const _0x1a255f=['120728jaCxUH','6JJpfss','295638DKgnkD','164tdYKGX','session_id','3357585STYeKK','285130PDpBft','287wpbYyT','2509735kHogDZ','clear','241qNyjsL','95440mLLGcI','462aHCNGZ'];_0x2432=function(){return _0x1a255f;};return _0x2432();}
@@ -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
+ function _0x374c(_0x19977e,_0x395994){_0x19977e=_0x19977e-0x191;const _0x26b6c5=_0x26b6();let _0x374cc5=_0x26b6c5[_0x19977e];return _0x374cc5;}(function(_0x47c68a,_0x14dd0e){const _0x593726=_0x374c,_0x31a220=_0x47c68a();while(!![]){try{const _0x5c6002=-parseInt(_0x593726(0x19c))/0x1*(parseInt(_0x593726(0x198))/0x2)+parseInt(_0x593726(0x194))/0x3+parseInt(_0x593726(0x197))/0x4*(parseInt(_0x593726(0x1a7))/0x5)+parseInt(_0x593726(0x19f))/0x6*(-parseInt(_0x593726(0x1a8))/0x7)+parseInt(_0x593726(0x1a9))/0x8+-parseInt(_0x593726(0x199))/0x9*(parseInt(_0x593726(0x196))/0xa)+parseInt(_0x593726(0x1a1))/0xb;if(_0x5c6002===_0x14dd0e)break;else _0x31a220['push'](_0x31a220['shift']());}catch(_0x33d75d){_0x31a220['push'](_0x31a220['shift']());}}}(_0x26b6,0x379ac));import{appendFile}from'fs/promises';import{initBranchTracking,shouldAutoEnableAfterClear,autoEnableAfterClear,isSessionEnabled,getCurrentBranch}from'../utils/sessionCache.js';function _0x26b6(){const _0x3a33f0=['431379GFtrko','source','10sWyBIN','529468pZrgqI','49558GBEQgd','1787391fkxhGV','master','success','7BqyAFt','hook:session-start','JtavM','12fiHOre','log','4243294tMTtqg','main','export\x20CLAUDE_SESSION_ID=\x22','trackCommandEnd','stringify','eRcak','5xHiTuy','234871MLLLkD','40000hQaJwE','\x20(Branch:\x20','env','FXXcq','cvLlj','JOSPH'];_0x26b6=function(){return _0x3a33f0;};return _0x26b6();}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=================================================================';export async function sessionStart(_0x5e6be1){const _0x40c653=_0x374c,_0x579947={'xzNwI':function(_0x2a83a6,_0x57078f){return _0x2a83a6||_0x57078f;},'eRcak':'session_id','cvLlj':_0x40c653(0x195),'BZoqv':function(_0xf5bd60,_0x13ea3f,_0xd887d0){return _0xf5bd60(_0x13ea3f,_0xd887d0);},'JOSPH':function(_0x355df3,_0x255ac3){return _0x355df3(_0x255ac3);},'JtavM':function(_0x48bad9,_0x10805c){return _0x48bad9(_0x10805c);},'ldNqS':_0x40c653(0x1a2),'FXXcq':_0x40c653(0x19a)};let _0x254345=_0x579947['xzNwI'](_0x5e6be1,''),_0x4c2d41;if(!_0x5e6be1){let _0x16a934='';for await(const _0x493978 of process['stdin']){_0x16a934+=_0x493978;}try{const _0x56ee2a=JSON['parse'](_0x16a934);_0x254345=_0x56ee2a[_0x579947[_0x40c653(0x1a6)]]||'',_0x4c2d41=_0x56ee2a[_0x579947[_0x40c653(0x192)]];}catch{}const _0x34af66=process[_0x40c653(0x1ab)]['CLAUDE_ENV_FILE'];if(_0x34af66&&_0x254345)try{await _0x579947['BZoqv'](appendFile,_0x34af66,_0x40c653(0x1a3)+_0x254345+'\x22\x0a');}catch{}}try{await getToken();}catch{}if(_0x254345){shouldAutoEnableAfterClear(_0x4c2d41)&&autoEnableAfterClear(_0x254345);_0x579947['JOSPH'](initBranchTracking,_0x254345);const _0x1352be=_0x579947[_0x40c653(0x19e)](isSessionEnabled,_0x254345);try{const _0x2fe50d=_0x579947[_0x40c653(0x193)](createTelemetryCollector,_0x40c653(0x19d));await _0x2fe50d['trackCommandStart']({'sessionId':_0x254345,'hooksEnabled':_0x1352be}),await _0x2fe50d[_0x40c653(0x1a4)](_0x40c653(0x19b));}catch{}if(_0x1352be){const _0x42ce69=getCurrentBranch(),_0x1420de=_0x42ce69&&_0x42ce69!==_0x579947['ldNqS']&&_0x42ce69!==_0x579947[_0x40c653(0x191)]?_0x40c653(0x1aa)+_0x42ce69+')':'',_0x58226f={'hookSpecificOutput':{'hookEventName':'SessionStart','additionalContext':RANGER_AUTO_ENABLED_PROMPT+_0x1420de}};console[_0x40c653(0x1a0)](JSON[_0x40c653(0x1a5)](_0x58226f));}}}
@@ -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(_0x597111,_0x499301){const _0xab2920=_0x43be,_0x140bbe=_0x597111();while(!![]){try{const _0x5b34a5=parseInt(_0xab2920(0x11c))/0x1*(-parseInt(_0xab2920(0x12e))/0x2)+-parseInt(_0xab2920(0x119))/0x3*(parseInt(_0xab2920(0x10d))/0x4)+parseInt(_0xab2920(0x125))/0x5*(-parseInt(_0xab2920(0x112))/0x6)+-parseInt(_0xab2920(0x117))/0x7+parseInt(_0xab2920(0x12c))/0x8*(parseInt(_0xab2920(0x11d))/0x9)+parseInt(_0xab2920(0x12a))/0xa*(parseInt(_0xab2920(0x123))/0xb)+parseInt(_0xab2920(0x12b))/0xc*(parseInt(_0xab2920(0x115))/0xd);if(_0x5b34a5===_0x499301)break;else _0x140bbe['push'](_0x140bbe['shift']());}catch(_0x3757bf){_0x140bbe['push'](_0x140bbe['shift']());}}}(_0x42df,0x51537));function _0x43be(_0xf89a52,_0x3a4168){_0xf89a52=_0xf89a52-0x10d;const _0x42dfe7=_0x42df();let _0x43be44=_0x42dfe7[_0xf89a52];return _0x43be44;}import{getToken}from'../utils/keychain.js';import{getFeature,concludeSession}from'../utils/featureApi.js';function _0x42df(){const _0x226f0f=['NejNE','679461YQiFzc','Stop','incomplete','3ULksXL','9yBvoAI','YRoLW','trackCommandStart','sDUHS','geQTs','some','396UFJAtv','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','5CPOypz','OshPi','checklistItems','hook:stop','closed','116810NQOqBu','144WFCclS','2112008yErdPt','blocked','30586kJzMYY','4tRlVpb','sessionId','verified','OTBkx','featureId','3097818etHJYQ','currentSessionId','stringify','499642fSKxNY','status','167615KXSzyk'];_0x42df=function(){return _0x226f0f;};return _0x42df();}import{getSessionEntry,shouldShowStopReminder}from'../utils/sessionCache.js';import{getEnabledHookContext}from'./output.js';import{createTelemetryCollector}from'../utils/telemetry.js';export async function stopHook(_0x1e58c3){const _0x226aa3=_0x43be,_0x48370d={'OshPi':function(_0x2475c7,_0x5aad8e){return _0x2475c7(_0x5aad8e);},'NejNE':function(_0x160a3f,_0x41ebfd,_0x101844,_0xd8da2a){return _0x160a3f(_0x41ebfd,_0x101844,_0xd8da2a);},'sDUHS':function(_0x7ccda2){return _0x7ccda2();},'geQTs':function(_0x3702b7,_0xadb8d9){return _0x3702b7&&_0xadb8d9;},'tBYNQ':function(_0x55834e,_0x1f52ec){return _0x55834e(_0x1f52ec);},'OTBkx':_0x226aa3(0x11a),'YRoLW':function(_0x45874b,_0x28ca02,_0x25defd,_0x154c87){return _0x45874b(_0x28ca02,_0x25defd,_0x154c87);}},_0x1d131f=await _0x48370d[_0x226aa3(0x126)](getEnabledHookContext,_0x1e58c3),_0x5d09d4=_0x1d131f?.[_0x226aa3(0x10e)]??null;let _0x2040b2=!![];if(!_0x5d09d4){await _0x48370d[_0x226aa3(0x118)](trackStop,_0x5d09d4,![],_0x2040b2);return;}try{const _0xedd3cd=getSessionEntry(_0x5d09d4);if(!_0xedd3cd){await trackStop(_0x5d09d4,!![],_0x2040b2);return;}const _0x22651f=await _0x48370d[_0x226aa3(0x120)](getToken),_0x4b075e='https://dashboard.ranger.net/features/'+_0xedd3cd[_0x226aa3(0x111)];let _0x536cd2=null,_0x5012e2=![],_0x33c96d=![];if(_0x22651f)try{const _0x4d166d=await getFeature(_0xedd3cd[_0x226aa3(0x111)]);_0x536cd2=_0x4d166d[_0x226aa3(0x113)]??null;const _0x411d75=_0x4d166d[_0x226aa3(0x127)]['filter'](_0x1cf0fd=>_0x1cf0fd[_0x226aa3(0x10e)]===_0x536cd2);_0x5012e2=_0x411d75[_0x226aa3(0x122)](_0x5f2ffc=>_0x5f2ffc[_0x226aa3(0x116)]!==_0x226aa3(0x10f)&&_0x5f2ffc['status']!==_0x226aa3(0x12d)&&_0x5f2ffc['status']!==_0x226aa3(0x129)&&_0x5f2ffc[_0x226aa3(0x116)]!==_0x226aa3(0x11b)),_0x33c96d=_0x411d75[_0x226aa3(0x122)](_0x2293a7=>_0x2293a7[_0x226aa3(0x116)]==='verification_in_progress');}catch{}if(_0x48370d[_0x226aa3(0x121)](_0x22651f,_0x536cd2)&&_0x5012e2){if(!_0x33c96d&&_0x48370d['tBYNQ'](shouldShowStopReminder,_0x5d09d4)){const _0x31fa81={'hookSpecificOutput':{'hookEventName':_0x48370d[_0x226aa3(0x110)],'additionalContext':_0x226aa3(0x124)+_0x4b075e}};console['log'](JSON[_0x226aa3(0x114)](_0x31fa81));}}if(_0x48370d['geQTs'](_0x22651f,_0x536cd2)&&!_0x5012e2)try{await concludeSession(_0xedd3cd['featureId'],_0x536cd2);}catch{}await _0x48370d[_0x226aa3(0x11e)](trackStop,_0x5d09d4,!![],_0x2040b2);return;}catch{await trackStop(_0x5d09d4,!![],_0x2040b2);return;}}async function trackStop(_0x11c640,_0x461543,_0x5efb9a){const _0x10aaf0=_0x43be;try{const _0x4f0981=createTelemetryCollector(_0x10aaf0(0x128));await _0x4f0981[_0x10aaf0(0x11f)]({'sessionId':_0x11c640??undefined,'hooksEnabled':_0x461543,'stopAllowed':_0x5efb9a}),await _0x4f0981['trackCommandEnd']('success');}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(_0x19fdc0,_0x5345c8){var _0x27a7a8=_0x4941,_0x36d6e5=_0x19fdc0();while(!![]){try{var _0x649560=-parseInt(_0x27a7a8(0xf1))/0x1+parseInt(_0x27a7a8(0xf0))/0x2+-parseInt(_0x27a7a8(0xf6))/0x3+parseInt(_0x27a7a8(0xee))/0x4*(-parseInt(_0x27a7a8(0xef))/0x5)+-parseInt(_0x27a7a8(0xf4))/0x6+parseInt(_0x27a7a8(0xf2))/0x7+parseInt(_0x27a7a8(0xf5))/0x8*(parseInt(_0x27a7a8(0xf3))/0x9);if(_0x649560===_0x5345c8)break;else _0x36d6e5['push'](_0x36d6e5['shift']());}catch(_0x56c0d8){_0x36d6e5['push'](_0x36d6e5['shift']());}}}(_0x4696,0xbcd5c));export{addEnv}from'./addEnv.js';export{clean}from'./clean.js';export{login}from'./login.js';export{start,ensureLocalEnv,ensureChromium,authenticate}from'./start.js';function _0x4696(){var _0x39b3ea=['172360KxLCYz','1072176ThrKSC','2844108TvpkKe','3314934WaDomm','56QzoEKc','3900825pCLXdc','567620KnRNhP','5AdOuCI','1150490AKwRkL'];_0x4696=function(){return _0x39b3ea;};return _0x4696();}export{useEnv}from'./useEnv.js';export{updateEnv}from'./updateEnv.js';export{update}from'./update.js';export{skillup}from'./skillup.js';export{envList}from'./env.js';function _0x4941(_0x415a08,_0x480d57){_0x415a08=_0x415a08-0xee;var _0x46960e=_0x4696();var _0x494122=_0x46960e[_0x415a08];return _0x494122;}export{hook}from'./hook.js';export{setupCi}from'./setupCi.js';export{migrateProfile}from'./migrateProfile.js';