@ranger-testing/ranger-cli 3.0.1-alpha.ffffb5b-28 → 3.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (85) hide show
  1. package/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/deleteProfile.js +1 -1
  7. package/build/commands/env.js +1 -1
  8. package/build/commands/feature.js +1 -1
  9. package/build/commands/hook.js +1 -1
  10. package/build/commands/hooks/autoPrompt.js +1 -1
  11. package/build/commands/hooks/disable.js +1 -1
  12. package/build/commands/hooks/enable.js +1 -1
  13. package/build/commands/hooks/exitPlanMode.js +1 -1
  14. package/build/commands/hooks/index.js +1 -1
  15. package/build/commands/hooks/output.js +1 -1
  16. package/build/commands/hooks/planReminder.js +1 -1
  17. package/build/commands/hooks/planStart.js +1 -1
  18. package/build/commands/hooks/postEdit.js +1 -1
  19. package/build/commands/hooks/preCompact.js +1 -1
  20. package/build/commands/hooks/sessionEnd.js +1 -1
  21. package/build/commands/hooks/sessionStart.js +1 -1
  22. package/build/commands/hooks/stopHook.js +1 -1
  23. package/build/commands/index.js +1 -1
  24. package/build/commands/login.js +1 -1
  25. package/build/commands/mcpBootstrap.js +1 -1
  26. package/build/commands/migrateProfile.js +1 -1
  27. package/build/commands/setup/claude.js +1 -1
  28. package/build/commands/setup/opencode.js +1 -1
  29. package/build/commands/setupCi.js +1 -1
  30. package/build/commands/skillup.js +1 -1
  31. package/build/commands/start.js +1 -1
  32. package/build/commands/status.js +1 -1
  33. package/build/commands/update.js +1 -1
  34. package/build/commands/updateEnv.js +1 -1
  35. package/build/commands/useEnv.js +1 -1
  36. package/build/commands/utils/activeProfile.js +1 -1
  37. package/build/commands/utils/agentEnv.js +1 -1
  38. package/build/commands/utils/browserSessionsApi.js +1 -1
  39. package/build/commands/utils/claudeConfig.js +1 -1
  40. package/build/commands/utils/claudeOverrideSettings.js +1 -1
  41. package/build/commands/utils/claudePlugin.js +1 -1
  42. package/build/commands/utils/cloudProfile.js +1 -1
  43. package/build/commands/utils/cloudProfileSession.js +1 -1
  44. package/build/commands/utils/crypto.js +1 -1
  45. package/build/commands/utils/desirePathLog.js +1 -1
  46. package/build/commands/utils/deviceAuth.js +1 -1
  47. package/build/commands/utils/environment.js +1 -1
  48. package/build/commands/utils/featureApi.js +1 -1
  49. package/build/commands/utils/fixWebmDuration.js +1 -1
  50. package/build/commands/utils/gitTracked.js +1 -1
  51. package/build/commands/utils/keychain.js +1 -1
  52. package/build/commands/utils/legacyWarning.js +1 -1
  53. package/build/commands/utils/localAgentInstallationsApi.js +1 -1
  54. package/build/commands/utils/matchAuthEnvironment.js +1 -1
  55. package/build/commands/utils/mcpImageBase64.js +1 -1
  56. package/build/commands/utils/model.js +1 -1
  57. package/build/commands/utils/novaActCli.js +1 -1
  58. package/build/commands/utils/opencodeConfig.js +1 -1
  59. package/build/commands/utils/organizationEnvApi.js +1 -0
  60. package/build/commands/utils/playwrightCli.js +1 -1
  61. package/build/commands/utils/profileMessages.js +1 -1
  62. package/build/commands/utils/profileSetupBanner.js +1 -1
  63. package/build/commands/utils/projectsConfig.js +1 -1
  64. package/build/commands/utils/rangerConfig.js +1 -1
  65. package/build/commands/utils/rangerRoot.js +1 -1
  66. package/build/commands/utils/rangerwrightCli.js +1 -0
  67. package/build/commands/utils/resolveProfileContext.js +1 -1
  68. package/build/commands/utils/resolveProfileUrl.js +1 -1
  69. package/build/commands/utils/retry.js +1 -1
  70. package/build/commands/utils/sessionCache.js +1 -1
  71. package/build/commands/utils/settings.js +1 -1
  72. package/build/commands/utils/skillContent.js +1 -1
  73. package/build/commands/utils/skills.js +1 -1
  74. package/build/commands/utils/stitchWebmFiles.js +1 -1
  75. package/build/commands/utils/telemetry.js +1 -1
  76. package/build/commands/utils/tokenRefresh.js +1 -1
  77. package/build/commands/utils/traceSnapshotMapper.js +1 -1
  78. package/build/commands/utils/tunnelClient.js +1 -0
  79. package/build/commands/utils/userApi.js +1 -1
  80. package/build/commands/utils/version.js +1 -1
  81. package/build/commands/verifyFeature.js +1 -1
  82. package/build/commands/verifyFeatureCli.js +1 -1
  83. package/build/commands/verifyFeatureNovaCli.js +1 -1
  84. package/build/commands/verifyFeatureRangerwrightCli.js +1 -0
  85. package/package.json +4 -1
@@ -1 +1 @@
1
- const _0x51e629=_0x2320;(function(_0x4cc1cf,_0x340bd6){const _0x102093=_0x2320,_0x418e94=_0x4cc1cf();while(!![]){try{const _0x3a596b=parseInt(_0x102093(0xc0))/0x1+-parseInt(_0x102093(0xdb))/0x2*(-parseInt(_0x102093(0x12e))/0x3)+parseInt(_0x102093(0x115))/0x4+-parseInt(_0x102093(0x112))/0x5+-parseInt(_0x102093(0x133))/0x6*(parseInt(_0x102093(0xcb))/0x7)+-parseInt(_0x102093(0xaa))/0x8*(parseInt(_0x102093(0x12a))/0x9)+parseInt(_0x102093(0x10d))/0xa;if(_0x3a596b===_0x340bd6)break;else _0x418e94['push'](_0x418e94['shift']());}catch(_0x1c8618){_0x418e94['push'](_0x418e94['shift']());}}}(_0x3ff7,0x35c2d));import{readFile,writeFile,mkdir}from'fs/promises';import{join}from'path';import{existsSync}from'fs';import{execSync}from'child_process';function _0x3ff7(){const _0xbe58fc=['\x20unaddressed\x20comment(s)','tqURI','stringify','ckkKS','EYdXZ','ffUln','error','en-US','\x20\x20\x20\x20\x20\x20Incomplete:\x20','\x1b[1m','currentSessionId','blockedReason','\x20verified','No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.','type','gitBranch','XOVRR','stepName','excludeScenarios','WNCrC','\x20\x20\x20','\x0a➡️\x20\x20Set\x20as\x20active\x20feature\x20review','PwYGa','\x20\x20\x20The\x20feature\x20review\x20is\x20now\x20ready\x20for\x20human\x20review\x20on\x20the\x20Ranger\x20dashboard.','QdSGR','\x20>\x20','Please\x20specify\x20the\x20feature\x20review\x20ID:\x20ranger\x20resume\x20<id>','trim','isTTY','textContent','Nzffr','lZliM','KsRjz','asNSb','sessionId','blocked','1902900xzjHcd','checklistItems','hepHy','No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','git\x20rev-parse\x20--abbrev-ref\x20HEAD','504040vGijXq','submittedAt','closed','985844eDIUIX','\x20\x20\x20\x20\x20ID:\x20','\x20/\x20','split','\x0a✅\x20Resumed\x20feature\x20review:\x20','\x0aAvailable\x20scenarios:','from','incompleteReason','unaddressedComments','active-feature.txt','BmCMX','yhMcv','content','round','iBsuZ','aNRlq','\x0a✅\x20Restored\x20feature\x20review:\x20','env','assets','description','\x20of\x20','79875eFfBSZ','all','euMpy','Multiple\x20feature\x20reviews\x20found.\x20Select\x20one:','30vFmnCn','/api/v1/mcp/browser-sessions/','prompt','github.com/','name','348heYcFb','latestReview','join','totalCount','jVDHX','CrSob','yTljB','qxvLn','Unknown','uGrdt','\x0a✅\x20Session\x20','\x1b[0m','offset','/artifacts/','vjToU','QhIwN','vWVGm','PaYlf','xosGB','\x20\x20\x20\x20\x20📷\x20Screenshot:\x20','Next\x20page:\x20ranger\x20list\x20--offset\x20','\x20\x20\x20\x20\x20\x20Approved','qDDPa','toFixed','CtMoI','INCut','Current\x20session\x20not\x20found.','assetType','\x20—\x20no\x20comments','InHrP','pVyEc','\x20blocked','assetUrl','mfuzM','oYAul','twFrw','kyjVN','\x0a✅\x20Feature\x20review\x20created:\x20','TBPAk','qwSKB','wbqHN','completedAt','\x0a❌\x20Invalid\x20scenario\x20number(s):\x20','repeat','filter','\x0a❌\x20Invalid\x20scenario\x20index:\x20','utf-8','No\x20scenarios\x20found.','Cannot\x20conclude\x20session\x20with\x20status:\x20','):\x20\x22','mLWhC','stats','hCFUs','screenshotUrls','fTFWz','TeLYx','notes','OWgCt','iteration','\x20in\x20progress','\x20\x20\x20Branch:\x20','\x0a✅\x20Session\x20is\x20already\x20completed.','\x0aConcluding\x20session...','zLsqh','pipe','status','\x20\x20✅\x20No\x20feedback\x20to\x20address','No\x20sessions\x20found.','pop','dashboardUrl','\x20\x20\x20Repository:\x20','aPQZN','write','bbtQn','Scenario\x20','\x0a❌\x20Cannot\x20edit\x20scenario:\x20feature\x20review\x20has\x20an\x20active\x20review.','verificationInProgressItems','BXQra','adDCB','spatial','find','BFvMj','log','336kaWBLo','arrayBuffer','dhZgi','map','\x20\x20Expected\x20flow:','exit','point','get',':\x20\x22','terminalReason','iUbOZ','\x0a❌\x20No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.','blockedItems','pFLjK','\x20--current-branch','SirGZ','ajkZS','verified','\x0a✅\x20Report\x20generated:\x20','items','version','canceledReason','394144BZwXhe','completed','limit','\x20[has\x20reviewer\x20feedback]','.png','position','screenshot','length','replace','currentBranch','\x0aNon-interactive\x20mode\x20detected.\x20Multiple\x20feature\x20reviews\x20found:','50113BPfgNC','srcUl','\x20\x20\x20Progress:\x20','domRef','warn','selector','after','lVGOC','push','ZtGoQ','reports','RANGER_TEST_USERNAME','peMSA','\x20\x20\x20\x20\x20📋\x20Selector:\x20','\x20\x20\x20Created:\x20','ckwiE','55618BiUgGQ','\x20(v','rvFsH','coordinates','\x20\x20\x20ID:\x20','in_progress','SsBmG','CLAUDE_SESSION_ID','Please\x20finish\x20your\x20review\x20first:','canonicalFlow','toLocaleString','stdout','comment_','\x0a❌\x20No\x20scenarios\x20found\x20to\x20edit.'];_0x3ff7=function(){return _0xbe58fc;};return _0x3ff7();}import _0x359ea9 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=_0x51e629(0x11e),bold=_0x4ae1f4=>_0x51e629(0xf2)+_0x4ae1f4+_0x51e629(0x13e);function getGitRepoUrl(){const _0x5d19a2=_0x51e629,_0x3e1ff9={'TbGaS':function(_0x1f94a3,_0x4f943d,_0xb6f1b8){return _0x1f94a3(_0x4f943d,_0xb6f1b8);},'aPQZN':'git\x20remote\x20get-url\x20origin','rXEty':'utf-8','lVGOC':_0x5d19a2(0x97)};try{const _0x3c420b=_0x3e1ff9['TbGaS'](execSync,_0x3e1ff9[_0x5d19a2(0x9e)],{'encoding':_0x3e1ff9['rXEty'],'stdio':[_0x3e1ff9[_0x5d19a2(0xd2)],'pipe',_0x5d19a2(0x97)]})[_0x5d19a2(0x104)]();return _0x3c420b['replace'](/\.git$/,'')['replace'](/^git@github\.com:/,_0x5d19a2(0x131))[_0x5d19a2(0xc8)](/^https?:\/\//,'');}catch{return undefined;}}function getGitBranch(){const _0x29ea68=_0x51e629,_0x34921d={'mfuzM':_0x29ea68(0x111),'qwSKB':_0x29ea68(0x161),'iUbOZ':'pipe'};try{return execSync(_0x34921d[_0x29ea68(0x154)],{'encoding':_0x34921d[_0x29ea68(0x15a)],'stdio':[_0x34921d[_0x29ea68(0xb4)],_0x34921d[_0x29ea68(0xb4)],'pipe']})[_0x29ea68(0x104)]();}catch{return undefined;}}export async function getActiveFeatureId(){const _0x3619b3=_0x51e629,_0x28a1bd={'TeLYx':function(_0x5d819b,_0x1273e5,_0x4f9bea){return _0x5d819b(_0x1273e5,_0x4f9bea);}},_0x4142db=join(getRangerDir(),ACTIVE_FEATURE_FILE);if(!existsSync(_0x4142db))return null;try{const _0x404ded=await _0x28a1bd[_0x3619b3(0x16a)](readFile,_0x4142db,'utf-8');return _0x404ded[_0x3619b3(0x104)]()||null;}catch{return null;}}async function setActiveFeatureId(_0x22ff9){const _0x463099=_0x51e629,_0x1d527c={'Sdrny':function(_0x147acd,_0xd58bf9,_0x2c7548){return _0x147acd(_0xd58bf9,_0x2c7548);}},_0x52fea1=getRangerDir(),_0x1da4d5=join(_0x52fea1,ACTIVE_FEATURE_FILE);!existsSync(_0x52fea1)&&await _0x1d527c['Sdrny'](mkdir,_0x52fea1,{'recursive':!![]}),await writeFile(_0x1da4d5,_0x22ff9,_0x463099(0x161));}function getProgressDisplay(_0x4f1ff0){const _0x28455f=_0x51e629,_0x229a6d={'njQgD':function(_0x22f43b,_0x17c885){return _0x22f43b+_0x17c885;},'bbasl':function(_0x266b04,_0x1e975b){return _0x266b04+_0x1e975b;},'dckNy':function(_0x17eac5,_0x2f39b6){return _0x17eac5*_0x2f39b6;},'YvGEB':function(_0x3db70c,_0x457c91){return _0x3db70c/_0x457c91;},'KsRjz':function(_0x2dc64b,_0xa11e97){return _0x2dc64b>_0xa11e97;}},_0x2158c5=_0x4f1ff0['verifiedItems']||0x0,_0x29db9f=_0x4f1ff0[_0x28455f(0xa3)]||0x0,_0xcad583=_0x4f1ff0[_0x28455f(0xb6)]||0x0,_0x7ae098=_0x4f1ff0['incompleteItems']||0x0,_0x45bf4d=_0x4f1ff0['pendingItems']||0x0,_0x2d9c0c=_0x229a6d['njQgD'](_0x229a6d['bbasl'](_0x2158c5,_0x29db9f),_0xcad583)+_0x7ae098+_0x45bf4d;if(_0x2d9c0c===0x0)return'-';const _0x8ad574=0xa,_0x18a592=Math[_0x28455f(0x122)](_0x229a6d['dckNy'](_0x229a6d['YvGEB'](_0x2158c5,_0x2d9c0c),_0x8ad574)),_0x3eef78=_0x229a6d['bbasl']('█'[_0x28455f(0x15e)](_0x18a592),'░'['repeat'](_0x8ad574-_0x18a592)),_0x329a07=[];if(_0xcad583>0x0)_0x329a07[_0x28455f(0xd3)](_0xcad583+_0x28455f(0x152));if(_0x229a6d['KsRjz'](_0x7ae098,0x0))_0x329a07[_0x28455f(0xd3)](_0x7ae098+'\x20incomplete');if(_0x29db9f>0x0)_0x329a07[_0x28455f(0xd3)](_0x29db9f+_0x28455f(0x16e));const _0x4fbf63=_0x229a6d[_0x28455f(0x109)](_0x329a07[_0x28455f(0xc7)],0x0)?'\x20('+_0x329a07['join'](',\x20')+')':'';return _0x3eef78+'\x20'+_0x2158c5+'/'+_0x2d9c0c+_0x28455f(0xf5)+_0x4fbf63;}function getCurrentSessionItems(_0x1e2e61,_0x33e7cd){const _0x4542dd=_0x51e629;if(!_0x1e2e61['currentSessionId'])return _0x33e7cd[_0x4542dd(0x15f)](_0x597b68=>!_0x597b68['sessionId']);return _0x33e7cd[_0x4542dd(0x15f)](_0x51a961=>_0x51a961[_0x4542dd(0x10b)]===_0x1e2e61[_0x4542dd(0xf3)]||!_0x51a961[_0x4542dd(0x10b)]);}function displayFeature(_0x400f7d,_0x5041e2){const _0x3e02ef=_0x51e629,_0x5dcb64={'IlquN':'\x0a\x20\x20\x20Scenarios:','TBPAk':_0x3e02ef(0x114),'QhIwN':function(_0x206c25,_0x1b9346){return _0x206c25===_0x1b9346;},'ZtGoQ':function(_0x2f9433,_0x113d1d){return _0x2f9433===_0x113d1d;},'zEvpt':'verified','xosGB':function(_0x3cac72,_0x2db94d){return _0x3cac72===_0x2db94d;},'CQvcW':'incomplete','BFvMj':function(_0x57c7ed,_0x9419ad){return _0x57c7ed>_0x9419ad;},'RwjZn':function(_0x43d24c,_0x188620){return _0x43d24c!==_0x188620;},'aSFYW':_0x3e02ef(0xc3),'WifAx':function(_0x542c22,_0x41d4f0){return _0x542c22===_0x41d4f0;},'mLWhC':function(_0x3a550f,_0x4b302e){return _0x3a550f===_0x4b302e;}};console['log']('\x0a'+_0x400f7d['name']+'\x20('+_0x400f7d[_0x3e02ef(0x9c)]+')');_0x400f7d['stats']&&console['log'](_0x3e02ef(0xcd)+getProgressDisplay(_0x400f7d[_0x3e02ef(0x166)]));_0x400f7d['description']&&console[_0x3e02ef(0xa9)]('\x20\x20\x20Description:\x20'+_0x400f7d['description']);_0x400f7d['gitRepoUrl']&&console['log'](_0x3e02ef(0x9d)+_0x400f7d['gitRepoUrl']);_0x400f7d[_0x3e02ef(0xf8)]&&console['log']('\x20\x20\x20Branch:\x20'+_0x400f7d['gitBranch']);console[_0x3e02ef(0xa9)]('\x20\x20\x20Created:\x20'+new Date(_0x400f7d['createdAt'])[_0x3e02ef(0xe5)]());_0x400f7d['completedAt']&&console['log']('\x20\x20\x20Completed:\x20'+new Date(_0x400f7d[_0x3e02ef(0x15c)])['toLocaleString']());if(_0x5041e2&&_0x5041e2['length']>0x0){console[_0x3e02ef(0xa9)](_0x5dcb64['IlquN']);for(let _0x1ae527=0x0;_0x1ae527<_0x5041e2['length'];_0x1ae527++){const _0x242501=_0x5041e2[_0x1ae527];let _0x2bde64;if(_0x242501['status']===_0x5dcb64[_0x3e02ef(0x159)]&&_0x5dcb64[_0x3e02ef(0x142)](_0x242501[_0x3e02ef(0xb3)],'approved'))_0x2bde64='✅';else{if(_0x5dcb64[_0x3e02ef(0xd4)](_0x242501['status'],_0x5dcb64['zEvpt']))_0x2bde64='🟢';else{if(_0x5dcb64['xosGB'](_0x242501[_0x3e02ef(0x98)],_0x5dcb64['CQvcW']))_0x2bde64='🟠';else{if(_0x242501[_0x3e02ef(0x98)]==='blocked')_0x2bde64='🛑';else{if(_0x242501[_0x3e02ef(0x98)]===_0x3e02ef(0x114))_0x2bde64='⛔';else _0x5dcb64[_0x3e02ef(0xd4)](_0x242501['status'],'verification_in_progress')?_0x2bde64='⏳':_0x2bde64='⬜';}}}}const _0x11cd80=_0x242501[_0x3e02ef(0xbe)]>0x1?_0x3e02ef(0xdc)+_0x242501['version']+')':'',_0x568e3a=_0x5dcb64[_0x3e02ef(0xa8)](_0x242501[_0x3e02ef(0xbe)],0x1)&&_0x242501['parentItemId']&&_0x5dcb64['RwjZn'](_0x242501['status'],_0x5dcb64[_0x3e02ef(0x159)])&&_0x242501[_0x3e02ef(0x98)]!==_0x5dcb64['zEvpt']?_0x5dcb64['aSFYW']:'';console[_0x3e02ef(0xa9)](_0x3e02ef(0xfd)+(_0x1ae527+0x1)+'.\x20'+_0x2bde64+'\x20'+_0x242501['description']+_0x11cd80+_0x568e3a);_0x242501['status']===_0x3e02ef(0x10c)&&_0x242501['blockedReason']&&console[_0x3e02ef(0xa9)]('\x20\x20\x20\x20\x20\x20Blocked:\x20'+_0x242501['blockedReason']);_0x242501['status']===_0x5dcb64['CQvcW']&&_0x242501['incompleteReason']&&console['log'](_0x3e02ef(0xf1)+_0x242501[_0x3e02ef(0x11c)]);if(_0x5dcb64['WifAx'](_0x242501[_0x3e02ef(0x98)],_0x5dcb64['TBPAk'])&&_0x5dcb64[_0x3e02ef(0x165)](_0x242501[_0x3e02ef(0xb3)],'approved'))console[_0x3e02ef(0xa9)](_0x3e02ef(0x148));else _0x5dcb64[_0x3e02ef(0x145)](_0x242501['status'],_0x5dcb64['TBPAk'])&&_0x242501['canceledReason']&&console[_0x3e02ef(0xa9)]('\x20\x20\x20\x20\x20\x20Cancelled:\x20'+_0x242501['canceledReason']);}}}export async function featureCreate(_0x3a5f52,_0x98ac2d){const _0x1a5a97=_0x51e629,_0x1a9c8b={'ffUln':function(_0x393895){return _0x393895();},'ckkKS':function(_0x37ed8e,_0x571363){return _0x37ed8e===_0x571363;},'buekQ':function(_0x4531a6){return _0x4531a6();},'pVyEc':function(_0x2dff38,_0x12ff4d,_0x56083f){return _0x2dff38(_0x12ff4d,_0x56083f);}},{envNames:_0x2e11ce}=await getEnvNames();if(_0x2e11ce['length']===0x0&&!process[_0x1a5a97(0x126)][_0x1a5a97(0xd6)]){let _0x203b0=0x0;try{_0x203b0=(await _0x1a9c8b[_0x1a5a97(0xee)](listCloudProfiles))['length'];}catch{_0x203b0=0x1;}_0x1a9c8b[_0x1a5a97(0xec)](_0x203b0,0x0)&&console[_0x1a5a97(0xcf)]('\x0a'+formatProfileRequiredMessage(_0x25b0eb=>bold(_0x25b0eb)));}const _0x1e460b=_0x98ac2d['scenarios']?_0x98ac2d['scenarios']['map'](_0x34e009=>_0x34e009[_0x1a5a97(0x104)]()):[],_0xceef41=_0x1a9c8b['ffUln'](getGitRepoUrl),_0x4db550=_0x1a9c8b['buekQ'](getGitBranch);console['log']('\x0aCreating\x20feature\x20review...');const _0x1fbaea=await createFeature({'name':_0x3a5f52,'description':_0x98ac2d[_0x1a5a97(0x128)],'checklist':_0x1e460b,'gitRepoUrl':_0xceef41,'gitBranch':_0x4db550});await setActiveFeatureId(_0x1fbaea['id']),await tryStartCurrentSession(_0x1fbaea['id']);const _0x1aea6c=process[_0x1a5a97(0x126)]['CLAUDE_SESSION_ID'];_0x1aea6c&&registerSession(_0x1aea6c,_0x1fbaea['id']),console[_0x1a5a97(0xa9)](_0x1a5a97(0x158)+_0x1fbaea['id']),_0x1a9c8b[_0x1a5a97(0x151)](displayFeature,_0x1fbaea,_0x1fbaea[_0x1a5a97(0x10e)]),console[_0x1a5a97(0xa9)](_0x1a5a97(0xfe));}export async function featureList(_0x2447eb){const _0x537cd6=_0x51e629,_0x4cbe53={'VEgnV':function(_0x5c7ea3,_0x5cc819){return _0x5c7ea3>_0x5cc819;},'hepHy':function(_0x1f3187,_0x1419d6){return _0x1f3187<_0x1419d6;},'vjToU':'\x20--include-deleted'},_0x5170ce={'limit':_0x2447eb[_0x537cd6(0xc2)]??0xa,'offset':_0x2447eb[_0x537cd6(0x13f)]??0x0,'includeDeleted':_0x2447eb['includeDeleted']};_0x2447eb[_0x537cd6(0xc9)]&&(_0x5170ce['gitRepoUrl']=getGitRepoUrl(),_0x5170ce['gitBranch']=getGitBranch());const _0x53f02=await listFeatures(_0x5170ce);if(_0x53f02[_0x537cd6(0xbd)]['length']===0x0){console['log']('\x0aNo\x20feature\x20reviews\x20found.');return;}const _0x23337d=_0x4cbe53['VEgnV'](_0x53f02['totalCount'],_0x53f02[_0x537cd6(0xbd)][_0x537cd6(0xc7)])?'Showing\x20'+_0x53f02[_0x537cd6(0xbd)]['length']+_0x537cd6(0x129)+_0x53f02['totalCount']:_0x53f02[_0x537cd6(0x136)]+'\x20feature\x20review(s)\x20found';console[_0x537cd6(0xa9)]('\x0a'+_0x23337d+':\x0a');for(const _0x28ac92 of _0x53f02['items']){console['log'](''+_0x28ac92['name']),console[_0x537cd6(0xa9)](_0x537cd6(0xdf)+_0x28ac92['id']),_0x28ac92[_0x537cd6(0x166)]&&console[_0x537cd6(0xa9)](_0x537cd6(0xcd)+getProgressDisplay(_0x28ac92[_0x537cd6(0x166)])),_0x28ac92[_0x537cd6(0xf8)]&&console[_0x537cd6(0xa9)](_0x537cd6(0x16f)+_0x28ac92[_0x537cd6(0xf8)]),console[_0x537cd6(0xa9)](_0x537cd6(0xd9)+new Date(_0x28ac92['createdAt'])['toLocaleDateString']()),console[_0x537cd6(0xa9)]('');}const _0x5c0909=_0x5170ce['limit']??0xa,_0x1cf7b9=(_0x5170ce['offset']??0x0)+_0x53f02['items'][_0x537cd6(0xc7)];if(_0x4cbe53[_0x537cd6(0x10f)](_0x1cf7b9,_0x53f02['totalCount'])){const _0xc42797=_0x5c0909!==0xa?'\x20--limit\x20'+_0x5c0909:'',_0x3bb3c5=_0x2447eb[_0x537cd6(0xc9)]?_0x537cd6(0xb8):'',_0x2eef49=_0x2447eb['includeDeleted']?_0x4cbe53[_0x537cd6(0x141)]:'';console[_0x537cd6(0xa9)](_0x537cd6(0x147)+_0x1cf7b9+_0xc42797+_0x3bb3c5+_0x2eef49);}}export async function featureShow(_0x529230){const _0x5498fd=_0x51e629,_0x165d42={'yTljB':function(_0x3d1546,_0x3eebf8){return _0x3d1546(_0x3eebf8);},'czNKn':function(_0x47968e,_0x33ce80,_0x5562d3){return _0x47968e(_0x33ce80,_0x5562d3);}},_0x532235=_0x529230||await getActiveFeatureId();if(!_0x532235)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 _0x2e0084=await _0x165d42[_0x5498fd(0x139)](getFeature,_0x532235);_0x165d42['czNKn'](displayFeature,_0x2e0084,_0x2e0084[_0x5498fd(0x10e)]);}export async function featureResume(_0x22c44a){const _0x743eb3=_0x51e629,_0x4d14d8={'OWgCt':function(_0x5a81c3,_0x3bd141){return _0x5a81c3(_0x3bd141);},'peMSA':function(_0x295ee4,_0x52edf2){return _0x295ee4(_0x52edf2);},'INCut':function(_0x372267){return _0x372267();},'eqHBl':function(_0x2273e9,_0x4c727c){return _0x2273e9!==_0x4c727c;},'srcUl':function(_0x24bdeb,_0x3d828c,_0x27cf79){return _0x24bdeb(_0x3d828c,_0x27cf79);},'ckwiE':function(_0xe13937,_0x12adf3){return _0xe13937(_0x12adf3);},'qxvLn':function(_0x25d4c0,_0xb60763){return _0x25d4c0&&_0xb60763;},'jVDHX':'any','uPFXq':function(_0x55bb3c,_0x3b43ea){return _0x55bb3c||_0x3b43ea;},'bbtQn':'\x0aNo\x20matching\x20active\x20feature\x20reviews\x20found.','jvdGs':_0x743eb3(0x103),'pFLjK':_0x743eb3(0x12d),'asNSb':function(_0x3e68b9,_0x497efa){return _0x3e68b9(_0x497efa);}};if(_0x22c44a){const _0x3f96a1=await _0x4d14d8['OWgCt'](getFeature,_0x22c44a);await _0x4d14d8[_0x743eb3(0xd7)](setActiveFeatureId,_0x3f96a1['id']);const _0x3312f1=_0x4d14d8[_0x743eb3(0x14c)](getGitBranch);_0x3312f1&&_0x4d14d8['eqHBl'](_0x3312f1,_0x3f96a1[_0x743eb3(0xf8)])&&(await updateFeature(_0x3f96a1['id'],{'gitBranch':_0x3312f1}),console[_0x743eb3(0xa9)]('\x20\x20\x20Updated\x20branch\x20to:\x20'+_0x3312f1));console[_0x743eb3(0xa9)]('\x0a✅\x20Resumed\x20feature\x20review:\x20'+_0x3f96a1['name']+'\x20('+_0x3f96a1['id']+')'),await _0x4d14d8[_0x743eb3(0x16c)](tryStartCurrentSession,_0x3f96a1['id']);const _0x1c03e3=process['env'][_0x743eb3(0xe2)];_0x1c03e3&&_0x4d14d8['srcUl'](registerSession,_0x1c03e3,_0x3f96a1['id']);displayFeature(_0x3f96a1,_0x3f96a1[_0x743eb3(0x10e)]),await _0x4d14d8[_0x743eb3(0xda)](printFeedbackNudge,_0x3f96a1['id']);return;}const _0x518100=_0x4d14d8[_0x743eb3(0x14c)](getGitRepoUrl),_0x9eae93=getGitBranch();if(_0x4d14d8[_0x743eb3(0x13a)](!_0x518100,!_0x9eae93))throw new Error('Not\x20in\x20a\x20git\x20repository.');console[_0x743eb3(0xa9)]('\x0aSearching\x20for\x20feature\x20reviews\x20matching:\x20'+(_0x518100||_0x4d14d8[_0x743eb3(0x137)])+_0x743eb3(0x117)+_0x4d14d8['uPFXq'](_0x9eae93,'any')+'...');const _0x53141a=await listFeatures({'gitRepoUrl':_0x518100,'gitBranch':_0x9eae93}),_0x1dcb24=_0x53141a['items'][_0x743eb3(0x15f)](_0x486a98=>_0x486a98[_0x743eb3(0x98)]?_0x486a98[_0x743eb3(0x98)]!==_0x743eb3(0xbb):!_0x486a98[_0x743eb3(0x15c)]);if(_0x1dcb24[_0x743eb3(0xc7)]===0x0){console['log'](_0x4d14d8[_0x743eb3(0xa0)]),console[_0x743eb3(0xa9)]('Run:\x20ranger\x20create\x20\x22<name>\x22\x20to\x20create\x20a\x20new\x20feature\x20review');return;}let _0x39fff6;if(_0x1dcb24['length']===0x1)_0x39fff6=_0x1dcb24[0x0];else{const _0x29bdb0=process['stdin']['isTTY']&&process[_0x743eb3(0xe6)][_0x743eb3(0x105)];if(!_0x29bdb0){console[_0x743eb3(0xa9)](_0x743eb3(0xca));for(const _0xeb609b of _0x1dcb24){console[_0x743eb3(0xa9)]('\x20\x20'+_0xeb609b[_0x743eb3(0x132)]),console['log'](_0x743eb3(0x116)+_0xeb609b['id']),_0xeb609b['stats']&&console['log']('\x20\x20\x20\x20\x20Progress:\x20'+getProgressDisplay(_0xeb609b['stats'])),_0xeb609b['gitBranch']&&console['log']('\x20\x20\x20\x20\x20Branch:\x20'+_0xeb609b[_0x743eb3(0xf8)]);}throw new Error(_0x4d14d8['jvdGs']);}const {selected:_0x4956a0}=await _0x359ea9[_0x743eb3(0x130)]([{'type':'list','name':'selected','message':_0x4d14d8[_0x743eb3(0xb7)],'choices':_0x1dcb24['map'](_0x535cb=>({'name':_0x535cb[_0x743eb3(0x132)]+'\x20('+_0x535cb['id']+')','value':_0x535cb['id']}))}]);_0x39fff6=_0x1dcb24[_0x743eb3(0xa7)](_0x13693b=>_0x13693b['id']===_0x4956a0);}await _0x4d14d8[_0x743eb3(0x10a)](setActiveFeatureId,_0x39fff6['id']);_0x9eae93&&_0x4d14d8['eqHBl'](_0x9eae93,_0x39fff6['gitBranch'])&&(await _0x4d14d8['srcUl'](updateFeature,_0x39fff6['id'],{'gitBranch':_0x9eae93}),console[_0x743eb3(0xa9)]('\x20\x20\x20Updated\x20branch\x20to:\x20'+_0x9eae93));console['log'](_0x743eb3(0x119)+_0x39fff6[_0x743eb3(0x132)]+'\x20('+_0x39fff6['id']+')'),await tryStartCurrentSession(_0x39fff6['id']);const _0x5c131f=await getFeature(_0x39fff6['id']),_0x1a186f=process[_0x743eb3(0x126)]['CLAUDE_SESSION_ID'];_0x1a186f&&_0x4d14d8[_0x743eb3(0xcc)](registerSession,_0x1a186f,_0x5c131f['id']),_0x4d14d8[_0x743eb3(0xcc)](displayFeature,_0x5c131f,_0x5c131f['checklistItems']),await _0x4d14d8['asNSb'](printFeedbackNudge,_0x5c131f['id']);}async function printFeedbackNudge(_0x5b26d8){const _0x193a02=_0x51e629,_0x12d659={'adDCB':function(_0xc11993,_0x342bab,_0x205141){return _0xc11993(_0x342bab,_0x205141);},'qDDPa':function(_0x2e8b80,_0x5b1861){return _0x2e8b80>_0x5b1861;}};try{const {items:_0xcefb1c}=await getActionItems(_0x5b26d8);let _0xf91752=0x0,_0x40721f=0x0;for(const _0x375f43 of _0xcefb1c){const _0x178044=await _0x12d659[_0x193a02(0xa5)](getItemFeedback,_0x5b26d8,_0x375f43['id']);_0x12d659[_0x193a02(0x149)](_0x178044[_0x193a02(0x11d)][_0x193a02(0xc7)],0x0)&&(_0xf91752+=_0x178044['unaddressedComments'][_0x193a02(0xc7)],_0x40721f++);}_0xf91752>0x0&&(console[_0x193a02(0xa9)]('\x0a⚠️\x20\x20'+_0xf91752+'\x20unaddressed\x20reviewer\x20comment(s)\x20across\x20'+_0x40721f+'\x20scenario(s).'),console['log']('\x20\x20\x20Run\x20`ranger\x20get-review`\x20to\x20see\x20what\x20needs\x20to\x20be\x20fixed.'));}catch{}}async function tryStartCurrentSession(_0x4c4be1){const _0x5d455d=_0x51e629,_0x4c515d={'twFrw':function(_0x438d8f,_0x48f15a,_0x33141e){return _0x438d8f(_0x48f15a,_0x33141e);}};try{const {sessions:_0x5dedc6}=await listFeatureSessions(_0x4c4be1),_0x1b1d7c=_0x5dedc6[_0x5d455d(0xa7)](_0x58513b=>_0x58513b['status']==='ready');_0x1b1d7c&&(await _0x4c515d[_0x5d455d(0x156)](startSession,_0x4c4be1,_0x1b1d7c['id']),console['log']('\x20\x20\x20▶️\x20Started\x20session\x20'+_0x1b1d7c['iteration']));}catch{}}export async function featureReport(_0x8842c5,_0x3e2599){const _0x58b97e=_0x51e629,_0x308baf={'PwYGa':function(_0x338eb2){return _0x338eb2();},'hCFUs':_0x58b97e(0xf6),'aHaBS':'\x0aGenerating\x20report...','WNCrC':function(_0x565e05,_0x3e2c98,_0x1e72f7,_0x45bb23){return _0x565e05(_0x3e2c98,_0x1e72f7,_0x45bb23);},'iBsuZ':_0x58b97e(0xd5),'ajkZS':function(_0x44284c,_0x2f9b45){return _0x44284c(_0x2f9b45);},'uqfDY':function(_0xdbb704,_0xb15812,_0x76e8ec){return _0xdbb704(_0xb15812,_0x76e8ec);}},_0x44cc41=_0x8842c5||await _0x308baf[_0x58b97e(0xff)](getActiveFeatureId);if(!_0x44cc41)throw new Error(_0x308baf[_0x58b97e(0x167)]);console['log'](_0x308baf['aHaBS']);const _0x2a8ef0=await getFeatureReportMarkdown(_0x44cc41,{'style':_0x3e2599['style']}),_0x2b2640=_0x3e2599['output']||_0x308baf['WNCrC'](join,_0x308baf['PwYGa'](getRangerDir),_0x308baf[_0x58b97e(0x123)],_0x44cc41+'.md'),_0x37e46d=join(_0x2b2640,'..');!_0x308baf[_0x58b97e(0xba)](existsSync,_0x37e46d)&&await _0x308baf['uqfDY'](mkdir,_0x37e46d,{'recursive':!![]}),await _0x308baf[_0x58b97e(0xfc)](writeFile,_0x2b2640,_0x2a8ef0,_0x58b97e(0x161)),console[_0x58b97e(0xa9)](_0x58b97e(0xbc)+_0x2b2640);}function getScenarioResult(_0x2e23f9){const _0x5f0db2=_0x51e629,_0x88ec89={'jQKgk':_0x5f0db2(0x114)};if(_0x2e23f9[_0x5f0db2(0x98)]===_0x88ec89['jQKgk'])return _0x2e23f9['terminalReason']??'closed';if(_0x2e23f9['status']==='verification_in_progress')return _0x5f0db2(0xe0);return _0x2e23f9[_0x5f0db2(0x98)];}function getScenarioRationale(_0x13f193,_0x307a9a){const _0xb7cf86=_0x51e629;if(_0x307a9a)return _0x307a9a;if(_0x13f193[_0xb7cf86(0xf4)])return _0x13f193['blockedReason'];if(_0x13f193['incompleteReason'])return _0x13f193[_0xb7cf86(0x11c)];if(_0x13f193[_0xb7cf86(0xbf)])return _0x13f193['canceledReason'];if(_0x13f193['notes'])return _0x13f193[_0xb7cf86(0x16b)];return null;}export async function featureReportPrDescription(_0x15b907,_0x49aa3d){const _0x5bc196=_0x51e629,_0x4d4aec={'kfwmY':function(_0x3f6daa){return _0x3f6daa();},'aNRlq':function(_0x1241f8,_0x2b89be){return _0x1241f8(_0x2b89be);},'CrSob':function(_0x1565dc,_0x566e4a,_0x566daf){return _0x1565dc(_0x566e4a,_0x566daf);},'EYdXZ':function(_0x2dd27a,_0x408137){return _0x2dd27a===_0x408137;},'vOyaY':_0x5bc196(0x11a),'vquWD':function(_0x10e773,_0x274f10){return _0x10e773===_0x274f10;},'vWVGm':'\x0a❌\x20All\x20scenarios\x20were\x20excluded.'},_0xae0409=_0x15b907||await _0x4d4aec['kfwmY'](getActiveFeatureId);if(!_0xae0409)throw new Error('No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.');const _0x209568=await _0x4d4aec[_0x5bc196(0x124)](getFeature,_0xae0409),_0x358899=_0x209568['checklistItems']||[],_0x183508=_0x4d4aec[_0x5bc196(0x138)](getCurrentSessionItems,_0x209568,_0x358899);_0x4d4aec[_0x5bc196(0xed)](_0x183508[_0x5bc196(0xc7)],0x0)&&(console['error']('\x0a❌\x20No\x20scenarios\x20found\x20to\x20include.'),process['exit'](0x1));const _0x542262=_0x49aa3d[_0x5bc196(0xfb)]??[],_0x5822a6=_0x542262['filter'](_0x2930bb=>!Number['isInteger'](_0x2930bb)||_0x2930bb<0x1||_0x2930bb>_0x183508[_0x5bc196(0xc7)]);if(_0x5822a6['length']>0x0){console['error'](_0x5bc196(0x15d)+_0x5822a6['join'](',\x20')),console[_0x5bc196(0xa9)](_0x4d4aec['vOyaY']);for(let _0x431527=0x0;_0x431527<_0x183508[_0x5bc196(0xc7)];_0x431527++){console['log']('\x20\x20'+(_0x431527+0x1)+'.\x20'+_0x183508[_0x431527][_0x5bc196(0x128)]);}process['exit'](0x1);}const _0x41b544=new Set(_0x542262['map'](_0x5ed9e2=>_0x5ed9e2-0x1)),_0x3de600=_0x183508[_0x5bc196(0x15f)]((_0x1b7089,_0x52297e)=>!_0x41b544['has'](_0x52297e));_0x4d4aec['vquWD'](_0x3de600[_0x5bc196(0xc7)],0x0)&&(console['error'](_0x4d4aec[_0x5bc196(0x143)]),process[_0x5bc196(0xaf)](0x1));if(_0x49aa3d['json'])await outputJsonReport(_0xae0409,_0x209568,_0x3de600);else{const _0x24c116=await getFeatureReportMarkdown(_0xae0409,{'itemIds':_0x3de600[_0x5bc196(0xad)](_0x3797ba=>_0x3797ba['id'])});process['stdout'][_0x5bc196(0x9f)](_0x24c116['trimEnd']()+'\x0a');}}async function outputJsonReport(_0x472126,_0x2b315f,_0x107061){const _0x4f3f94=_0x51e629,_0x438ea4={'BmCMX':function(_0x39369d,_0xccc88f){return _0x39369d===_0xccc88f;},'rvFsH':function(_0x24470e,_0x5d209a){return _0x24470e(_0x5d209a);},'zLsqh':function(_0x96a138,_0x25aadf,_0x2727b5){return _0x96a138(_0x25aadf,_0x2727b5);},'uEmZc':function(_0x17b96e){return _0x17b96e();}},_0x5821d9=_0x438ea4['uEmZc'](getApiBaseUrl),_0x4ea3dc=await getFeatureReport(_0x472126),_0x4c042=new Map(_0x4ea3dc['checklistItems']['map'](_0xb3ad26=>[_0xb3ad26['id'],_0xb3ad26])),_0x389952=await Promise[_0x4f3f94(0x12b)](_0x107061[_0x4f3f94(0xad)](async _0x254c27=>{const _0x28da1e=_0x4f3f94,_0x3fdc2c=_0x4c042[_0x28da1e(0xb1)](_0x254c27['id']),_0x96fe78=_0x3fdc2c?.['linkedSession']??null;let _0x2e4689=[];if(_0x254c27['browserSessionId'])try{const {steps:_0x2d9e53}=await getBrowserSessionSteps(_0x254c27['browserSessionId']);_0x2d9e53[_0x28da1e(0xc7)]>0x0&&(_0x2e4689=_0x2d9e53[_0x28da1e(0xad)](_0x58e7c0=>{const _0x78ecfc=_0x28da1e,_0x423ada=_0x58e7c0[_0x78ecfc(0x127)]['find'](_0x1d8707=>_0x1d8707[_0x78ecfc(0x14e)]==='screenshot'&&_0x1d8707['timing']===_0x78ecfc(0xd1))??_0x58e7c0['assets'][_0x78ecfc(0xa7)](_0x36859c=>_0x36859c[_0x78ecfc(0x14e)]===_0x78ecfc(0xc6));let _0x17092f=null,_0xe1630e=null;if(_0x423ada){const _0x523677=_0x423ada['storage']['location']['split']('/')[_0x78ecfc(0x9b)]();_0x17092f=_0x5821d9+_0x78ecfc(0x12f)+_0x254c27['browserSessionId']+_0x78ecfc(0x140)+_0x523677,_0x523677&&(_0xe1630e=_0x523677[_0x78ecfc(0xc8)](/\.\w+$/,'')[_0x78ecfc(0xc8)](/^(key_)?\d+_/,'')['replace'](/[-_]/g,'\x20'));}return{'description':_0xe1630e||_0x58e7c0[_0x78ecfc(0x128)]||_0x58e7c0[_0x78ecfc(0xfa)]||'Step\x20'+_0x58e7c0[_0x78ecfc(0xc5)],'screenshot':_0x17092f,'is_key_step':_0x58e7c0['isKeyStep']};}));}catch{}return _0x438ea4[_0x28da1e(0x11f)](_0x2e4689[_0x28da1e(0xc7)],0x0)&&_0x96fe78?.[_0x28da1e(0x168)]&&(_0x2e4689=_0x96fe78[_0x28da1e(0x168)][_0x28da1e(0xad)]((_0x27a175,_0x3a14eb)=>({'description':'Screenshot\x20'+(_0x3a14eb+0x1),'screenshot':_0x27a175,'is_key_step':![]}))),{'description':_0x254c27['description'],'result':_0x438ea4[_0x28da1e(0xdd)](getScenarioResult,_0x254c27),'rationale':_0x438ea4[_0x28da1e(0x96)](getScenarioRationale,_0x254c27,_0x96fe78?.['agentResponse']),'steps':_0x2e4689};})),_0x5cb3b5={'url':_0x2b315f[_0x4f3f94(0x9c)],'scenarios':_0x389952};process[_0x4f3f94(0xe6)]['write'](JSON[_0x4f3f94(0xeb)](_0x5cb3b5,null,0x2)+'\x0a');}export async function featureConcludeSession(_0x487637){const _0x56c751=_0x51e629,_0x280ea3={'wITSK':function(_0x28699e){return _0x28699e();},'QdSGR':'No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','XZCTc':function(_0x4ed836,_0x12bda7){return _0x4ed836(_0x12bda7);},'XOVRR':function(_0x57db41,_0x5f0c8c){return _0x57db41===_0x5f0c8c;},'SsBmG':_0x56c751(0xc1),'euMpy':_0x56c751(0x170),'PaYlf':function(_0x4fc6cb,_0x30ddaf){return _0x4fc6cb!==_0x30ddaf;}},_0x5ab814=_0x487637||await _0x280ea3['wITSK'](getActiveFeatureId);if(!_0x5ab814)throw new Error(_0x280ea3[_0x56c751(0x101)]);const _0x30a302=await getFeature(_0x5ab814);if(!_0x30a302['currentSessionId'])throw new Error('No\x20active\x20session\x20for\x20this\x20feature\x20review.');const {sessions:_0xc511d4}=await _0x280ea3['XZCTc'](listFeatureSessions,_0x5ab814),_0x5f44ca=_0xc511d4[_0x56c751(0xa7)](_0x3b7a89=>_0x3b7a89['id']===_0x30a302['currentSessionId']);if(!_0x5f44ca)throw new Error(_0x56c751(0x14d));if(_0x280ea3[_0x56c751(0xf9)](_0x5f44ca['status'],_0x280ea3[_0x56c751(0xe1)])){console['log'](_0x280ea3[_0x56c751(0x12c)]);return;}if(_0x280ea3[_0x56c751(0x144)](_0x5f44ca['status'],_0x56c751(0xe0)))throw new Error(_0x56c751(0x163)+_0x5f44ca['status']);console[_0x56c751(0xa9)](_0x56c751(0x95)),await concludeSession(_0x5ab814,_0x30a302[_0x56c751(0xf3)]),console[_0x56c751(0xa9)](_0x56c751(0x13d)+_0x5f44ca['iteration']+'\x20concluded.'),console[_0x56c751(0xa9)](_0x56c751(0x100));}export async function featureSessions(_0x4d4aa3){const _0x5b9577=_0x51e629,_0x2722ba={'JbAOf':function(_0x3aa98f,_0x389350){return _0x3aa98f(_0x389350);},'CtMoI':function(_0x1e201a,_0x5ee4d9){return _0x1e201a===_0x5ee4d9;}},_0x41f0ec=_0x4d4aa3||await getActiveFeatureId();if(!_0x41f0ec)throw new Error('No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.');const _0x10f1ad=await getFeature(_0x41f0ec);console['log']('\x0a📁\x20Sessions\x20for\x20feature\x20review:\x20'+_0x10f1ad[_0x5b9577(0x132)]+'\x0a');const {sessions:_0x5352b0}=await _0x2722ba['JbAOf'](listFeatureSessions,_0x41f0ec);if(_0x2722ba[_0x5b9577(0x14b)](_0x5352b0['length'],0x0)){console[_0x5b9577(0xa9)](_0x5b9577(0x9a));return;}for(const _0x4597fa of _0x5352b0){const _0x54a820=_0x2722ba[_0x5b9577(0x14b)](_0x4597fa['status'],_0x5b9577(0xc1))?'✅':_0x2722ba['CtMoI'](_0x4597fa[_0x5b9577(0x98)],'in_progress')?'🔄':'▶️';console['log'](_0x54a820+'\x20Session\x20'+_0x4597fa[_0x5b9577(0x16d)]+'\x20('+_0x4597fa['id']+')'),console['log']('\x20\x20\x20Status:\x20'+_0x4597fa[_0x5b9577(0x98)]),console['log'](_0x5b9577(0xd9)+new Date(_0x4597fa['createdAt'])['toLocaleString']()),_0x4597fa[_0x5b9577(0x15c)]&&console[_0x5b9577(0xa9)]('\x20\x20\x20Completed:\x20'+new Date(_0x4597fa['completedAt'])[_0x5b9577(0xe5)]()),console[_0x5b9577(0xa9)]('');}}export async function featureAddScenario(_0x57c98d,_0x1f1709){const _0x4ce195=_0x51e629,_0x40d7dc={'CSkgm':function(_0xd1ff25){return _0xd1ff25();},'vcNiR':'No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','BxjVd':function(_0x58041d,_0x377f0a){return _0x58041d(_0x377f0a);},'iGjXU':function(_0xd61020,_0x14ab0a,_0x4ebe5a){return _0xd61020(_0x14ab0a,_0x4ebe5a);}},_0x79a835=_0x1f1709||await _0x40d7dc['CSkgm'](getActiveFeatureId);if(!_0x79a835)throw new Error(_0x40d7dc['vcNiR']);const _0x368600=await getFeature(_0x79a835);if(_0x368600[_0x4ce195(0x134)]&&!_0x368600[_0x4ce195(0x134)]['submittedAt'])throw new Error('Cannot\x20add\x20scenario:\x20feature\x20review\x20has\x20an\x20active\x20review.\x20Please\x20finish\x20your\x20review\x20first:\x20'+_0x368600[_0x4ce195(0x9c)]);await createChecklistItem(_0x79a835,_0x57c98d);const _0x442ac0=await _0x40d7dc['BxjVd'](getFeature,_0x79a835);console['log']('\x0a✅\x20Scenario\x20added'),_0x40d7dc['iGjXU'](displayFeature,_0x442ac0,_0x442ac0['checklistItems']);}export async function featureEditScenario(_0x5f13ed,_0x1b230e){const _0x4c7aa6=_0x51e629,_0x166960={'dhZgi':_0x4c7aa6(0xb5),'yhMcv':'Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','BXQra':_0x4c7aa6(0xa2),'SirGZ':_0x4c7aa6(0xe3),'QJqad':function(_0x11940d,_0x59736a){return _0x11940d===_0x59736a;},'lZliM':'\x0aAvailable\x20scenarios:','SQykx':function(_0xb14171,_0x18a937){return _0xb14171<_0x18a937;},'VRSns':function(_0x1aa20f,_0x385d75,_0x4aac60,_0x450017){return _0x1aa20f(_0x385d75,_0x4aac60,_0x450017);},'ovAIC':function(_0x4bf787,_0x3e48c9){return _0x4bf787(_0x3e48c9);}},_0xe1a776=_0x1b230e['id']||await getActiveFeatureId();!_0xe1a776&&(console[_0x4c7aa6(0xef)](_0x166960[_0x4c7aa6(0xac)]),console['error'](_0x166960[_0x4c7aa6(0x120)]),process['exit'](0x1));const _0x5bb7ef=await getFeature(_0xe1a776);_0x5bb7ef['latestReview']&&!_0x5bb7ef[_0x4c7aa6(0x134)][_0x4c7aa6(0x113)]&&(console['error'](_0x166960[_0x4c7aa6(0xa4)]),console[_0x4c7aa6(0xef)](_0x166960[_0x4c7aa6(0xb9)]),console[_0x4c7aa6(0xef)]('\x20\x20'+_0x5bb7ef['dashboardUrl']),process[_0x4c7aa6(0xaf)](0x1));const _0xd0ad9e=_0x5bb7ef['checklistItems']||[];_0x166960['QJqad'](_0xd0ad9e['length'],0x0)&&(console[_0x4c7aa6(0xef)](_0x4c7aa6(0xe8)),process['exit'](0x1));if(_0x1b230e['scenario']===undefined){console['error']('\x0a❌\x20No\x20scenario\x20number\x20provided.\x20Use\x20--scenario\x20<number>.'),console['log'](_0x166960[_0x4c7aa6(0x108)]);for(let _0x3d3d1d=0x0;_0x3d3d1d<_0xd0ad9e['length'];_0x3d3d1d++){console[_0x4c7aa6(0xa9)]('\x20\x20'+(_0x3d3d1d+0x1)+'.\x20'+_0xd0ad9e[_0x3d3d1d][_0x4c7aa6(0x128)]);}process[_0x4c7aa6(0xaf)](0x1);}const _0x1d60a7=_0x1b230e['scenario']-0x1;if(_0x1d60a7<0x0||_0x1d60a7>=_0xd0ad9e[_0x4c7aa6(0xc7)]){console[_0x4c7aa6(0xef)](_0x4c7aa6(0x160)+_0x1b230e['scenario']+'.\x20Feature\x20review\x20has\x20'+_0xd0ad9e[_0x4c7aa6(0xc7)]+'\x20scenarios.'),console[_0x4c7aa6(0xa9)]('\x0aAvailable\x20scenarios:');for(let _0x21c553=0x0;_0x166960['SQykx'](_0x21c553,_0xd0ad9e['length']);_0x21c553++){console[_0x4c7aa6(0xa9)]('\x20\x20'+(_0x21c553+0x1)+'.\x20'+_0xd0ad9e[_0x21c553][_0x4c7aa6(0x128)]);}process[_0x4c7aa6(0xaf)](0x1);}const _0xa6aaee=_0xd0ad9e[_0x1d60a7];await _0x166960['VRSns'](updateChecklistItem,_0xe1a776,_0xa6aaee['id'],{'description':_0x5f13ed});const _0x532b91=await _0x166960['ovAIC'](getFeature,_0xe1a776);console['log']('\x0a✅\x20Scenario\x20updated'),displayFeature(_0x532b91,_0x532b91['checklistItems']);}async function downloadFeedbackImage(_0x10195b,_0x26e27a){const _0x5aac72=_0x51e629,_0x673a55={'BrkKt':function(_0x5b0fcb,_0xa2acd,_0x57376a){return _0x5b0fcb(_0xa2acd,_0x57376a);},'kyjVN':function(_0x3fb5b8){return _0x3fb5b8();},'sRsvq':'feedback-images'};try{const _0x56d678=_0x673a55['BrkKt'](join,_0x673a55[_0x5aac72(0x157)](getRangerDir),_0x673a55['sRsvq']);await mkdir(_0x56d678,{'recursive':!![]});const _0x331344=_0x673a55['BrkKt'](join,_0x56d678,_0x5aac72(0xe7)+_0x26e27a+_0x5aac72(0xc4)),_0x25ae20=await fetch(_0x10195b);if(!_0x25ae20['ok'])return null;const _0x5b82fb=Buffer[_0x5aac72(0x11b)](await _0x25ae20[_0x5aac72(0xab)]());return await writeFile(_0x331344,_0x5b82fb),_0x331344;}catch{return null;}}function _0x2320(_0x222fc8,_0x81a052){_0x222fc8=_0x222fc8-0x95;const _0x3ff7af=_0x3ff7();let _0x232071=_0x3ff7af[_0x222fc8];return _0x232071;}export async function featureGetReview(_0x19d13b){const _0x45b124=_0x51e629,_0x2222e8={'oYAul':function(_0xf2f6c6,_0x31ff6f){return _0xf2f6c6(_0x31ff6f);},'qlclv':function(_0x529c0e,_0x446242){return _0x529c0e===_0x446242;},'uGrdt':_0x45b124(0x162),'Nzffr':_0x45b124(0xf0),'PpxFt':'numeric','wbqHN':_0x45b124(0x13b),'VXmTW':'element','InHrP':function(_0xcbbf79,_0x20197e){return _0xcbbf79>=_0x20197e;}},_0x3ac0e1=_0x19d13b||await getActiveFeatureId();if(!_0x3ac0e1)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 _0x52c75b=await _0x2222e8[_0x45b124(0x155)](getFeature,_0x3ac0e1),{items:_0x4460bf}=await getActionItems(_0x3ac0e1);console['log']('\x0a📋\x20Feedback\x20for:\x20'+_0x52c75b['name']+'\x20('+_0x52c75b['id']+')\x0a');if(_0x2222e8['qlclv'](_0x4460bf[_0x45b124(0xc7)],0x0)){console['log'](_0x2222e8[_0x45b124(0x13c)]);return;}for(let _0x339827=0x0;_0x339827<_0x4460bf[_0x45b124(0xc7)];_0x339827++){const _0x224744=_0x4460bf[_0x339827],_0x36bc49=_0x224744[_0x45b124(0xbe)]>0x1?'\x20(v'+_0x224744['version']+')':'',_0x451371=await getItemFeedback(_0x3ac0e1,_0x224744['id']);if(_0x451371[_0x45b124(0x11d)][_0x45b124(0xc7)]>0x0){console[_0x45b124(0xa9)]('Scenario\x20'+(_0x339827+0x1)+_0x45b124(0xb2)+_0x224744['description']+'\x22'+_0x36bc49+'\x20—\x20'+_0x451371['unaddressedComments']['length']+_0x45b124(0xe9));for(const _0x2f31ae of _0x451371['unaddressedComments']){const _0x48c7af=new Date(_0x2f31ae['createdAt'])['toLocaleDateString'](_0x2222e8[_0x45b124(0x107)],{'month':'short','day':_0x2222e8['PpxFt']}),_0x4f3eca=_0x2f31ae['authorName']||_0x2f31ae['authorEmail']||_0x2222e8[_0x45b124(0x15b)];console[_0x45b124(0xa9)]('\x20\x20💬\x20'+_0x4f3eca+'\x20('+_0x48c7af+_0x45b124(0x164)+_0x2f31ae[_0x45b124(0x121)]+'\x22');if(_0x2f31ae[_0x45b124(0x153)]){const _0x1f8ffb=await downloadFeedbackImage(_0x2f31ae['assetUrl'],_0x2f31ae['id']);_0x1f8ffb&&console[_0x45b124(0xa9)](_0x45b124(0x146)+_0x1f8ffb);}if(_0x2f31ae['domRef']){const _0x3764fe=_0x2f31ae['domRef'][_0x45b124(0xd0)]['split'](_0x45b124(0x102))['pop']()?.[_0x45b124(0x118)](':')[0x0]||_0x2222e8['VXmTW'],_0x2b118e=_0x2f31ae['domRef'][_0x45b124(0x106)]?'\x20\x22'+_0x2f31ae[_0x45b124(0xce)]['textContent']['slice'](0x0,0x3c)+'\x22':'';console['log']('\x20\x20\x20\x20\x20🎯\x20Element:\x20<'+_0x3764fe+'>'+_0x2b118e),console[_0x45b124(0xa9)](_0x45b124(0xd8)+_0x2f31ae['domRef']['selector']);}else{if(_0x2f31ae[_0x45b124(0xa6)]){const _0x59c925=_0x2f31ae[_0x45b124(0xa6)][_0x45b124(0xde)];_0x2f31ae['spatial']['type']===_0x45b124(0xb0)&&_0x2222e8[_0x45b124(0x150)](_0x59c925[_0x45b124(0xc7)],0x2)?console['log']('\x20\x20\x20\x20\x20📍\x20Annotation:\x20point\x20at\x20('+_0x59c925[0x0][_0x45b124(0x14a)](0x2)+',\x20'+_0x59c925[0x1]['toFixed'](0x2)+')'):console[_0x45b124(0xa9)]('\x20\x20\x20\x20\x20📍\x20Annotation:\x20'+_0x2f31ae['spatial'][_0x45b124(0xf7)]+'\x20at\x20['+_0x59c925['map'](_0x45bc07=>_0x45bc07[_0x45b124(0x14a)](0x2))[_0x45b124(0x135)](',\x20')+']');}}}if(_0x451371[_0x45b124(0xe4)]){console[_0x45b124(0xa9)](_0x45b124(0xae));for(const _0x5d261d of _0x451371[_0x45b124(0xe4)]['split']('\x0a')){console['log']('\x20\x20\x20\x20'+_0x5d261d);}}}else console[_0x45b124(0xa9)](_0x45b124(0xa1)+(_0x339827+0x1)+':\x20\x22'+_0x224744[_0x45b124(0x128)]+'\x22'+_0x36bc49+_0x45b124(0x14f)),console[_0x45b124(0xa9)](_0x45b124(0x99));console[_0x45b124(0xa9)]('');}}export async function featureDelete(_0x547bb6){const _0x31d005=_0x51e629,_0x49d68a={'tqURI':function(_0x138da0){return _0x138da0();},'fTFWz':_0x31d005(0x110),'IoSky':'\x20\x20\x20To\x20restore\x20it,\x20run:\x20ranger\x20restore\x20'},_0x3b5acb=_0x547bb6||await _0x49d68a[_0x31d005(0xea)](getActiveFeatureId);if(!_0x3b5acb)throw new Error(_0x49d68a[_0x31d005(0x169)]);const _0x1425bb=await getFeature(_0x3b5acb);await softDeleteFeature(_0x3b5acb),console['log']('\x0a🗑️\x20\x20Deleted\x20feature\x20review:\x20'+_0x1425bb[_0x31d005(0x132)]+'\x20('+_0x3b5acb+')'),console['log'](_0x49d68a['IoSky']+_0x3b5acb);}export async function featureRestore(_0x38f6cc){const _0x57c5d7=_0x51e629;await restoreFeature(_0x38f6cc);const _0x1b6b72=await getFeature(_0x38f6cc);console[_0x57c5d7(0xa9)](_0x57c5d7(0x125)+_0x1b6b72['name']+'\x20('+_0x38f6cc+')'),displayFeature(_0x1b6b72,_0x1b6b72['checklistItems']);}
1
+ const _0x18344c=_0x58e8;(function(_0x5b9174,_0x11c133){const _0xa60db=_0x58e8,_0x39cfc5=_0x5b9174();while(!![]){try{const _0x425018=parseInt(_0xa60db(0xc7))/0x1*(parseInt(_0xa60db(0x160))/0x2)+parseInt(_0xa60db(0x82))/0x3*(parseInt(_0xa60db(0xe8))/0x4)+parseInt(_0xa60db(0xd5))/0x5*(-parseInt(_0xa60db(0x8b))/0x6)+parseInt(_0xa60db(0x139))/0x7*(-parseInt(_0xa60db(0xad))/0x8)+parseInt(_0xa60db(0x109))/0x9*(-parseInt(_0xa60db(0x15c))/0xa)+-parseInt(_0xa60db(0x145))/0xb+-parseInt(_0xa60db(0xc6))/0xc*(-parseInt(_0xa60db(0xac))/0xd);if(_0x425018===_0x11c133)break;else _0x39cfc5['push'](_0x39cfc5['shift']());}catch(_0x2e79cb){_0x39cfc5['push'](_0x39cfc5['shift']());}}}(_0x4d46,0x7ab2d));import{readFile,writeFile,mkdir}from'fs/promises';import{join}from'path';import{existsSync}from'fs';import{execSync}from'child_process';import _0x4ba644 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=_0x18344c(0xfe),bold=_0x14b967=>_0x18344c(0xb7)+_0x14b967+_0x18344c(0xcb);function getGitRepoUrl(){const _0x3dfc67=_0x18344c,_0x48579f={'hKXoY':_0x3dfc67(0xef),'EMDPR':_0x3dfc67(0xdb),'MQNOd':_0x3dfc67(0x95)};try{const _0x3c415d=execSync(_0x48579f['hKXoY'],{'encoding':_0x3dfc67(0xe1),'stdio':[_0x48579f['EMDPR'],'pipe',_0x48579f[_0x3dfc67(0xee)]]})['trim']();return _0x3c415d['replace'](/\.git$/,'')[_0x3dfc67(0xd2)](/^git@github\.com:/,_0x48579f[_0x3dfc67(0x92)])[_0x3dfc67(0xd2)](/^https?:\/\//,'');}catch{return undefined;}}function getGitBranch(){const _0x1ae24c=_0x18344c,_0xe28a48={'XllYQ':function(_0xe7da55,_0x105b82,_0x2f7328){return _0xe7da55(_0x105b82,_0x2f7328);},'sbRrZ':_0x1ae24c(0x150),'gCLcO':_0x1ae24c(0xe1),'bHsni':_0x1ae24c(0xdb)};try{return _0xe28a48[_0x1ae24c(0x86)](execSync,_0xe28a48[_0x1ae24c(0x144)],{'encoding':_0xe28a48['gCLcO'],'stdio':[_0xe28a48['bHsni'],_0xe28a48['bHsni'],_0x1ae24c(0xdb)]})[_0x1ae24c(0x98)]();}catch{return undefined;}}export async function getActiveFeatureId(){const _0x1c915c={'wnFnm':function(_0xc1c7b5,_0xef0e6){return _0xc1c7b5(_0xef0e6);}},_0x438b6f=join(getRangerDir(),ACTIVE_FEATURE_FILE);if(!_0x1c915c['wnFnm'](existsSync,_0x438b6f))return null;try{const _0x81c4fb=await readFile(_0x438b6f,'utf-8');return _0x81c4fb['trim']()||null;}catch{return null;}}async function setActiveFeatureId(_0x2921f9){const _0x47f1cd=_0x18344c,_0x5716d4={'Whref':function(_0x5abaf0,_0x475743){return _0x5abaf0(_0x475743);},'TPvQE':function(_0x388528,_0x552469,_0x1353dc){return _0x388528(_0x552469,_0x1353dc);},'JIzxK':_0x47f1cd(0xe1)},_0x29ee8a=getRangerDir(),_0x15c3eb=join(_0x29ee8a,ACTIVE_FEATURE_FILE);!_0x5716d4[_0x47f1cd(0xda)](existsSync,_0x29ee8a)&&await _0x5716d4['TPvQE'](mkdir,_0x29ee8a,{'recursive':!![]}),await writeFile(_0x15c3eb,_0x2921f9,_0x5716d4['JIzxK']);}function getProgressDisplay(_0xc49610){const _0x47175=_0x18344c,_0x392ce5={'UQFVB':function(_0x2ad811,_0x47223f){return _0x2ad811+_0x47223f;},'tLLOU':function(_0x101af5,_0x2fbab6){return _0x101af5===_0x2fbab6;},'pMLTJ':function(_0x167e70,_0x20add5){return _0x167e70*_0x20add5;},'TjvFe':function(_0x54c63d,_0x4c2833){return _0x54c63d/_0x4c2833;},'rmyYo':function(_0x25fb2b,_0x55f18a){return _0x25fb2b+_0x55f18a;},'QUxux':function(_0x767f52,_0x228b3b){return _0x767f52-_0x228b3b;},'DuJRf':function(_0x34741d,_0x93176b){return _0x34741d>_0x93176b;}},_0x5f4b8e=_0xc49610['verifiedItems']||0x0,_0x383a21=_0xc49610[_0x47175(0x155)]||0x0,_0x3dd146=_0xc49610[_0x47175(0xc0)]||0x0,_0x31bbcd=_0xc49610['incompleteItems']||0x0,_0x291243=_0xc49610['pendingItems']||0x0,_0x55e04c=_0x392ce5['UQFVB'](_0x392ce5['UQFVB'](_0x5f4b8e,_0x383a21)+_0x3dd146+_0x31bbcd,_0x291243);if(_0x392ce5[_0x47175(0xd3)](_0x55e04c,0x0))return'-';const _0x1b6d0d=0xa,_0x4663a0=Math['round'](_0x392ce5['pMLTJ'](_0x392ce5['TjvFe'](_0x5f4b8e,_0x55e04c),_0x1b6d0d)),_0x47564b=_0x392ce5[_0x47175(0xf9)]('█'['repeat'](_0x4663a0),'░'['repeat'](_0x392ce5[_0x47175(0x81)](_0x1b6d0d,_0x4663a0))),_0xc2b711=[];if(_0x392ce5['DuJRf'](_0x3dd146,0x0))_0xc2b711['push'](_0x3dd146+_0x47175(0xe3));if(_0x31bbcd>0x0)_0xc2b711['push'](_0x31bbcd+_0x47175(0x15d));if(_0x392ce5[_0x47175(0x152)](_0x383a21,0x0))_0xc2b711[_0x47175(0x136)](_0x383a21+_0x47175(0x131));const _0x220d49=_0x392ce5[_0x47175(0x152)](_0xc2b711['length'],0x0)?'\x20('+_0xc2b711['join'](',\x20')+')':'';return _0x47564b+'\x20'+_0x5f4b8e+'/'+_0x55e04c+_0x47175(0xc8)+_0x220d49;}function getCurrentSessionItems(_0x50d261,_0x3ba57c){const _0x434b69=_0x18344c;if(!_0x50d261[_0x434b69(0xb9)])return _0x3ba57c['filter'](_0x4b22b2=>!_0x4b22b2[_0x434b69(0xeb)]);return _0x3ba57c[_0x434b69(0x10e)](_0x39e129=>_0x39e129[_0x434b69(0xeb)]===_0x50d261['currentSessionId']||!_0x39e129['sessionId']);}function _0x4d46(){const _0x23ff09=['stats','sessionId','unaddressedComments','\x20\x20\x20\x20\x20ID:\x20','EMDPR','git\x20remote\x20get-url\x20origin','\x20\x20\x20Run\x20`ranger\x20get-review`\x20to\x20see\x20what\x20needs\x20to\x20be\x20fixed.','\x0aAvailable\x20scenarios:','Eqkqn','EFmlI','):\x20\x22','wclXY','approved','\x20\x20\x20Repository:\x20','dashboardUrl','rmyYo',':\x20\x22','find','map','\x20>\x20','active-feature.txt','domRef','Step\x20','HKXPp','rNTJB','No\x20scenarios\x20found.','version','aQZhn','\x20\x20\x20Description:\x20','\x0a✅\x20Feature\x20review\x20created:\x20','trimEnd','958779qULeFu','Screenshot\x20','TCDFo','includeDeleted','\x20\x20\x20Completed:\x20','filter','completed','\x0a📋\x20Feedback\x20for:\x20','createdAt','bFpQa','\x0a✅\x20Restored\x20feature\x20review:\x20','\x0a✅\x20Resumed\x20feature\x20review:\x20','get','MZstP','LnykZ','UoHkO','\x0a✅\x20Session\x20is\x20already\x20completed.','No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.','gitRepoUrl','IETTY','terminalReason','UArFr','oNOgT','selector','status','hRmVR','\x20(v','assets','\x0a❌\x20All\x20scenarios\x20were\x20excluded.','MbJgp','njpfP','\x20\x20\x20Progress:\x20','\x0aCreating\x20feature\x20review...','slice','wQqxy','TramT','.md','WBtdx','description','exit','\x20in\x20progress','assetType','length','\x0aNo\x20feature\x20reviews\x20found.','\x0a➡️\x20\x20Set\x20as\x20active\x20feature\x20review','push','storage','wErjm','7SkdMYm','\x20\x20\x20To\x20restore\x20it,\x20run:\x20ranger\x20restore\x20','No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','env','RwgbG','verified','zvzfz','isInteger','\x20\x20\x20\x20\x20📋\x20Selector:\x20','\x20\x20\x20The\x20feature\x20review\x20is\x20now\x20ready\x20for\x20human\x20review\x20on\x20the\x20Ranger\x20dashboard.','toLocaleString','sbRrZ','4841628CPQGcw','sgJHG','scenario','stdin','euIdm','Scenario\x20','screenshotUrls','isTTY','\x20feature\x20review(s)\x20found','\x0a\x20\x20\x20Scenarios:','items','git\x20rev-parse\x20--abbrev-ref\x20HEAD','SRgtJ','DuJRf','ukhAV','stdout','verificationInProgressItems','gqSEO','in_progress','IniGK','gitBranch','vDwGh','\x20of\x20','80XbbDNV','\x20incomplete','browserSessionId','vOnKf','30cewhcr','xcUUZ','completedAt','.png','pop','kmzAW','all','\x20\x20\x20Updated\x20branch\x20to:\x20','spatial','jEtSg','\x0a❌\x20Invalid\x20scenario\x20index:\x20','QUxux','318hqCHGE','\x20—\x20no\x20comments','name','agentResponse','XllYQ','Cannot\x20add\x20scenario:\x20feature\x20review\x20has\x20an\x20active\x20review.\x20Please\x20finish\x20your\x20review\x20first:\x20','closed','zoFYR','incompleteReason','258EIaAPv','error','IPQxp','TMBHV','\x20\x20\x20\x20\x20📍\x20Annotation:\x20point\x20at\x20(','authorEmail','\x20unaddressed\x20reviewer\x20comment(s)\x20across\x20','MQNOd','pQtVL','scenarios','github.com/','LxqKD','blockedReason','trim','Run:\x20ranger\x20create\x20\x22<name>\x22\x20to\x20create\x20a\x20new\x20feature\x20review','CDxKs','\x20scenarios.','linkedSession','warn','BzXyq','qSTQG','.\x20Feature\x20review\x20has\x20','IOfjD','iteration','xETDb','parentItemId','\x0a❌\x20No\x20scenarios\x20found\x20to\x20edit.','notes','\x20\x20✅\x20No\x20feedback\x20to\x20address','\x0aConcluding\x20session...','stepName','No\x20sessions\x20found.','latestReview','36521082fjfzyF','2952808SFQhxL','\x20scenario(s).','canceledReason','feedback-images','blocked','toLocaleDateString','comment_','IXXAn','join','reports','\x1b[1m','totalCount','currentSessionId','\x0aSearching\x20for\x20feature\x20reviews\x20matching:\x20','location','has','timing','style','split','blockedItems','ANjBT','RANGER_TEST_USERNAME','\x0a🗑️\x20\x20Deleted\x20feature\x20review:\x20','\x20\x20\x20Created:\x20','any','12iEEosf','5593ftBRaz','\x20verified','incomplete','xnnvw','\x1b[0m','fVKfd','\x20--include-deleted','RWtdx','\x20\x20💬\x20','textContent','currentBranch','replace','tLLOU','log','98995alMGrT','canonicalFlow','toFixed','alPHT','LIIBc','Whref','pipe','pHCRy','submittedAt','YWofi','LTEPZ','3|0|5|4|2|1','utf-8','zxaQs','\x20blocked','verification_in_progress','Current\x20session\x20not\x20found.','prompt','AuxBz','4612lNEQHZ','checklistItems'];_0x4d46=function(){return _0x23ff09;};return _0x4d46();}function displayFeature(_0x2d50cc,_0x139898){const _0x5388f3=_0x18344c,_0x3f6e32={'TMBHV':function(_0x297505,_0x4a2665){return _0x297505(_0x4a2665);},'DHxLh':function(_0x59319d,_0x351cba){return _0x59319d>_0x351cba;},'RLHka':_0x5388f3(0x14e),'RXLHO':function(_0x2aa2b3,_0x12de99){return _0x2aa2b3<_0x12de99;},'kmzAW':function(_0x21fb7c,_0x2df201){return _0x21fb7c===_0x2df201;},'wclXY':_0x5388f3(0x13e),'qSTQG':function(_0x246208,_0x3728f1){return _0x246208===_0x3728f1;},'vOnKf':'blocked','nZvzU':_0x5388f3(0x88),'KqQPh':'verification_in_progress','kXUDD':function(_0x47c862,_0x27a65c){return _0x47c862!==_0x27a65c;},'OJXfx':function(_0x24902c,_0x44fdd1){return _0x24902c+_0x44fdd1;},'Eqkqn':function(_0x1a339e,_0x17075c){return _0x1a339e===_0x17075c;},'rtlXO':function(_0x176106,_0x3fd028){return _0x176106===_0x3fd028;},'CZdRV':function(_0x2c7e6c,_0x42a067){return _0x2c7e6c===_0x42a067;},'MZstP':function(_0x5b61c5,_0x138fff){return _0x5b61c5===_0x138fff;}};console[_0x5388f3(0xd4)]('\x0a'+_0x2d50cc[_0x5388f3(0x84)]+'\x20('+_0x2d50cc['dashboardUrl']+')');_0x2d50cc['stats']&&console['log'](_0x5388f3(0x128)+_0x3f6e32[_0x5388f3(0x8e)](getProgressDisplay,_0x2d50cc['stats']));_0x2d50cc[_0x5388f3(0x12f)]&&console['log'](_0x5388f3(0x106)+_0x2d50cc['description']);_0x2d50cc[_0x5388f3(0x11b)]&&console[_0x5388f3(0xd4)](_0x5388f3(0xf7)+_0x2d50cc[_0x5388f3(0x11b)]);_0x2d50cc[_0x5388f3(0x159)]&&console['log']('\x20\x20\x20Branch:\x20'+_0x2d50cc[_0x5388f3(0x159)]);console[_0x5388f3(0xd4)](_0x5388f3(0xc4)+new Date(_0x2d50cc['createdAt'])[_0x5388f3(0x143)]());_0x2d50cc['completedAt']&&console[_0x5388f3(0xd4)](_0x5388f3(0x10d)+new Date(_0x2d50cc[_0x5388f3(0x162)])[_0x5388f3(0x143)]());if(_0x139898&&_0x3f6e32['DHxLh'](_0x139898['length'],0x0)){console[_0x5388f3(0xd4)](_0x3f6e32['RLHka']);for(let _0x48bae4=0x0;_0x3f6e32['RXLHO'](_0x48bae4,_0x139898[_0x5388f3(0x133)]);_0x48bae4++){const _0x435f07=_0x139898[_0x48bae4];let _0x49e809;if(_0x3f6e32['kmzAW'](_0x435f07['status'],'closed')&&_0x435f07[_0x5388f3(0x11d)]===_0x5388f3(0xf6))_0x49e809='✅';else{if(_0x435f07['status']===_0x3f6e32[_0x5388f3(0xf5)])_0x49e809='🟢';else{if(_0x3f6e32[_0x5388f3(0x165)](_0x435f07[_0x5388f3(0x121)],_0x5388f3(0xc9)))_0x49e809='🟠';else{if(_0x3f6e32[_0x5388f3(0x9f)](_0x435f07['status'],_0x3f6e32[_0x5388f3(0x15f)]))_0x49e809='🛑';else{if(_0x435f07[_0x5388f3(0x121)]===_0x3f6e32['nZvzU'])_0x49e809='⛔';else _0x3f6e32[_0x5388f3(0x165)](_0x435f07['status'],_0x3f6e32['KqQPh'])?_0x49e809='⏳':_0x49e809='⬜';}}}}const _0x47c567=_0x435f07[_0x5388f3(0x104)]>0x1?_0x5388f3(0x123)+_0x435f07['version']+')':'',_0xe8ef9a=_0x435f07['version']>0x1&&_0x435f07[_0x5388f3(0xa4)]&&_0x3f6e32['kXUDD'](_0x435f07[_0x5388f3(0x121)],_0x5388f3(0x88))&&_0x3f6e32['kXUDD'](_0x435f07[_0x5388f3(0x121)],_0x5388f3(0x13e))?'\x20[has\x20reviewer\x20feedback]':'';console[_0x5388f3(0xd4)]('\x20\x20\x20'+_0x3f6e32['OJXfx'](_0x48bae4,0x1)+'.\x20'+_0x49e809+'\x20'+_0x435f07[_0x5388f3(0x12f)]+_0x47c567+_0xe8ef9a);_0x3f6e32['Eqkqn'](_0x435f07['status'],_0x5388f3(0xb1))&&_0x435f07['blockedReason']&&console[_0x5388f3(0xd4)]('\x20\x20\x20\x20\x20\x20Blocked:\x20'+_0x435f07['blockedReason']);_0x3f6e32['rtlXO'](_0x435f07['status'],'incomplete')&&_0x435f07['incompleteReason']&&console[_0x5388f3(0xd4)]('\x20\x20\x20\x20\x20\x20Incomplete:\x20'+_0x435f07['incompleteReason']);if(_0x3f6e32[_0x5388f3(0xf2)](_0x435f07[_0x5388f3(0x121)],_0x5388f3(0x88))&&_0x3f6e32['CZdRV'](_0x435f07['terminalReason'],'approved'))console[_0x5388f3(0xd4)]('\x20\x20\x20\x20\x20\x20Approved');else _0x3f6e32[_0x5388f3(0x116)](_0x435f07[_0x5388f3(0x121)],_0x5388f3(0x88))&&_0x435f07[_0x5388f3(0xaf)]&&console[_0x5388f3(0xd4)]('\x20\x20\x20\x20\x20\x20Cancelled:\x20'+_0x435f07[_0x5388f3(0xaf)]);}}}export async function featureCreate(_0x2ec49b,_0xfc5924){const _0x39ee3f=_0x18344c,_0x1b5413={'xnnvw':function(_0x3c239c,_0x368bb4){return _0x3c239c===_0x368bb4;},'lonrv':function(_0x33d772){return _0x33d772();},'UArFr':function(_0x20ad9b,_0x1ffa36){return _0x20ad9b(_0x1ffa36);},'MSpgw':_0x39ee3f(0x129),'LTEPZ':function(_0x152364,_0x353b2d,_0x2c9038){return _0x152364(_0x353b2d,_0x2c9038);}},{envNames:_0x143a44}=await getEnvNames();if(_0x1b5413[_0x39ee3f(0xca)](_0x143a44[_0x39ee3f(0x133)],0x0)&&!process[_0x39ee3f(0x13c)][_0x39ee3f(0xc2)]){let _0x68f291=0x0;try{_0x68f291=(await _0x1b5413['lonrv'](listCloudProfiles))[_0x39ee3f(0x133)];}catch{_0x68f291=0x1;}_0x68f291===0x0&&console[_0x39ee3f(0x9d)]('\x0a'+_0x1b5413['UArFr'](formatProfileRequiredMessage,_0x3e2d20=>bold(_0x3e2d20)));}const _0x2115d7=_0xfc5924[_0x39ee3f(0x94)]?_0xfc5924[_0x39ee3f(0x94)][_0x39ee3f(0xfc)](_0x27717d=>_0x27717d['trim']()):[],_0x53bc65=getGitRepoUrl(),_0x5407a4=getGitBranch();console[_0x39ee3f(0xd4)](_0x1b5413['MSpgw']);const _0x16769f=await createFeature({'name':_0x2ec49b,'description':_0xfc5924[_0x39ee3f(0x12f)],'checklist':_0x2115d7,'gitRepoUrl':_0x53bc65,'gitBranch':_0x5407a4});await _0x1b5413[_0x39ee3f(0x11e)](setActiveFeatureId,_0x16769f['id']),await tryStartCurrentSession(_0x16769f['id']);const _0x23e65c=process[_0x39ee3f(0x13c)]['CLAUDE_SESSION_ID'];_0x23e65c&&_0x1b5413[_0x39ee3f(0xdf)](registerSession,_0x23e65c,_0x16769f['id']),console[_0x39ee3f(0xd4)](_0x39ee3f(0x107)+_0x16769f['id']),displayFeature(_0x16769f,_0x16769f['checklistItems']),console[_0x39ee3f(0xd4)](_0x39ee3f(0x135));}export async function featureList(_0x8ed7a4){const _0x30d31c=_0x18344c,_0x51210e={'euIdm':function(_0x4cd11e,_0x349ca1){return _0x4cd11e(_0x349ca1);},'IPQxp':function(_0xea38b6,_0x1996f5){return _0xea38b6===_0x1996f5;},'BtQqa':_0x30d31c(0x134),'alPHT':function(_0x5fe77f,_0x49f179){return _0x5fe77f+_0x49f179;},'LxqKD':function(_0x5b145d,_0x1643d3){return _0x5b145d!==_0x1643d3;},'gqSEO':'\x20--current-branch'},_0x5ec289={'limit':_0x8ed7a4['limit']??0xa,'offset':_0x8ed7a4['offset']??0x0,'includeDeleted':_0x8ed7a4[_0x30d31c(0x10c)]};_0x8ed7a4[_0x30d31c(0xd1)]&&(_0x5ec289[_0x30d31c(0x11b)]=getGitRepoUrl(),_0x5ec289['gitBranch']=getGitBranch());const _0x3e1b6c=await _0x51210e['euIdm'](listFeatures,_0x5ec289);if(_0x51210e[_0x30d31c(0x8d)](_0x3e1b6c[_0x30d31c(0x14f)][_0x30d31c(0x133)],0x0)){console['log'](_0x51210e['BtQqa']);return;}const _0x18af52=_0x3e1b6c[_0x30d31c(0xb8)]>_0x3e1b6c[_0x30d31c(0x14f)]['length']?'Showing\x20'+_0x3e1b6c['items'][_0x30d31c(0x133)]+_0x30d31c(0x15b)+_0x3e1b6c[_0x30d31c(0xb8)]:_0x3e1b6c['totalCount']+_0x30d31c(0x14d);console['log']('\x0a'+_0x18af52+':\x0a');for(const _0x18c564 of _0x3e1b6c['items']){console['log'](''+_0x18c564['name']),console['log']('\x20\x20\x20ID:\x20'+_0x18c564['id']),_0x18c564['stats']&&console[_0x30d31c(0xd4)]('\x20\x20\x20Progress:\x20'+_0x51210e[_0x30d31c(0x149)](getProgressDisplay,_0x18c564['stats'])),_0x18c564['gitBranch']&&console['log']('\x20\x20\x20Branch:\x20'+_0x18c564['gitBranch']),console[_0x30d31c(0xd4)]('\x20\x20\x20Created:\x20'+new Date(_0x18c564[_0x30d31c(0x111)])['toLocaleDateString']()),console[_0x30d31c(0xd4)]('');}const _0x181bb4=_0x5ec289['limit']??0xa,_0x2905d1=_0x51210e[_0x30d31c(0xd8)](_0x5ec289['offset']??0x0,_0x3e1b6c[_0x30d31c(0x14f)][_0x30d31c(0x133)]);if(_0x2905d1<_0x3e1b6c['totalCount']){const _0x5874b3=_0x51210e[_0x30d31c(0x96)](_0x181bb4,0xa)?'\x20--limit\x20'+_0x181bb4:'',_0x968ebd=_0x8ed7a4['currentBranch']?_0x51210e[_0x30d31c(0x156)]:'',_0xe6a897=_0x8ed7a4['includeDeleted']?_0x30d31c(0xcd):'';console[_0x30d31c(0xd4)]('Next\x20page:\x20ranger\x20list\x20--offset\x20'+_0x2905d1+_0x5874b3+_0x968ebd+_0xe6a897);}}export async function featureShow(_0x508553){const _0x53b7a6=_0x18344c,_0x19d0a1={'ukhAV':'No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','ZAhdh':function(_0x1ba780,_0x1d1603){return _0x1ba780(_0x1d1603);}},_0xeeb375=_0x508553||await getActiveFeatureId();if(!_0xeeb375)throw new Error(_0x19d0a1[_0x53b7a6(0x153)]);const _0x3be79b=await _0x19d0a1['ZAhdh'](getFeature,_0xeeb375);displayFeature(_0x3be79b,_0x3be79b['checklistItems']);}function _0x58e8(_0x156783,_0x2d265a){_0x156783=_0x156783-0x7f;const _0x4d46a1=_0x4d46();let _0x58e8cc=_0x4d46a1[_0x156783];return _0x58e8cc;}export async function featureResume(_0x38cc81){const _0x42b05d=_0x18344c,_0x3e52a2={'zxaQs':function(_0x5a8ea4,_0x39e2c3){return _0x5a8ea4(_0x39e2c3);},'SglJQ':function(_0x4b0299,_0x47b345){return _0x4b0299&&_0x47b345;},'SRgtJ':function(_0x488f0b,_0x3da6f8){return _0x488f0b||_0x3da6f8;},'IOfjD':_0x42b05d(0xc5),'CDxKs':'\x0aNo\x20matching\x20active\x20feature\x20reviews\x20found.','pQtVL':'\x0aNon-interactive\x20mode\x20detected.\x20Multiple\x20feature\x20reviews\x20found:','RWtdx':'selected','sgJHG':function(_0x262094,_0x3fd229,_0x4c4647){return _0x262094(_0x3fd229,_0x4c4647);},'ANjBT':function(_0xb718fa,_0x4f9323,_0x32ff61){return _0xb718fa(_0x4f9323,_0x32ff61);}};if(_0x38cc81){const _0x3c6fa4=await getFeature(_0x38cc81);await setActiveFeatureId(_0x3c6fa4['id']);const _0x4d7f54=getGitBranch();_0x4d7f54&&_0x4d7f54!==_0x3c6fa4['gitBranch']&&(await updateFeature(_0x3c6fa4['id'],{'gitBranch':_0x4d7f54}),console['log'](_0x42b05d(0x167)+_0x4d7f54));console['log']('\x0a✅\x20Resumed\x20feature\x20review:\x20'+_0x3c6fa4[_0x42b05d(0x84)]+'\x20('+_0x3c6fa4['id']+')'),await _0x3e52a2['zxaQs'](tryStartCurrentSession,_0x3c6fa4['id']);const _0x36c4a3=process['env']['CLAUDE_SESSION_ID'];_0x36c4a3&&registerSession(_0x36c4a3,_0x3c6fa4['id']);displayFeature(_0x3c6fa4,_0x3c6fa4[_0x42b05d(0xe9)]),await printFeedbackNudge(_0x3c6fa4['id']);return;}const _0xc00fa8=getGitRepoUrl(),_0x23ee9d=getGitBranch();if(_0x3e52a2['SglJQ'](!_0xc00fa8,!_0x23ee9d))throw new Error('Not\x20in\x20a\x20git\x20repository.');console[_0x42b05d(0xd4)](_0x42b05d(0xba)+_0x3e52a2[_0x42b05d(0x151)](_0xc00fa8,_0x3e52a2[_0x42b05d(0xa1)])+'\x20/\x20'+(_0x23ee9d||'any')+'...');const _0x29d8ab=await _0x3e52a2[_0x42b05d(0xe2)](listFeatures,{'gitRepoUrl':_0xc00fa8,'gitBranch':_0x23ee9d}),_0x520e3d=_0x29d8ab[_0x42b05d(0x14f)]['filter'](_0x18302d=>_0x18302d[_0x42b05d(0x121)]?_0x18302d[_0x42b05d(0x121)]!==_0x42b05d(0x13e):!_0x18302d['completedAt']);if(_0x520e3d[_0x42b05d(0x133)]===0x0){console['log'](_0x3e52a2[_0x42b05d(0x9a)]),console['log'](_0x42b05d(0x99));return;}let _0x484cd3;if(_0x520e3d['length']===0x1)_0x484cd3=_0x520e3d[0x0];else{const _0x53ce30=process[_0x42b05d(0x148)][_0x42b05d(0x14c)]&&process[_0x42b05d(0x154)][_0x42b05d(0x14c)];if(!_0x53ce30){console['log'](_0x3e52a2[_0x42b05d(0x93)]);for(const _0x301cb6 of _0x520e3d){console[_0x42b05d(0xd4)]('\x20\x20'+_0x301cb6[_0x42b05d(0x84)]),console['log'](_0x42b05d(0xed)+_0x301cb6['id']),_0x301cb6['stats']&&console[_0x42b05d(0xd4)]('\x20\x20\x20\x20\x20Progress:\x20'+getProgressDisplay(_0x301cb6[_0x42b05d(0xea)])),_0x301cb6['gitBranch']&&console['log']('\x20\x20\x20\x20\x20Branch:\x20'+_0x301cb6['gitBranch']);}throw new Error('Please\x20specify\x20the\x20feature\x20review\x20ID:\x20ranger\x20resume\x20<id>');}const {selected:_0x4e0262}=await _0x4ba644[_0x42b05d(0xe6)]([{'type':'list','name':_0x3e52a2[_0x42b05d(0xce)],'message':'Multiple\x20feature\x20reviews\x20found.\x20Select\x20one:','choices':_0x520e3d['map'](_0x20efb3=>({'name':_0x20efb3['name']+'\x20('+_0x20efb3['id']+')','value':_0x20efb3['id']}))}]);_0x484cd3=_0x520e3d['find'](_0x53b350=>_0x53b350['id']===_0x4e0262);}await setActiveFeatureId(_0x484cd3['id']);_0x23ee9d&&_0x23ee9d!==_0x484cd3[_0x42b05d(0x159)]&&(await _0x3e52a2[_0x42b05d(0x146)](updateFeature,_0x484cd3['id'],{'gitBranch':_0x23ee9d}),console['log'](_0x42b05d(0x167)+_0x23ee9d));console[_0x42b05d(0xd4)](_0x42b05d(0x114)+_0x484cd3['name']+'\x20('+_0x484cd3['id']+')'),await _0x3e52a2['zxaQs'](tryStartCurrentSession,_0x484cd3['id']);const _0x4852aa=await getFeature(_0x484cd3['id']),_0x1baf12=process[_0x42b05d(0x13c)]['CLAUDE_SESSION_ID'];_0x1baf12&&_0x3e52a2['sgJHG'](registerSession,_0x1baf12,_0x4852aa['id']),_0x3e52a2[_0x42b05d(0xc1)](displayFeature,_0x4852aa,_0x4852aa['checklistItems']),await _0x3e52a2['zxaQs'](printFeedbackNudge,_0x4852aa['id']);}async function printFeedbackNudge(_0xe147a1){const _0x176841=_0x18344c,_0x30d087={'fZzNG':function(_0x49d306,_0x64da7,_0x310302){return _0x49d306(_0x64da7,_0x310302);}};try{const {items:_0x31bdb4}=await getActionItems(_0xe147a1);let _0x5aefe5=0x0,_0x4c4bb6=0x0;for(const _0x1d49cc of _0x31bdb4){const _0x285d7b=await _0x30d087['fZzNG'](getItemFeedback,_0xe147a1,_0x1d49cc['id']);_0x285d7b['unaddressedComments']['length']>0x0&&(_0x5aefe5+=_0x285d7b['unaddressedComments'][_0x176841(0x133)],_0x4c4bb6++);}_0x5aefe5>0x0&&(console[_0x176841(0xd4)]('\x0a⚠️\x20\x20'+_0x5aefe5+_0x176841(0x91)+_0x4c4bb6+_0x176841(0xae)),console[_0x176841(0xd4)](_0x176841(0xf0)));}catch{}}async function tryStartCurrentSession(_0x2f7cd3){const _0x5b17cd=_0x18344c,_0x43f339={'rFLBr':function(_0x5549c7,_0xc377d4){return _0x5549c7(_0xc377d4);},'LSfSE':function(_0x5cd30,_0x37dde4,_0x4e8c88){return _0x5cd30(_0x37dde4,_0x4e8c88);}};try{const {sessions:_0x3a6e75}=await _0x43f339['rFLBr'](listFeatureSessions,_0x2f7cd3),_0x5e1b44=_0x3a6e75[_0x5b17cd(0xfb)](_0x1c0511=>_0x1c0511[_0x5b17cd(0x121)]==='ready');_0x5e1b44&&(await _0x43f339['LSfSE'](startSession,_0x2f7cd3,_0x5e1b44['id']),console[_0x5b17cd(0xd4)]('\x20\x20\x20▶️\x20Started\x20session\x20'+_0x5e1b44['iteration']));}catch{}}export async function featureReport(_0x18d7e4,_0x5c7e1e){const _0x31d04d=_0x18344c,_0x225696={'oNOgT':function(_0x36dfba){return _0x36dfba();},'IniGK':'No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.','VVGMs':_0x31d04d(0xb6),'zvzfz':function(_0x1d5baa,_0x534fda,_0x43a7f1){return _0x1d5baa(_0x534fda,_0x43a7f1);},'qtZrq':function(_0x630148,_0x4352e8){return _0x630148(_0x4352e8);},'lnlIt':'utf-8'},_0x47a4d0=_0x18d7e4||await _0x225696[_0x31d04d(0x11f)](getActiveFeatureId);if(!_0x47a4d0)throw new Error(_0x225696[_0x31d04d(0x158)]);console['log']('\x0aGenerating\x20report...');const _0x2c083d=await getFeatureReportMarkdown(_0x47a4d0,{'style':_0x5c7e1e[_0x31d04d(0xbe)]}),_0xd88d26=_0x5c7e1e['output']||join(getRangerDir(),_0x225696['VVGMs'],_0x47a4d0+_0x31d04d(0x12d)),_0x525aac=_0x225696[_0x31d04d(0x13f)](join,_0xd88d26,'..');!_0x225696['qtZrq'](existsSync,_0x525aac)&&await mkdir(_0x525aac,{'recursive':!![]}),await writeFile(_0xd88d26,_0x2c083d,_0x225696['lnlIt']),console[_0x31d04d(0xd4)]('\x0a✅\x20Report\x20generated:\x20'+_0xd88d26);}function getScenarioResult(_0x196cc2){const _0x84fa61=_0x18344c,_0xe836aa={'zoFYR':function(_0x11439b,_0x3ddf47){return _0x11439b===_0x3ddf47;},'fVKfd':_0x84fa61(0x157)};if(_0xe836aa[_0x84fa61(0x89)](_0x196cc2['status'],_0x84fa61(0x88)))return _0x196cc2['terminalReason']??'closed';if(_0x196cc2[_0x84fa61(0x121)]===_0x84fa61(0xe4))return _0xe836aa[_0x84fa61(0xcc)];return _0x196cc2['status'];}function getScenarioRationale(_0x4ccffe,_0x4c6a01){const _0x2455a7=_0x18344c,_0x4e7de6={'FIYoY':_0x2455a7(0xe0)},_0x525463=_0x4e7de6['FIYoY']['split']('|');let _0x440ca1=0x0;while(!![]){switch(_0x525463[_0x440ca1++]){case'0':if(_0x4ccffe[_0x2455a7(0x97)])return _0x4ccffe['blockedReason'];continue;case'1':return null;case'2':if(_0x4ccffe['notes'])return _0x4ccffe[_0x2455a7(0xa6)];continue;case'3':if(_0x4c6a01)return _0x4c6a01;continue;case'4':if(_0x4ccffe['canceledReason'])return _0x4ccffe['canceledReason'];continue;case'5':if(_0x4ccffe['incompleteReason'])return _0x4ccffe[_0x2455a7(0x8a)];continue;}break;}}export async function featureReportPrDescription(_0x485c39,_0x1d66a6){const _0x436681=_0x18344c,_0x55481f={'FBLYg':_0x436681(0x11a),'EQDAp':function(_0x1059da,_0x57fe29,_0x3eef51){return _0x1059da(_0x57fe29,_0x3eef51);},'ztCNJ':'\x0a❌\x20No\x20scenarios\x20found\x20to\x20include.','hKutl':function(_0x383400,_0x53abf4){return _0x383400>_0x53abf4;},'jEtSg':function(_0x16a713,_0x4e0fb1){return _0x16a713<_0x4e0fb1;},'lhwti':_0x436681(0x125),'wErjm':function(_0x29a3d9,_0x2d23a8,_0x5de973){return _0x29a3d9(_0x2d23a8,_0x5de973);}},_0x39ff60=_0x485c39||await getActiveFeatureId();if(!_0x39ff60)throw new Error(_0x55481f['FBLYg']);const _0x420df5=await getFeature(_0x39ff60),_0x161ed9=_0x420df5[_0x436681(0xe9)]||[],_0x589bb5=_0x55481f['EQDAp'](getCurrentSessionItems,_0x420df5,_0x161ed9);_0x589bb5[_0x436681(0x133)]===0x0&&(console[_0x436681(0x8c)](_0x55481f['ztCNJ']),process[_0x436681(0x130)](0x1));const _0x37bda6=_0x1d66a6['excludeScenarios']??[],_0x3db834=_0x37bda6[_0x436681(0x10e)](_0x28a2f7=>!Number[_0x436681(0x140)](_0x28a2f7)||_0x28a2f7<0x1||_0x28a2f7>_0x589bb5['length']);if(_0x55481f['hKutl'](_0x3db834['length'],0x0)){console[_0x436681(0x8c)]('\x0a❌\x20Invalid\x20scenario\x20number(s):\x20'+_0x3db834['join'](',\x20')),console[_0x436681(0xd4)](_0x436681(0xf1));for(let _0x5b8340=0x0;_0x55481f[_0x436681(0x7f)](_0x5b8340,_0x589bb5[_0x436681(0x133)]);_0x5b8340++){console['log']('\x20\x20'+(_0x5b8340+0x1)+'.\x20'+_0x589bb5[_0x5b8340][_0x436681(0x12f)]);}process['exit'](0x1);}const _0x525c43=new Set(_0x37bda6[_0x436681(0xfc)](_0x139dd6=>_0x139dd6-0x1)),_0x4458c4=_0x589bb5['filter']((_0x2ad937,_0x4aad97)=>!_0x525c43[_0x436681(0xbc)](_0x4aad97));_0x4458c4[_0x436681(0x133)]===0x0&&(console['error'](_0x55481f['lhwti']),process['exit'](0x1));if(_0x1d66a6['json'])await outputJsonReport(_0x39ff60,_0x420df5,_0x4458c4);else{const _0xf71b42=await _0x55481f[_0x436681(0x138)](getFeatureReportMarkdown,_0x39ff60,{'itemIds':_0x4458c4['map'](_0x231159=>_0x231159['id'])});process['stdout']['write'](_0xf71b42[_0x436681(0x108)]()+'\x0a');}}async function outputJsonReport(_0x56fe30,_0x27631c,_0x1e885a){const _0x34d648=_0x18344c,_0x3ff8ce={'yeDcJ':function(_0x187f20,_0x15f448){return _0x187f20===_0x15f448;},'ZZGVo':function(_0x486c94,_0x462f1c){return _0x486c94(_0x462f1c);},'rpNKz':function(_0xb2ce0e){return _0xb2ce0e();},'LnykZ':function(_0x52d156,_0x4cfb2d){return _0x52d156+_0x4cfb2d;}},_0x8aeca=_0x3ff8ce['rpNKz'](getApiBaseUrl),_0x3754da=await getFeatureReport(_0x56fe30),_0x2c789e=new Map(_0x3754da[_0x34d648(0xe9)][_0x34d648(0xfc)](_0x32b3e0=>[_0x32b3e0['id'],_0x32b3e0])),_0x11964c=await Promise[_0x34d648(0x166)](_0x1e885a[_0x34d648(0xfc)](async _0x57a421=>{const _0x58aba5=_0x34d648,_0x4e1d6f=_0x2c789e[_0x58aba5(0x115)](_0x57a421['id']),_0x22c978=_0x4e1d6f?.[_0x58aba5(0x9c)]??null;let _0x5d7fe3=[];if(_0x57a421[_0x58aba5(0x15e)])try{const {steps:_0x558047}=await getBrowserSessionSteps(_0x57a421['browserSessionId']);_0x558047[_0x58aba5(0x133)]>0x0&&(_0x5d7fe3=_0x558047[_0x58aba5(0xfc)](_0x4cb402=>{const _0x2bba87=_0x58aba5,_0x2b3d58=_0x4cb402[_0x2bba87(0x124)][_0x2bba87(0xfb)](_0x198695=>_0x198695[_0x2bba87(0x132)]==='screenshot'&&_0x198695[_0x2bba87(0xbd)]==='after')??_0x4cb402[_0x2bba87(0x124)]['find'](_0x1e78c3=>_0x1e78c3[_0x2bba87(0x132)]==='screenshot');let _0x4b5714=null,_0x26ce07=null;if(_0x2b3d58){const _0x13491a=_0x2b3d58[_0x2bba87(0x137)][_0x2bba87(0xbb)]['split']('/')['pop']();_0x4b5714=_0x8aeca+'/api/v1/mcp/browser-sessions/'+_0x57a421[_0x2bba87(0x15e)]+'/artifacts/'+_0x13491a,_0x13491a&&(_0x26ce07=_0x13491a[_0x2bba87(0xd2)](/\.\w+$/,'')['replace'](/^(key_)?\d+_/,'')[_0x2bba87(0xd2)](/[-_]/g,'\x20'));}return{'description':_0x26ce07||_0x4cb402['description']||_0x4cb402[_0x2bba87(0xa9)]||_0x2bba87(0x100)+_0x4cb402['position'],'screenshot':_0x4b5714,'is_key_step':_0x4cb402['isKeyStep']};}));}catch{}return _0x3ff8ce['yeDcJ'](_0x5d7fe3['length'],0x0)&&_0x22c978?.[_0x58aba5(0x14b)]&&(_0x5d7fe3=_0x22c978[_0x58aba5(0x14b)][_0x58aba5(0xfc)]((_0x9d51bf,_0x2829fe)=>({'description':_0x58aba5(0x10a)+(_0x2829fe+0x1),'screenshot':_0x9d51bf,'is_key_step':![]}))),{'description':_0x57a421[_0x58aba5(0x12f)],'result':_0x3ff8ce['ZZGVo'](getScenarioResult,_0x57a421),'rationale':getScenarioRationale(_0x57a421,_0x22c978?.[_0x58aba5(0x85)]),'steps':_0x5d7fe3};})),_0x2e5212={'url':_0x27631c['dashboardUrl'],'scenarios':_0x11964c};process['stdout']['write'](_0x3ff8ce[_0x34d648(0x117)](JSON['stringify'](_0x2e5212,null,0x2),'\x0a'));}export async function featureConcludeSession(_0xde8b90){const _0xe3951=_0x18344c,_0x3f7748={'YWofi':function(_0x4b123b){return _0x4b123b();},'pHCRy':'No\x20active\x20session\x20for\x20this\x20feature\x20review.','TCDFo':_0xe3951(0xe5),'xETDb':function(_0x23498d,_0x386d5f){return _0x23498d===_0x386d5f;},'dvDsc':_0xe3951(0x10f),'boPSn':function(_0x335175,_0x43feaf){return _0x335175!==_0x43feaf;},'hlEVZ':_0xe3951(0xa8)},_0x4d5a23=_0xde8b90||await _0x3f7748[_0xe3951(0xde)](getActiveFeatureId);if(!_0x4d5a23)throw new Error(_0xe3951(0x13b));const _0xf1ac62=await getFeature(_0x4d5a23);if(!_0xf1ac62['currentSessionId'])throw new Error(_0x3f7748[_0xe3951(0xdc)]);const {sessions:_0x244114}=await listFeatureSessions(_0x4d5a23),_0x4c7232=_0x244114['find'](_0x4e118c=>_0x4e118c['id']===_0xf1ac62['currentSessionId']);if(!_0x4c7232)throw new Error(_0x3f7748[_0xe3951(0x10b)]);if(_0x3f7748[_0xe3951(0xa3)](_0x4c7232[_0xe3951(0x121)],_0x3f7748['dvDsc'])){console['log'](_0xe3951(0x119));return;}if(_0x3f7748['boPSn'](_0x4c7232[_0xe3951(0x121)],'in_progress'))throw new Error('Cannot\x20conclude\x20session\x20with\x20status:\x20'+_0x4c7232['status']);console[_0xe3951(0xd4)](_0x3f7748['hlEVZ']),await concludeSession(_0x4d5a23,_0xf1ac62['currentSessionId']),console['log']('\x0a✅\x20Session\x20'+_0x4c7232[_0xe3951(0xa2)]+'\x20concluded.'),console[_0xe3951(0xd4)](_0xe3951(0x142));}export async function featureSessions(_0x552aeb){const _0x26bcb4=_0x18344c,_0x27bf06={'EBPeI':function(_0x35ec8e){return _0x35ec8e();},'CYPgy':'No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.','RiFDr':function(_0x36557e,_0x67b2fe){return _0x36557e(_0x67b2fe);},'ZLzaR':'completed','HKXPp':function(_0x14b811,_0x41e10d){return _0x14b811===_0x41e10d;},'FWAkP':_0x26bcb4(0x157)},_0x100f5f=_0x552aeb||await _0x27bf06['EBPeI'](getActiveFeatureId);if(!_0x100f5f)throw new Error(_0x27bf06['CYPgy']);const _0x2f2365=await _0x27bf06['RiFDr'](getFeature,_0x100f5f);console[_0x26bcb4(0xd4)]('\x0a📁\x20Sessions\x20for\x20feature\x20review:\x20'+_0x2f2365['name']+'\x0a');const {sessions:_0x5d6c28}=await listFeatureSessions(_0x100f5f);if(_0x5d6c28[_0x26bcb4(0x133)]===0x0){console[_0x26bcb4(0xd4)](_0x26bcb4(0xaa));return;}for(const _0x4e23a3 of _0x5d6c28){const _0x2e1e83=_0x4e23a3[_0x26bcb4(0x121)]===_0x27bf06['ZLzaR']?'✅':_0x27bf06[_0x26bcb4(0x101)](_0x4e23a3['status'],_0x27bf06['FWAkP'])?'🔄':'▶️';console['log'](_0x2e1e83+'\x20Session\x20'+_0x4e23a3[_0x26bcb4(0xa2)]+'\x20('+_0x4e23a3['id']+')'),console[_0x26bcb4(0xd4)]('\x20\x20\x20Status:\x20'+_0x4e23a3['status']),console['log']('\x20\x20\x20Created:\x20'+new Date(_0x4e23a3['createdAt'])['toLocaleString']()),_0x4e23a3['completedAt']&&console['log']('\x20\x20\x20Completed:\x20'+new Date(_0x4e23a3[_0x26bcb4(0x162)])[_0x26bcb4(0x143)]()),console['log']('');}}export async function featureAddScenario(_0x5a141b,_0x1ad26c){const _0x3068fa=_0x18344c,_0x1802f2={'BNIFk':function(_0x2b460f){return _0x2b460f();},'LIIBc':'No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','RMTzl':function(_0x225281,_0x32dcfb){return _0x225281(_0x32dcfb);},'iwcRd':function(_0x3f1e5e,_0x274c94){return _0x3f1e5e(_0x274c94);},'LZGZs':function(_0x297fbd,_0xc811fe,_0x47d0e4){return _0x297fbd(_0xc811fe,_0x47d0e4);}},_0x10f6f5=_0x1ad26c||await _0x1802f2['BNIFk'](getActiveFeatureId);if(!_0x10f6f5)throw new Error(_0x1802f2[_0x3068fa(0xd9)]);const _0x4f2541=await _0x1802f2['RMTzl'](getFeature,_0x10f6f5);if(_0x4f2541[_0x3068fa(0xab)]&&!_0x4f2541[_0x3068fa(0xab)]['submittedAt'])throw new Error(_0x3068fa(0x87)+_0x4f2541[_0x3068fa(0xf8)]);await createChecklistItem(_0x10f6f5,_0x5a141b);const _0x2a0ac0=await _0x1802f2['iwcRd'](getFeature,_0x10f6f5);console[_0x3068fa(0xd4)]('\x0a✅\x20Scenario\x20added'),_0x1802f2['LZGZs'](displayFeature,_0x2a0ac0,_0x2a0ac0[_0x3068fa(0xe9)]);}export async function featureEditScenario(_0x35fcd1,_0x30dc4b){const _0x1d9c9c=_0x18344c,_0x531ca7={'SfSJv':function(_0x383908){return _0x383908();},'hOEGM':'Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','rNTJB':function(_0x10d5a3,_0x308eff){return _0x10d5a3(_0x308eff);},'aQZhn':'\x0a❌\x20Cannot\x20edit\x20scenario:\x20feature\x20review\x20has\x20an\x20active\x20review.','EFmlI':function(_0x318493,_0x426382){return _0x318493===_0x426382;},'wQqxy':_0x1d9c9c(0xa5),'xeXzu':'\x0a❌\x20No\x20scenario\x20number\x20provided.\x20Use\x20--scenario\x20<number>.','vetzo':_0x1d9c9c(0xf1),'bFpQa':function(_0x1eae3,_0x66c0ee){return _0x1eae3-_0x66c0ee;},'oYNEE':function(_0x253661,_0x581de9){return _0x253661>=_0x581de9;},'WBtdx':function(_0xe71fca,_0x586fef){return _0xe71fca<_0x586fef;},'IETTY':function(_0x331e50,_0x3f237b){return _0x331e50+_0x3f237b;}},_0x25644e=_0x30dc4b['id']||await _0x531ca7['SfSJv'](getActiveFeatureId);!_0x25644e&&(console[_0x1d9c9c(0x8c)]('\x0a❌\x20No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.'),console[_0x1d9c9c(0x8c)](_0x531ca7['hOEGM']),process['exit'](0x1));const _0xfb1bc8=await _0x531ca7['rNTJB'](getFeature,_0x25644e);_0xfb1bc8['latestReview']&&!_0xfb1bc8[_0x1d9c9c(0xab)][_0x1d9c9c(0xdd)]&&(console[_0x1d9c9c(0x8c)](_0x531ca7[_0x1d9c9c(0x105)]),console[_0x1d9c9c(0x8c)]('Please\x20finish\x20your\x20review\x20first:'),console['error']('\x20\x20'+_0xfb1bc8[_0x1d9c9c(0xf8)]),process[_0x1d9c9c(0x130)](0x1));const _0x2c751f=_0xfb1bc8['checklistItems']||[];_0x531ca7[_0x1d9c9c(0xf3)](_0x2c751f['length'],0x0)&&(console[_0x1d9c9c(0x8c)](_0x531ca7[_0x1d9c9c(0x12b)]),process[_0x1d9c9c(0x130)](0x1));if(_0x30dc4b[_0x1d9c9c(0x147)]===undefined){console[_0x1d9c9c(0x8c)](_0x531ca7['xeXzu']),console[_0x1d9c9c(0xd4)](_0x531ca7['vetzo']);for(let _0x255586=0x0;_0x255586<_0x2c751f['length'];_0x255586++){console['log']('\x20\x20'+(_0x255586+0x1)+'.\x20'+_0x2c751f[_0x255586][_0x1d9c9c(0x12f)]);}process['exit'](0x1);}const _0x1ff41e=_0x531ca7[_0x1d9c9c(0x112)](_0x30dc4b[_0x1d9c9c(0x147)],0x1);if(_0x1ff41e<0x0||_0x531ca7['oYNEE'](_0x1ff41e,_0x2c751f[_0x1d9c9c(0x133)])){console['error'](_0x1d9c9c(0x80)+_0x30dc4b['scenario']+_0x1d9c9c(0xa0)+_0x2c751f[_0x1d9c9c(0x133)]+_0x1d9c9c(0x9b)),console[_0x1d9c9c(0xd4)](_0x1d9c9c(0xf1));for(let _0x2276c5=0x0;_0x531ca7[_0x1d9c9c(0x12e)](_0x2276c5,_0x2c751f[_0x1d9c9c(0x133)]);_0x2276c5++){console[_0x1d9c9c(0xd4)]('\x20\x20'+_0x531ca7[_0x1d9c9c(0x11c)](_0x2276c5,0x1)+'.\x20'+_0x2c751f[_0x2276c5]['description']);}process['exit'](0x1);}const _0x20cc7a=_0x2c751f[_0x1ff41e];await updateChecklistItem(_0x25644e,_0x20cc7a['id'],{'description':_0x35fcd1});const _0x2368a4=await _0x531ca7[_0x1d9c9c(0x102)](getFeature,_0x25644e);console[_0x1d9c9c(0xd4)]('\x0a✅\x20Scenario\x20updated'),displayFeature(_0x2368a4,_0x2368a4['checklistItems']);}async function downloadFeedbackImage(_0x9f63f9,_0x74f170){const _0x1881d4=_0x18344c,_0x409fb7={'TramT':function(_0x1e7e38,_0x2b39ff,_0x41e4a4){return _0x1e7e38(_0x2b39ff,_0x41e4a4);},'MbJgp':_0x1881d4(0xb0)};try{const _0x222a6f=_0x409fb7[_0x1881d4(0x12c)](join,getRangerDir(),_0x409fb7[_0x1881d4(0x126)]);await _0x409fb7['TramT'](mkdir,_0x222a6f,{'recursive':!![]});const _0x2cfc1c=_0x409fb7[_0x1881d4(0x12c)](join,_0x222a6f,_0x1881d4(0xb3)+_0x74f170+_0x1881d4(0x163)),_0x10a2e6=await fetch(_0x9f63f9);if(!_0x10a2e6['ok'])return null;const _0x3f3e0c=Buffer['from'](await _0x10a2e6['arrayBuffer']());return await writeFile(_0x2cfc1c,_0x3f3e0c),_0x2cfc1c;}catch{return null;}}export async function featureGetReview(_0x2ac4c9){const _0x37be2b=_0x18344c,_0x5ddb35={'njpfP':_0x37be2b(0x13b),'fOyZX':function(_0x58b233,_0x321822){return _0x58b233(_0x321822);},'MYqYM':function(_0x1341c1,_0x22a9cc){return _0x1341c1===_0x22a9cc;},'AuxBz':function(_0x357ad4,_0x38577f){return _0x357ad4>_0x38577f;},'sJOro':function(_0x183abd,_0x136f42,_0x1bf2d5){return _0x183abd(_0x136f42,_0x1bf2d5);},'IXXAn':'en-US','xcUUZ':'element','RwgbG':function(_0x59b980,_0x3d14c2){return _0x59b980+_0x3d14c2;}},_0x5ee7b8=_0x2ac4c9||await getActiveFeatureId();if(!_0x5ee7b8)throw new Error(_0x5ddb35[_0x37be2b(0x127)]);const _0x1e702e=await _0x5ddb35['fOyZX'](getFeature,_0x5ee7b8),{items:_0x2ac6d5}=await _0x5ddb35['fOyZX'](getActionItems,_0x5ee7b8);console[_0x37be2b(0xd4)](_0x37be2b(0x110)+_0x1e702e[_0x37be2b(0x84)]+'\x20('+_0x1e702e['id']+')\x0a');if(_0x5ddb35['MYqYM'](_0x2ac6d5['length'],0x0)){console[_0x37be2b(0xd4)](_0x37be2b(0x103));return;}for(let _0x5ecd34=0x0;_0x5ecd34<_0x2ac6d5['length'];_0x5ecd34++){const _0xf32293=_0x2ac6d5[_0x5ecd34],_0x33b0da=_0x5ddb35[_0x37be2b(0xe7)](_0xf32293[_0x37be2b(0x104)],0x1)?'\x20(v'+_0xf32293['version']+')':'',_0x402cd4=await _0x5ddb35['sJOro'](getItemFeedback,_0x5ee7b8,_0xf32293['id']);if(_0x402cd4['unaddressedComments'][_0x37be2b(0x133)]>0x0){console['log']('Scenario\x20'+(_0x5ecd34+0x1)+_0x37be2b(0xfa)+_0xf32293[_0x37be2b(0x12f)]+'\x22'+_0x33b0da+'\x20—\x20'+_0x402cd4[_0x37be2b(0xec)]['length']+'\x20unaddressed\x20comment(s)');for(const _0x355a29 of _0x402cd4[_0x37be2b(0xec)]){const _0xaf60f5=new Date(_0x355a29['createdAt'])[_0x37be2b(0xb2)](_0x5ddb35[_0x37be2b(0xb4)],{'month':'short','day':'numeric'}),_0x290aa0=_0x355a29['authorName']||_0x355a29[_0x37be2b(0x90)]||'Unknown';console['log'](_0x37be2b(0xcf)+_0x290aa0+'\x20('+_0xaf60f5+_0x37be2b(0xf4)+_0x355a29['content']+'\x22');if(_0x355a29['assetUrl']){const _0x3b20d4=await downloadFeedbackImage(_0x355a29['assetUrl'],_0x355a29['id']);_0x3b20d4&&console[_0x37be2b(0xd4)]('\x20\x20\x20\x20\x20📷\x20Screenshot:\x20'+_0x3b20d4);}if(_0x355a29['domRef']){const _0x44a5a3=_0x355a29[_0x37be2b(0xff)][_0x37be2b(0x120)]['split'](_0x37be2b(0xfd))[_0x37be2b(0x164)]()?.[_0x37be2b(0xbf)](':')[0x0]||_0x5ddb35[_0x37be2b(0x161)],_0x40a39c=_0x355a29[_0x37be2b(0xff)]['textContent']?'\x20\x22'+_0x355a29[_0x37be2b(0xff)][_0x37be2b(0xd0)][_0x37be2b(0x12a)](0x0,0x3c)+'\x22':'';console[_0x37be2b(0xd4)]('\x20\x20\x20\x20\x20🎯\x20Element:\x20<'+_0x44a5a3+'>'+_0x40a39c),console[_0x37be2b(0xd4)](_0x37be2b(0x141)+_0x355a29[_0x37be2b(0xff)]['selector']);}else{if(_0x355a29[_0x37be2b(0x168)]){const _0x4429dd=_0x355a29[_0x37be2b(0x168)]['coordinates'];_0x355a29[_0x37be2b(0x168)]['type']==='point'&&_0x4429dd[_0x37be2b(0x133)]>=0x2?console[_0x37be2b(0xd4)](_0x37be2b(0x8f)+_0x4429dd[0x0]['toFixed'](0x2)+',\x20'+_0x4429dd[0x1]['toFixed'](0x2)+')'):console[_0x37be2b(0xd4)]('\x20\x20\x20\x20\x20📍\x20Annotation:\x20'+_0x355a29['spatial']['type']+'\x20at\x20['+_0x4429dd[_0x37be2b(0xfc)](_0x1b8571=>_0x1b8571[_0x37be2b(0xd7)](0x2))[_0x37be2b(0xb5)](',\x20')+']');}}}if(_0x402cd4['canonicalFlow']){console['log']('\x20\x20Expected\x20flow:');for(const _0x6ea418 of _0x402cd4[_0x37be2b(0xd6)]['split']('\x0a')){console['log']('\x20\x20\x20\x20'+_0x6ea418);}}}else console['log'](_0x37be2b(0x14a)+_0x5ddb35[_0x37be2b(0x13d)](_0x5ecd34,0x1)+_0x37be2b(0xfa)+_0xf32293[_0x37be2b(0x12f)]+'\x22'+_0x33b0da+_0x37be2b(0x83)),console[_0x37be2b(0xd4)](_0x37be2b(0xa7));console['log']('');}}export async function featureDelete(_0x429add){const _0xcc137a=_0x18344c,_0x45e0f5={'vDwGh':function(_0x492411){return _0x492411();},'tHXkh':_0xcc137a(0x13b),'UoHkO':function(_0x154342,_0xf29fa8){return _0x154342(_0xf29fa8);},'mTyuF':function(_0x2da5b4,_0x2bc917){return _0x2da5b4+_0x2bc917;}},_0x2c2d43=_0x429add||await _0x45e0f5[_0xcc137a(0x15a)](getActiveFeatureId);if(!_0x2c2d43)throw new Error(_0x45e0f5['tHXkh']);const _0x30aca7=await getFeature(_0x2c2d43);await _0x45e0f5[_0xcc137a(0x118)](softDeleteFeature,_0x2c2d43),console['log'](_0xcc137a(0xc3)+_0x30aca7['name']+'\x20('+_0x2c2d43+')'),console[_0xcc137a(0xd4)](_0x45e0f5['mTyuF'](_0xcc137a(0x13a),_0x2c2d43));}export async function featureRestore(_0x16dab6){const _0x1428ff=_0x18344c,_0x4ebf7f={'BzXyq':function(_0x2f7b0a,_0x3c3331){return _0x2f7b0a(_0x3c3331);},'hRmVR':function(_0x1c4ba2,_0x75c6e2,_0x305d78){return _0x1c4ba2(_0x75c6e2,_0x305d78);}};await _0x4ebf7f[_0x1428ff(0x9e)](restoreFeature,_0x16dab6);const _0x19c63b=await _0x4ebf7f[_0x1428ff(0x9e)](getFeature,_0x16dab6);console[_0x1428ff(0xd4)](_0x1428ff(0x113)+_0x19c63b['name']+'\x20('+_0x16dab6+')'),_0x4ebf7f[_0x1428ff(0x122)](displayFeature,_0x19c63b,_0x19c63b[_0x1428ff(0xe9)]);}
@@ -1 +1 @@
1
- (function(_0x236424,_0x332e7f){const _0x5858d5=_0x250d,_0x4e28b0=_0x236424();while(!![]){try{const _0xd993e5=-parseInt(_0x5858d5(0x94))/0x1+parseInt(_0x5858d5(0xa0))/0x2+-parseInt(_0x5858d5(0x98))/0x3*(parseInt(_0x5858d5(0x99))/0x4)+parseInt(_0x5858d5(0x9d))/0x5*(-parseInt(_0x5858d5(0x9b))/0x6)+parseInt(_0x5858d5(0x97))/0x7+parseInt(_0x5858d5(0x93))/0x8+parseInt(_0x5858d5(0x9f))/0x9;if(_0xd993e5===_0x332e7f)break;else _0x4e28b0['push'](_0x4e28b0['shift']());}catch(_0x227312){_0x4e28b0['push'](_0x4e28b0['shift']());}}}(_0x2020,0x1ebae));import{sessionStart,sessionEnd,preCompact,postEdit,planStart,planReminder,exitPlanMode,stopHook,enable,disable,autoPrompt}from'./hooks/index.js';const HOOKS={'session-start':sessionStart,'session-end':sessionEnd,'pre-compact':preCompact,'post-edit':postEdit,'plan-start':planStart,'plan-reminder':planReminder,'exit-plan-mode':exitPlanMode,'stop':stopHook,'enable':enable,'disable':disable,'auto-prompt':autoPrompt};let cancellationHandlersInstalled=![];function installCancellationHandlers(){const _0x59ce4b=_0x250d,_0x21081b={'ytoAV':'SIGTERM'};if(cancellationHandlersInstalled)return;const _0x2cb8ab=()=>{const _0x58a815=_0x250d;process[_0x58a815(0xa1)](0x0);};process[_0x59ce4b(0x91)](_0x59ce4b(0x9e),_0x2cb8ab),process[_0x59ce4b(0x91)](_0x21081b[_0x59ce4b(0x9c)],_0x2cb8ab),process['once']('SIGHUP',_0x2cb8ab),cancellationHandlersInstalled=!![];}export async function hook(_0x15f689,_0x48dc77){const _0x188c64=_0x250d,_0x260d54={'gGbZu':function(_0x4a86cd){return _0x4a86cd();}};_0x260d54['gGbZu'](installCancellationHandlers);const _0xbd1a17=HOOKS[_0x15f689];if(!_0xbd1a17){const _0x195020=Object[_0x188c64(0x92)](HOOKS)[_0x188c64(0x95)](',\x20');console[_0x188c64(0x96)](_0x188c64(0x9a)+_0x15f689),console['error']('Valid\x20hooks:\x20'+_0x195020),process[_0x188c64(0xa1)](0x1);}await _0xbd1a17(_0x48dc77);}function _0x250d(_0x429424,_0x47982b){_0x429424=_0x429424-0x91;const _0x202072=_0x2020();let _0x250d59=_0x202072[_0x429424];return _0x250d59;}function _0x2020(){const _0x5b710f=['285974EWjHdq','exit','once','keys','350208HyKbcO','242978kxJNVF','join','error','1684291jMWXXe','27Lixrqz','103340vvCsTM','Unknown\x20hook:\x20','6Nywnuo','ytoAV','699285XyogWX','SIGINT','2824596HGAbCd'];_0x2020=function(){return _0x5b710f;};return _0x2020();}
1
+ function _0xc8cd(){const _0x535877=['12SgFQdD','exit','error','5505521ceRggR','2022093vpDarF','6HAZqqF','20xkZjge','174560nrKlLi','SIGINT','15175831ZwXLOi','402789oamdla','join','153GRqtMO','once','2976950cSZOtH','2DuKltc','922648JNPdPh'];_0xc8cd=function(){return _0x535877;};return _0xc8cd();}(function(_0x2e76c3,_0x52e032){const _0x4f39f6=_0x281e,_0x2c3cdf=_0x2e76c3();while(!![]){try{const _0x5a0131=-parseInt(_0x4f39f6(0x1e2))/0x1*(parseInt(_0x4f39f6(0x1e7))/0x2)+parseInt(_0x4f39f6(0x1ed))/0x3+parseInt(_0x4f39f6(0x1e8))/0x4*(parseInt(_0x4f39f6(0x1de))/0x5)+-parseInt(_0x4f39f6(0x1dd))/0x6*(-parseInt(_0x4f39f6(0x1ec))/0x7)+parseInt(_0x4f39f6(0x1df))/0x8*(-parseInt(_0x4f39f6(0x1e4))/0x9)+parseInt(_0x4f39f6(0x1e6))/0xa+-parseInt(_0x4f39f6(0x1e1))/0xb*(parseInt(_0x4f39f6(0x1e9))/0xc);if(_0x5a0131===_0x52e032)break;else _0x2c3cdf['push'](_0x2c3cdf['shift']());}catch(_0x532596){_0x2c3cdf['push'](_0x2c3cdf['shift']());}}}(_0xc8cd,0x80ca7));function _0x281e(_0x5a9352,_0x1fd21e){_0x5a9352=_0x5a9352-0x1dd;const _0xc8cd57=_0xc8cd();let _0x281e01=_0xc8cd57[_0x5a9352];return _0x281e01;}import{sessionStart,sessionEnd,preCompact,postEdit,planStart,planReminder,exitPlanMode,stopHook,enable,disable,autoPrompt}from'./hooks/index.js';const HOOKS={'session-start':sessionStart,'session-end':sessionEnd,'pre-compact':preCompact,'post-edit':postEdit,'plan-start':planStart,'plan-reminder':planReminder,'exit-plan-mode':exitPlanMode,'stop':stopHook,'enable':enable,'disable':disable,'auto-prompt':autoPrompt};let cancellationHandlersInstalled=![];function installCancellationHandlers(){const _0x583796=_0x281e,_0x395e61={'VCrYS':'SIGTERM'};if(cancellationHandlersInstalled)return;const _0x594e1c=()=>{const _0x38be27=_0x281e;process[_0x38be27(0x1ea)](0x0);};process[_0x583796(0x1e5)](_0x583796(0x1e0),_0x594e1c),process['once'](_0x395e61['VCrYS'],_0x594e1c),process['once']('SIGHUP',_0x594e1c),cancellationHandlersInstalled=!![];}export async function hook(_0x4970a4,_0x373a6e){const _0x476143=_0x281e,_0x3e5270={'ULjly':function(_0x20ca2e,_0x1b1094){return _0x20ca2e(_0x1b1094);}};installCancellationHandlers();const _0x5eae14=HOOKS[_0x4970a4];if(!_0x5eae14){const _0x5a29ee=Object['keys'](HOOKS)[_0x476143(0x1e3)](',\x20');console[_0x476143(0x1eb)]('Unknown\x20hook:\x20'+_0x4970a4),console[_0x476143(0x1eb)]('Valid\x20hooks:\x20'+_0x5a29ee),process[_0x476143(0x1ea)](0x1);}await _0x3e5270['ULjly'](_0x5eae14,_0x373a6e);}
@@ -1 +1 @@
1
- (function(_0x2f6699,_0x17afd6){const _0xe02f86=_0xab52,_0x46408f=_0x2f6699();while(!![]){try{const _0x1beaf1=-parseInt(_0xe02f86(0x1b1))/0x1*(parseInt(_0xe02f86(0x1af))/0x2)+parseInt(_0xe02f86(0x1a7))/0x3+-parseInt(_0xe02f86(0x1b0))/0x4*(parseInt(_0xe02f86(0x1ac))/0x5)+-parseInt(_0xe02f86(0x1ad))/0x6+-parseInt(_0xe02f86(0x1a9))/0x7+parseInt(_0xe02f86(0x1a6))/0x8*(-parseInt(_0xe02f86(0x1b2))/0x9)+parseInt(_0xe02f86(0x1ae))/0xa;if(_0x1beaf1===_0x17afd6)break;else _0x46408f['push'](_0x46408f['shift']());}catch(_0x3f2033){_0x46408f['push'](_0x46408f['shift']());}}}(_0x4b9f,0x27c5b));function _0xab52(_0x224f24,_0xe54119){_0x224f24=_0x224f24-0x1a5;const _0x4b9fc5=_0x4b9f();let _0xab5264=_0x4b9fc5[_0x224f24];return _0xab5264;}import{readHookInput}from'./output.js';function _0x4b9f(){const _0x1af479=['599948bjDqQc','1oNXwDn','99ynhjkb','UjLNr','187088nnsWbz','288129jUosua','log','46361hWuiqp','UWDbp','session_id','5qmDqIw','741912DdMzQE','8151830dIXgZa','421622BzNYDi'];_0x4b9f=function(){return _0x1af479;};return _0x4b9f();}import{isSessionEnabled,hasSessionBeenPrompted,markSessionPrompted}from'../utils/sessionCache.js';const AUTO_PROMPT_TEXT='\x0a🚨\x20🚨\x20[ACTION\x20REQUIRED]\x20🚨\x20🚨\x0aBefore\x20responding\x20to\x20the\x20user\x27s\x20message,\x20consider\x20whether\x20this\x20task\x20will\x20involve\x20ANY\x20frontend,\x20UI,\x20or\x20browser\x20work.\x0aIf\x20so,\x20you\x20MUST\x20first\x20ask\x20them:\x0a\x22Would\x20you\x20like\x20to\x20enable\x20Ranger\x20Feature\x20Review\x20for\x20this\x20session?\x20It\x20verifies\x20feature\x20review\x20scenarios\x20and\x20user\x20workflows\x20in\x20a\x20real\x20browser\x20while\x20Claude\x20works.\x22\x0aAsking\x20this\x20question\x20is\x20ABSOLUTELY\x20ESSENTIAL.\x20DO\x20NOT\x20SKIP\x20THIS\x20STEP.\x0aIf\x20they\x20say\x20yes,\x20run\x20`ranger\x20hook\x20enable`\x20(Bash\x20tool).\x0aIf\x20they\x20say\x20no,\x20say\x20\x22Sounds\x20good.\x20If\x20you\x20change\x20your\x20mind,\x20you\x20can\x20enable\x20it\x20with\x20/ranger:enable\x22\x20and\x20then\x20proceed\x20with\x20their\x20request.\x0aThis\x20is\x20mandatory\x20—\x20do\x20not\x20skip\x20this\x20step.';export async function autoPrompt(){const _0x2ae99c=_0xab52,_0x13b530={'UWDbp':function(_0x1125d6){return _0x1125d6();},'UjLNr':function(_0x118e5d,_0x2b82d8){return _0x118e5d(_0x2b82d8);}},_0x583c2a=await _0x13b530[_0x2ae99c(0x1aa)](readHookInput),_0x1f701c=_0x583c2a?.[_0x2ae99c(0x1ab)];if(!_0x1f701c)return;if(isSessionEnabled(_0x1f701c)||_0x13b530[_0x2ae99c(0x1a5)](hasSessionBeenPrompted,_0x1f701c))return;markSessionPrompted(_0x1f701c),console[_0x2ae99c(0x1a8)](AUTO_PROMPT_TEXT);}
1
+ function _0x2614(){const _0x25d56e=['mDzBU','6412035OGLdqb','343704hiOSjd','22076JwrWsY','log','822699gEvSpA','28GtAEOK','105SRzDfQ','off','140BKGYdA','5783634NCmZhw','3857682tAyrIm','562928BrWUyZ'];_0x2614=function(){return _0x25d56e;};return _0x2614();}(function(_0x586ab0,_0x527870){const _0x1f93e3=_0x33dc,_0xf89f9d=_0x586ab0();while(!![]){try{const _0x38192c=parseInt(_0x1f93e3(0x1a4))/0x1*(-parseInt(_0x1f93e3(0x1a1))/0x2)+parseInt(_0x1f93e3(0x19c))/0x3+-parseInt(_0x1f93e3(0x1a0))/0x4+parseInt(_0x1f93e3(0x19f))/0x5+parseInt(_0x1f93e3(0x19b))/0x6+parseInt(_0x1f93e3(0x1a5))/0x7*(-parseInt(_0x1f93e3(0x19d))/0x8)+-parseInt(_0x1f93e3(0x1a3))/0x9*(parseInt(_0x1f93e3(0x19a))/0xa);if(_0x38192c===_0x527870)break;else _0xf89f9d['push'](_0xf89f9d['shift']());}catch(_0x3d2413){_0xf89f9d['push'](_0xf89f9d['shift']());}}}(_0x2614,0xc3cd6));import{readHookInput}from'./output.js';function _0x33dc(_0x426124,_0x3100eb){_0x426124=_0x426124-0x19a;const _0x2614bf=_0x2614();let _0x33dca1=_0x2614bf[_0x426124];return _0x33dca1;}import{isSessionEnabled,hasSessionBeenPrompted,markSessionPrompted}from'../utils/sessionCache.js';import{resolveHookMode}from'../utils/environment.js';const AUTO_PROMPT_TEXT='\x0a[Ranger]\x20Before\x20responding,\x20assess\x20whether\x20this\x20task\x20involves\x20frontend,\x20UI,\x20or\x20browser-facing\x20work.\x0a\x0a-\x20If\x20it\x20does:\x20enable\x20Ranger\x20Feature\x20Review\x20yourself\x20by\x20running\x20`ranger\x20hook\x20enable`\x20(Bash\x20tool),\x20tell\x20the\x20user\x20in\x20one\x20short\x20line\x20that\x20you\x27re\x20doing\x20so\x20(e.g.\x20\x22Enabling\x20Ranger\x20feature\x20review\x20—\x20I\x27ll\x20verify\x20this\x20in\x20a\x20real\x20browser\x20as\x20I\x20work.\x22),\x20then\x20continue\x20with\x20their\x20request.\x0a-\x20If\x20it\x20does\x20not:\x20just\x20continue\x20with\x20the\x20request\x20and\x20say\x20nothing\x20about\x20Ranger.\x0a\x0aDecide\x20and\x20act\x20on\x20your\x20own.\x20Do\x20NOT\x20ask\x20the\x20user\x20whether\x20to\x20enable\x20Ranger,\x20and\x20do\x20NOT\x20wait\x20for\x20confirmation\x20—\x20that\x20blocks\x20autonomous\x20and\x20one-shot\x20agents.\x20The\x20user\x20can\x20toggle\x20Ranger\x20anytime\x20with\x20/ranger:enable\x20or\x20/ranger:disable.';export async function autoPrompt(){const _0x24a18e=_0x33dc,_0x4f9a9d={'pHUpd':function(_0x559135){return _0x559135();},'Prqpt':_0x24a18e(0x1a6),'WgspL':function(_0x19bb63,_0xcf68c4){return _0x19bb63(_0xcf68c4);},'mDzBU':function(_0x52580d,_0x363aac){return _0x52580d(_0x363aac);}};if(_0x4f9a9d['pHUpd'](resolveHookMode)===_0x4f9a9d['Prqpt'])return;const _0x1db8f2=await readHookInput(),_0x2d3a79=_0x1db8f2?.['session_id'];if(!_0x2d3a79)return;if(_0x4f9a9d['WgspL'](isSessionEnabled,_0x2d3a79)||hasSessionBeenPrompted(_0x2d3a79))return;_0x4f9a9d[_0x24a18e(0x19e)](markSessionPrompted,_0x2d3a79),console[_0x24a18e(0x1a2)](AUTO_PROMPT_TEXT);}
@@ -1 +1 @@
1
- (function(_0x42f2d6,_0x25b10e){const _0x50cbf0=_0xd0b9,_0x3f1914=_0x42f2d6();while(!![]){try{const _0x43c7eb=-parseInt(_0x50cbf0(0xd5))/0x1*(-parseInt(_0x50cbf0(0xd3))/0x2)+-parseInt(_0x50cbf0(0xdd))/0x3+parseInt(_0x50cbf0(0xd6))/0x4+-parseInt(_0x50cbf0(0xcd))/0x5*(-parseInt(_0x50cbf0(0xcc))/0x6)+-parseInt(_0x50cbf0(0xd9))/0x7*(-parseInt(_0x50cbf0(0xd1))/0x8)+-parseInt(_0x50cbf0(0xd8))/0x9+parseInt(_0x50cbf0(0xd4))/0xa*(-parseInt(_0x50cbf0(0xcb))/0xb);if(_0x43c7eb===_0x25b10e)break;else _0x3f1914['push'](_0x3f1914['shift']());}catch(_0x29e5b3){_0x3f1914['push'](_0x3f1914['shift']());}}}(_0x42ca,0x795e3));function _0xd0b9(_0x10a367,_0x174f81){_0x10a367=_0x10a367-0xca;const _0x42cae4=_0x42ca();let _0xd0b9d4=_0x42cae4[_0x10a367];return _0xd0b9d4;}import{disableSession,disableBranch,getCurrentBranch}from'../utils/sessionCache.js';function _0x42ca(){const _0x35c179=['1048544CrchfO','env','5708061SIfDWY','14DwEDQI','CLAUDE_SESSION_ID','main','master','761424YRGIRX','XdAsS','4882658auDzIW','342822SJKnLH','85ldIviL','wpHPp','vDzSR','#\x20RANGER\x20DISABLED\x0a\x0aThe\x20user\x20has\x20expressly\x20disabled\x20Ranger\x20hooks\x20for\x20this\x20session','3117736XwLXoy','\x20and\x20branch\x20\x27','2Fciaaq','20jaOcWW','260017eBlxIb'];_0x42ca=function(){return _0x35c179;};return _0x42ca();}import{printBlock}from'./output.js';export async function disable(_0x25457e){const _0x5ec01e=_0xd0b9,_0x14e7d2={'wpHPp':function(_0x136bc8,_0x11f2b7){return _0x136bc8(_0x11f2b7);},'LTMPc':'main','rAyWV':function(_0x5bd878,_0x2f7dc6){return _0x5bd878!==_0x2f7dc6;},'noZVk':function(_0x548e8a,_0x368dc8){return _0x548e8a(_0x368dc8);},'XdAsS':function(_0x48bddf,_0x819aff){return _0x48bddf!==_0x819aff;},'vDzSR':_0x5ec01e(0xdc)},_0x5d8e10=_0x25457e||process[_0x5ec01e(0xd7)][_0x5ec01e(0xda)]||'';_0x5d8e10&&_0x14e7d2['wpHPp'](disableSession,_0x5d8e10);const _0x3f6018=getCurrentBranch();_0x3f6018&&_0x3f6018!==_0x14e7d2['LTMPc']&&_0x14e7d2['rAyWV'](_0x3f6018,'master')&&_0x14e7d2[_0x5ec01e(0xce)](disableBranch,_0x3f6018),_0x14e7d2['noZVk'](printBlock,_0x5ec01e(0xd0)+(_0x3f6018&&_0x14e7d2[_0x5ec01e(0xca)](_0x3f6018,_0x5ec01e(0xdb))&&_0x14e7d2[_0x5ec01e(0xca)](_0x3f6018,_0x14e7d2[_0x5ec01e(0xcf)])?_0x5ec01e(0xd2)+_0x3f6018+'\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(_0x148a1a,_0x2a834d){const _0x8a14f0=_0x1b68,_0x58b39b=_0x148a1a();while(!![]){try{const _0x4cf53e=-parseInt(_0x8a14f0(0xef))/0x1+-parseInt(_0x8a14f0(0xf1))/0x2*(-parseInt(_0x8a14f0(0xf3))/0x3)+-parseInt(_0x8a14f0(0xf5))/0x4+parseInt(_0x8a14f0(0xfd))/0x5+parseInt(_0x8a14f0(0xf0))/0x6+-parseInt(_0x8a14f0(0xfc))/0x7*(parseInt(_0x8a14f0(0xfa))/0x8)+parseInt(_0x8a14f0(0xf6))/0x9;if(_0x4cf53e===_0x2a834d)break;else _0x58b39b['push'](_0x58b39b['shift']());}catch(_0x126779){_0x58b39b['push'](_0x58b39b['shift']());}}}(_0x16d9,0x51408));import{disableSession,disableBranch,getCurrentBranch}from'../utils/sessionCache.js';import{printBlock}from'./output.js';function _0x1b68(_0x5747ce,_0x59da93){_0x5747ce=_0x5747ce-0xef;const _0x16d946=_0x16d9();let _0x1b6869=_0x16d946[_0x5747ce];return _0x1b6869;}export async function disable(_0x52fe1a){const _0x5769d6=_0x1b68,_0x5ed83e={'XVqfR':function(_0x5c2f0c,_0x29b572){return _0x5c2f0c(_0x29b572);},'RPbeL':function(_0x41eb60){return _0x41eb60();},'rMtXj':_0x5769d6(0xf4),'OvvOK':function(_0x136629,_0x27d826){return _0x136629!==_0x27d826;},'PxbrB':function(_0xfa8bcc,_0x2d09d4){return _0xfa8bcc!==_0x2d09d4;},'QkQcW':'master'},_0x3dd46d=_0x52fe1a||process['env']['CLAUDE_SESSION_ID']||'';_0x3dd46d&&_0x5ed83e['XVqfR'](disableSession,_0x3dd46d);const _0x3cb2ee=_0x5ed83e[_0x5769d6(0xf9)](getCurrentBranch);_0x3cb2ee&&_0x3cb2ee!==_0x5ed83e[_0x5769d6(0xf7)]&&_0x5ed83e[_0x5769d6(0xf8)](_0x3cb2ee,'master')&&_0x5ed83e[_0x5769d6(0xf2)](disableBranch,_0x3cb2ee),printBlock('#\x20RANGER\x20DISABLED\x0a\x0aThe\x20user\x20has\x20expressly\x20disabled\x20Ranger\x20hooks\x20for\x20this\x20session'+(_0x3cb2ee&&_0x5ed83e['PxbrB'](_0x3cb2ee,_0x5769d6(0xf4))&&_0x3cb2ee!==_0x5ed83e['QkQcW']?_0x5769d6(0xfb)+_0x3cb2ee+'\x27':'')+'.\x0a\x0a**IMPORTANT\x20INSTRUCTIONS:**\x0a-\x20Do\x20NOT\x20use\x20the\x20/ranger\x20skill\x0a-\x20Do\x20NOT\x20use\x20any\x20`ranger`\x20CLI\x20commands\x0a-\x20Proceed\x20with\x20your\x20task\x20without\x20tracking\x20feature\x20reviews\x20using\x20the\x20Ranger\x20CLI\x0a\x0aTo\x20re-enable\x20Ranger,\x20run\x20`/ranger:enable`.');}function _0x16d9(){const _0x362e09=['RPbeL','857408dzbMyj','\x20and\x20branch\x20\x27','42FMyCZX','1212765LouhHO','173709YoODVU','1152630ASUzGu','1412dzIPSI','XVqfR','1293rKEqsY','main','2411856giHpwA','9122337Vnhxor','rMtXj','OvvOK'];_0x16d9=function(){return _0x362e09;};return _0x16d9();}
@@ -1 +1 @@
1
- function _0x439e(){const _0x4cb339=['84194AiIOth','#\x20RANGER\x20ENABLED','470VQKQNa','200223JkWjWL','\x27\x20is\x20now\x20enabled**\x20-\x20Ranger\x20will\x20stay\x20active\x20on\x20this\x20branch\x20across\x20sessions.','3897dMFKzU','main','\x0a\x0a**For\x20ANY\x20UI\x20work,\x20you\x20MUST\x20use\x20the\x20/ranger\x20skill.**\x0a\x0a','5rrqiEm','yDHTb','136KavWCt','4099403NozLFC','3307316KkXkLK','#\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`','yFgvs','239967jXBMSW','6HxLtmN','ranger\x20setup\x20--opencode','zZEUO','XZdXx','22706820elXnpy','Kapsd','1006EemdJZ'];_0x439e=function(){return _0x4cb339;};return _0x439e();}(function(_0x2c13c0,_0x3d89c6){const _0x104469=_0x5ab7,_0x44e249=_0x2c13c0();while(!![]){try{const _0x58a1ca=-parseInt(_0x104469(0xb6))/0x1+parseInt(_0x104469(0xb2))/0x2*(-parseInt(_0x104469(0xb8))/0x3)+parseInt(_0x104469(0xa8))/0x4*(-parseInt(_0x104469(0xbb))/0x5)+-parseInt(_0x104469(0xac))/0x6*(parseInt(_0x104469(0xa7))/0x7)+-parseInt(_0x104469(0xa6))/0x8*(-parseInt(_0x104469(0xab))/0x9)+parseInt(_0x104469(0xb5))/0xa*(parseInt(_0x104469(0xb3))/0xb)+parseInt(_0x104469(0xb0))/0xc;if(_0x58a1ca===_0x3d89c6)break;else _0x44e249['push'](_0x44e249['shift']());}catch(_0x373a1d){_0x44e249['push'](_0x44e249['shift']());}}}(_0x439e,0x6b37e));import{enableSession,getCurrentBranch}from'../utils/sessionCache.js';import{getToken}from'../utils/keychain.js';import{getRangerSkillContent}from'../utils/skillContent.js';import{printBlock}from'./output.js';function _0x5ab7(_0x5dba7c,_0x225880){_0x5dba7c=_0x5dba7c-0xa6;const _0x439e47=_0x439e();let _0x5ab74c=_0x439e47[_0x5dba7c];return _0x5ab74c;}import{update}from'../update.js';export async function enable(_0x1909e7){const _0x774d5e=_0x5ab7,_0x2550ba={'Kapsd':function(_0x913a73,_0x47e527){return _0x913a73(_0x47e527);},'zZEUO':_0x774d5e(0xad),'arWDR':'Restart\x20your\x20OpenCode\x20session\x20after\x20setup.','XZdXx':function(_0x59fb31){return _0x59fb31();},'yDHTb':function(_0x45ea0d){return _0x45ea0d();},'CsEQv':function(_0x536f47,_0xb3e1b7){return _0x536f47!==_0xb3e1b7;},'yFgvs':_0x774d5e(0xb9)},_0x10dc36=_0x1909e7||process['env']['CLAUDE_SESSION_ID']||'',_0x3655bc=_0x2550ba[_0x774d5e(0xb1)](Boolean,_0x1909e7),_0x217a24=await getToken();if(!_0x217a24){const _0x11f849=_0x3655bc?_0x2550ba[_0x774d5e(0xae)]:'ranger\x20setup',_0x5b2f25=_0x3655bc?_0x2550ba['arWDR']:'Restart\x20your\x20Claude\x20Code\x20session\x20after\x20setup.';printBlock(_0x774d5e(0xa9)+_0x11f849+'`\x0a\x0aA\x20browser\x20will\x20open\x20for\x20authentication.\x20A\x20human\x20needs\x20to\x20complete\x20the\x20login.\x0a'+_0x5b2f25);return;}try{await _0x2550ba[_0x774d5e(0xaf)](update);}catch{}_0x10dc36&&enableSession(_0x10dc36);const _0xfd845e=_0x2550ba[_0x774d5e(0xbc)](getCurrentBranch),_0x1d4110=_0xfd845e&&_0x2550ba['CsEQv'](_0xfd845e,_0x2550ba[_0x774d5e(0xaa)])&&_0x2550ba['CsEQv'](_0xfd845e,'master')?'\x0a\x0a**Branch\x20\x27'+_0xfd845e+_0x774d5e(0xb7):'',_0x36f721=_0x2550ba['yDHTb'](getRangerSkillContent);printBlock(_0x774d5e(0xb4)+_0x1d4110+_0x774d5e(0xba)+_0x36f721+'\x0a\x0a##\x20Quick\x20Reference\x0a\x0a**In\x20plan\x20mode:**\x20Include\x20Ranger\x20Feature\x20Review\x20Specification\x20at\x20end\x20of\x20plan.\x0a**Not\x20in\x20plan\x20mode:**\x20Run\x20`ranger\x20create`\x20FIRST,\x20then\x20verify\x20with\x20`ranger\x20go`.');}
1
+ (function(_0x8d1389,_0x3e67cd){const _0x24e52a=_0x35c0,_0x1ec78a=_0x8d1389();while(!![]){try{const _0x48b67c=parseInt(_0x24e52a(0x134))/0x1+-parseInt(_0x24e52a(0x13b))/0x2+-parseInt(_0x24e52a(0x139))/0x3+-parseInt(_0x24e52a(0x13e))/0x4+parseInt(_0x24e52a(0x12e))/0x5*(parseInt(_0x24e52a(0x132))/0x6)+-parseInt(_0x24e52a(0x128))/0x7+parseInt(_0x24e52a(0x125))/0x8*(parseInt(_0x24e52a(0x136))/0x9);if(_0x48b67c===_0x3e67cd)break;else _0x1ec78a['push'](_0x1ec78a['shift']());}catch(_0x4e6f6b){_0x1ec78a['push'](_0x1ec78a['shift']());}}}(_0x5f09,0x4ff76));import{enableSession,getCurrentBranch}from'../utils/sessionCache.js';import{getToken}from'../utils/keychain.js';function _0x35c0(_0x49aff4,_0x3467ed){_0x49aff4=_0x49aff4-0x125;const _0x5f0901=_0x5f09();let _0x35c0a0=_0x5f0901[_0x49aff4];return _0x35c0a0;}import{getRangerSkillContent}from'../utils/skillContent.js';import{printBlock}from'./output.js';import{update}from'../update.js';export async function enable(_0x17fbe9){const _0x5cbe25=_0x35c0,_0x28655e={'agYmJ':function(_0x181b3c,_0x45be99){return _0x181b3c(_0x45be99);},'weuDd':function(_0x53028a){return _0x53028a();},'ZzyGI':'ranger\x20setup\x20--opencode','nGldI':_0x5cbe25(0x133),'CQNkz':_0x5cbe25(0x138),'myHFh':function(_0x3ecd67,_0x4ec426){return _0x3ecd67(_0x4ec426);},'SYpDI':function(_0x4e777c){return _0x4e777c();},'tMFik':function(_0x4d816f,_0xcdc2ad){return _0x4d816f!==_0xcdc2ad;},'tteyy':_0x5cbe25(0x13a),'gLTPI':function(_0x5c3bee,_0x530c62){return _0x5c3bee(_0x530c62);}},_0x2b8532=_0x17fbe9||process['env']['CLAUDE_SESSION_ID']||'',_0x352f54=_0x28655e[_0x5cbe25(0x130)](Boolean,_0x17fbe9),_0x1e2659=await _0x28655e[_0x5cbe25(0x137)](getToken);if(!_0x1e2659){const _0x197986=_0x352f54?_0x28655e['ZzyGI']:_0x28655e[_0x5cbe25(0x127)],_0x2d244d=_0x352f54?_0x28655e[_0x5cbe25(0x12b)]:_0x5cbe25(0x12f);_0x28655e['myHFh'](printBlock,_0x5cbe25(0x135)+_0x197986+'`\x0a\x0aA\x20browser\x20will\x20open\x20for\x20authentication.\x20A\x20human\x20needs\x20to\x20complete\x20the\x20login.\x0a'+_0x2d244d);return;}try{await _0x28655e[_0x5cbe25(0x12a)](update);}catch{}_0x2b8532&&_0x28655e['agYmJ'](enableSession,_0x2b8532);const _0x1552cd=_0x28655e['SYpDI'](getCurrentBranch),_0x2fef36=_0x1552cd&&_0x28655e['tMFik'](_0x1552cd,_0x5cbe25(0x126))&&_0x1552cd!==_0x28655e[_0x5cbe25(0x12d)]?_0x5cbe25(0x131)+_0x1552cd+_0x5cbe25(0x13d):'',_0x2bffa6=_0x28655e['weuDd'](getRangerSkillContent);_0x28655e[_0x5cbe25(0x129)](printBlock,_0x5cbe25(0x12c)+_0x2fef36+_0x5cbe25(0x13c)+_0x2bffa6+'\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`.');}function _0x5f09(){const _0x97412f=['\x27\x20is\x20now\x20enabled**\x20-\x20Ranger\x20will\x20stay\x20active\x20on\x20this\x20branch\x20across\x20sessions.','2569372dZXpKO','40cbgnAR','main','nGldI','2148034btPQRx','gLTPI','SYpDI','CQNkz','#\x20RANGER\x20ENABLED','tteyy','5ISfSHs','Restart\x20your\x20Claude\x20Code\x20session\x20after\x20setup.','agYmJ','\x0a\x0a**Branch\x20\x27','775140VWSktF','ranger\x20setup','204269lpkYGR','#\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`','2628981gjiHFu','weuDd','Restart\x20your\x20OpenCode\x20session\x20after\x20setup.','1256748iEUIQR','master','196682hmehDx','\x0a\x0a**For\x20ANY\x20UI\x20work,\x20you\x20MUST\x20use\x20the\x20/ranger\x20skill.**\x0a\x0a'];_0x5f09=function(){return _0x97412f;};return _0x5f09();}
@@ -1 +1 @@
1
- function _0x3ccd(_0x4df4d3,_0x51cd7d){_0x4df4d3=_0x4df4d3-0x1cf;const _0x581938=_0x5819();let _0x3ccd4b=_0x581938[_0x4df4d3];return _0x3ccd4b;}(function(_0x153f7a,_0x297192){const _0x1859d7=_0x3ccd,_0x7f6114=_0x153f7a();while(!![]){try{const _0x3bc659=parseInt(_0x1859d7(0x1d8))/0x1+parseInt(_0x1859d7(0x1d7))/0x2+parseInt(_0x1859d7(0x1d6))/0x3+parseInt(_0x1859d7(0x1d4))/0x4*(parseInt(_0x1859d7(0x1cf))/0x5)+parseInt(_0x1859d7(0x1d3))/0x6+-parseInt(_0x1859d7(0x1d5))/0x7*(-parseInt(_0x1859d7(0x1d0))/0x8)+parseInt(_0x1859d7(0x1d1))/0x9*(-parseInt(_0x1859d7(0x1d2))/0xa);if(_0x3bc659===_0x297192)break;else _0x7f6114['push'](_0x7f6114['shift']());}catch(_0x560256){_0x7f6114['push'](_0x7f6114['shift']());}}}(_0x5819,0x8b5d8));import{printBlock,getEnabledSessionId}from'./output.js';function _0x5819(){const _0x5ec129=['10ACeUEa','2234970jkcRUE','88292YYDBBN','7aURQRt','1650417qzotqU','1838406nIdnLZ','170736Ldichh','220nVnRQr','1679704UNZJyr','23606172MvxQJo'];_0x5819=function(){return _0x5ec129;};return _0x5819();}export async function exitPlanMode(_0x860dee){const _0x147b75=await getEnabledSessionId(_0x860dee);if(!_0x147b75)return;printBlock('===\x20RANGER:\x20CREATE\x20FEATURE\x20REVIEW\x20NOW\x20===\x0a\x0aYou\x20are\x20about\x20to\x20exit\x20plan\x20mode.\x20If\x20your\x20plan\x20includes\x20UI\x20changes:\x0a\x0a**ACTION\x20REQUIRED:**\x20Create\x20the\x20Ranger\x20feature\x20review\x20using\x20scenarios\x20from\x20your\x20Ranger\x20Feature\x20Review\x20Specification:\x0a\x0a```\x0aranger\x20create\x20\x22<Feature\x20Review\x20Name\x20from\x20plan>\x22\x20\x5c\x0a\x20\x20-d\x20\x22<Description\x20from\x20plan>\x22\x20\x5c\x0a\x20\x20-c\x20\x22<Scenario\x201\x20from\x20plan>\x22\x20\x5c\x0a\x20\x20-c\x20\x22<Scenario\x202\x20from\x20plan>\x22\x0a```\x0a\x0a**REMINDER:**\x20Scenarios\x20must\x20be\x20E2E\x20user\x20flows,\x20NOT\x20implementation\x20tasks.\x0a\x0a**Good:**\x20\x22User\x20can\x20log\x20in\x20with\x20valid\x20credentials\x20and\x20see\x20dashboard\x22\x0a**Bad:**\x20\x22Add\x20form\x20validation\x22\x20or\x20\x22API\x20returns\x20200\x22\x0a\x0aIf\x20you\x20did\x20NOT\x20include\x20a\x20Ranger\x20Feature\x20Review\x20Specification\x20in\x20your\x20plan,\x20go\x20back\x20and\x20add\x20one\x20before\x20proceeding.\x20See\x20/ranger\x20and\x20create.md\x20for\x20guidance.\x0a\x0a===\x20END\x20===');}
1
+ function _0x414b(){const _0x2adf31=['701124bNDrcI','1750MurqDW','46940eaRfVp','ZgVrZ','145812gypVGL','1320056HaOwLD','27425oBnpzK','1010409oMVazU','1395tYpjwa','8RCQUxs','26272aEfpKz'];_0x414b=function(){return _0x2adf31;};return _0x414b();}(function(_0x298765,_0x4a85b9){const _0x19ee68=_0x20da,_0x3f5444=_0x298765();while(!![]){try{const _0x2dc5e1=-parseInt(_0x19ee68(0x12c))/0x1+parseInt(_0x19ee68(0x12e))/0x2*(-parseInt(_0x19ee68(0x129))/0x3)+parseInt(_0x19ee68(0x12a))/0x4+parseInt(_0x19ee68(0x12b))/0x5+-parseInt(_0x19ee68(0x125))/0x6+-parseInt(_0x19ee68(0x126))/0x7*(-parseInt(_0x19ee68(0x12f))/0x8)+-parseInt(_0x19ee68(0x12d))/0x9*(-parseInt(_0x19ee68(0x127))/0xa);if(_0x2dc5e1===_0x4a85b9)break;else _0x3f5444['push'](_0x3f5444['shift']());}catch(_0x18d584){_0x3f5444['push'](_0x3f5444['shift']());}}}(_0x414b,0x894d6));import{printBlock,getEnabledSessionId}from'./output.js';function _0x20da(_0x5adad3,_0x1a1e49){_0x5adad3=_0x5adad3-0x125;const _0x414ba5=_0x414b();let _0x20dad0=_0x414ba5[_0x5adad3];return _0x20dad0;}export async function exitPlanMode(_0x4966b2){const _0x5c31fc=_0x20da,_0x13ea95={'ZgVrZ':function(_0x57ee08,_0x222e2b){return _0x57ee08(_0x222e2b);}},_0x4e002d=await _0x13ea95[_0x5c31fc(0x128)](getEnabledSessionId,_0x4966b2);if(!_0x4e002d)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 _0x5712(_0x358207,_0x425710){_0x358207=_0x358207-0x15c;var _0x4cfd32=_0x4cfd();var _0x5712cc=_0x4cfd32[_0x358207];return _0x5712cc;}(function(_0x2e0d56,_0x2e450a){var _0x44f303=_0x5712,_0x426ad5=_0x2e0d56();while(!![]){try{var _0x14ea3d=parseInt(_0x44f303(0x15d))/0x1*(parseInt(_0x44f303(0x160))/0x2)+-parseInt(_0x44f303(0x161))/0x3*(parseInt(_0x44f303(0x15e))/0x4)+-parseInt(_0x44f303(0x162))/0x5*(-parseInt(_0x44f303(0x163))/0x6)+parseInt(_0x44f303(0x166))/0x7+-parseInt(_0x44f303(0x15f))/0x8+-parseInt(_0x44f303(0x165))/0x9+parseInt(_0x44f303(0x164))/0xa*(parseInt(_0x44f303(0x15c))/0xb);if(_0x14ea3d===_0x2e450a)break;else _0x426ad5['push'](_0x426ad5['shift']());}catch(_0x41d633){_0x426ad5['push'](_0x426ad5['shift']());}}}(_0x4cfd,0xa7be5));function _0x4cfd(){var _0x1d78df=['1cTEesQ','168LksHis','8439064JJPzAD','2027574qdFYWp','31035MQRMKR','509965pNDOki','54btzJwe','10994890zqIGDj','11748654VJLIES','3154501csIhEr','11krBCNO'];_0x4cfd=function(){return _0x1d78df;};return _0x4cfd();}export{sessionStart}from'./sessionStart.js';export{sessionEnd}from'./sessionEnd.js';export{preCompact}from'./preCompact.js';export{postEdit}from'./postEdit.js';export{planStart}from'./planStart.js';export{planReminder}from'./planReminder.js';export{exitPlanMode}from'./exitPlanMode.js';export{stopHook}from'./stopHook.js';export{enable}from'./enable.js';export{disable}from'./disable.js';export{autoPrompt}from'./autoPrompt.js';
1
+ (function(_0x114890,_0x43169e){var _0x90ba79=_0x464c,_0x52cdf0=_0x114890();while(!![]){try{var _0x7c579a=-parseInt(_0x90ba79(0x173))/0x1+parseInt(_0x90ba79(0x171))/0x2*(-parseInt(_0x90ba79(0x16a))/0x3)+-parseInt(_0x90ba79(0x16e))/0x4+-parseInt(_0x90ba79(0x170))/0x5+parseInt(_0x90ba79(0x16d))/0x6+parseInt(_0x90ba79(0x172))/0x7*(-parseInt(_0x90ba79(0x16f))/0x8)+parseInt(_0x90ba79(0x16c))/0x9*(parseInt(_0x90ba79(0x16b))/0xa);if(_0x7c579a===_0x43169e)break;else _0x52cdf0['push'](_0x52cdf0['shift']());}catch(_0x59c9f8){_0x52cdf0['push'](_0x52cdf0['shift']());}}}(_0x5ded,0x909db));export{sessionStart}from'./sessionStart.js';export{sessionEnd}from'./sessionEnd.js';export{preCompact}from'./preCompact.js';function _0x5ded(){var _0x486c6c=['3270798XngqMU','1606326GaUCNZ','2488756jJOYLg','11896URnwFK','1449165urFHHE','326vMhWbm','1155bbfQIH','832148iHfPyJ','17607olQVex','90XjxdEQ'];_0x5ded=function(){return _0x486c6c;};return _0x5ded();}export{postEdit}from'./postEdit.js';export{planStart}from'./planStart.js';export{planReminder}from'./planReminder.js';export{exitPlanMode}from'./exitPlanMode.js';function _0x464c(_0x1036be,_0xf9245c){_0x1036be=_0x1036be-0x16a;var _0x5ded96=_0x5ded();var _0x464c9c=_0x5ded96[_0x1036be];return _0x464c9c;}export{stopHook}from'./stopHook.js';export{enable}from'./enable.js';export{disable}from'./disable.js';export{autoPrompt}from'./autoPrompt.js';
@@ -1 +1 @@
1
- (function(_0x48c6d7,_0x3cfa58){const _0x44e6be=_0x2c95,_0x4efb41=_0x48c6d7();while(!![]){try{const _0x59a7c4=-parseInt(_0x44e6be(0x134))/0x1+-parseInt(_0x44e6be(0x12e))/0x2+-parseInt(_0x44e6be(0x12b))/0x3+parseInt(_0x44e6be(0x135))/0x4*(parseInt(_0x44e6be(0x12c))/0x5)+parseInt(_0x44e6be(0x12d))/0x6*(-parseInt(_0x44e6be(0x12f))/0x7)+parseInt(_0x44e6be(0x129))/0x8*(-parseInt(_0x44e6be(0x132))/0x9)+-parseInt(_0x44e6be(0x137))/0xa*(-parseInt(_0x44e6be(0x128))/0xb);if(_0x59a7c4===_0x3cfa58)break;else _0x4efb41['push'](_0x4efb41['shift']());}catch(_0x388e1c){_0x4efb41['push'](_0x4efb41['shift']());}}}(_0x3324,0xd5b9d));import{isSessionEnabled}from'../utils/sessionCache.js';export function printBlock(_0x18c77a){const _0x3a2cee=_0x2c95;console[_0x3a2cee(0x12a)](_0x18c77a);}export async function readHookInput(){const _0x11dab9=_0x2c95;let _0x24334e='';try{for await(const _0x4b4d50 of process[_0x11dab9(0x133)]){_0x24334e+=_0x4b4d50;}}catch{return null;}if(!_0x24334e[_0x11dab9(0x130)]())return null;try{return JSON['parse'](_0x24334e);}catch{return null;}}export async function getEnabledSessionId(_0x1bb4bf){const _0x39e067=_0x2c95,_0x1d88b9={'hGXwM':function(_0x14cb72){return _0x14cb72();},'DKmag':function(_0x3ce6c8,_0x5ac628){return _0x3ce6c8(_0x5ac628);}};if(_0x1bb4bf)return isSessionEnabled(_0x1bb4bf)?_0x1bb4bf:null;const _0x18a168=await _0x1d88b9[_0x39e067(0x136)](readHookInput),_0x2b4c4d=_0x18a168?.['session_id'];if(!_0x2b4c4d||!_0x1d88b9['DKmag'](isSessionEnabled,_0x2b4c4d))return null;return _0x2b4c4d;}function _0x2c95(_0x58bb95,_0x197e58){_0x58bb95=_0x58bb95-0x128;const _0x33248c=_0x3324();let _0x2c959a=_0x33248c[_0x58bb95];return _0x2c959a;}export async function getEnabledHookContext(_0x1a780f){const _0x1a4d88=_0x2c95,_0x57741b={'lOqcz':function(_0x2f1f0f,_0x1ae052){return _0x2f1f0f(_0x1ae052);},'XUZiG':function(_0x5ac5c7){return _0x5ac5c7();}};if(_0x1a780f){if(!_0x57741b[_0x1a4d88(0x131)](isSessionEnabled,_0x1a780f))return null;return{'sessionId':_0x1a780f,'input':{'session_id':_0x1a780f}};}const _0x3c91ea=await _0x57741b['XUZiG'](readHookInput),_0x5a7b4b=_0x3c91ea?.['session_id'];if(!_0x5a7b4b||!_0x57741b[_0x1a4d88(0x131)](isSessionEnabled,_0x5a7b4b))return null;return{'sessionId':_0x5a7b4b,'input':_0x3c91ea};}function _0x3324(){const _0x7c8d35=['1025244WXqtvJ','6995nJGwKz','2892aTzZJS','3235456sJHoMP','11921DecHjC','trim','lOqcz','11926773BRsHNx','stdin','1122665OfiUYq','4708pTAIku','hGXwM','20140NpNyNv','24343GfQVxd','8pqfROS','log'];_0x3324=function(){return _0x7c8d35;};return _0x3324();}
1
+ (function(_0x27502c,_0x44a3bb){const _0x1a978a=_0x4c8e,_0x2eea78=_0x27502c();while(!![]){try{const _0x10be47=parseInt(_0x1a978a(0x18e))/0x1+parseInt(_0x1a978a(0x18a))/0x2+-parseInt(_0x1a978a(0x184))/0x3*(parseInt(_0x1a978a(0x187))/0x4)+-parseInt(_0x1a978a(0x189))/0x5*(-parseInt(_0x1a978a(0x188))/0x6)+-parseInt(_0x1a978a(0x185))/0x7*(-parseInt(_0x1a978a(0x186))/0x8)+-parseInt(_0x1a978a(0x183))/0x9*(-parseInt(_0x1a978a(0x190))/0xa)+parseInt(_0x1a978a(0x18d))/0xb;if(_0x10be47===_0x44a3bb)break;else _0x2eea78['push'](_0x2eea78['shift']());}catch(_0x38bb4a){_0x2eea78['push'](_0x2eea78['shift']());}}}(_0x32eb,0x44e0c));import{isSessionEnabled}from'../utils/sessionCache.js';export function printBlock(_0x15b310){console['log'](_0x15b310);}export async function readHookInput(){const _0x3af915=_0x4c8e;let _0x522f83='';try{for await(const _0x34981a of process[_0x3af915(0x18c)]){_0x522f83+=_0x34981a;}}catch{return null;}if(!_0x522f83[_0x3af915(0x18b)]())return null;try{return JSON['parse'](_0x522f83);}catch{return null;}}function _0x4c8e(_0x423e60,_0x16df7f){_0x423e60=_0x423e60-0x183;const _0x32ebed=_0x32eb();let _0x4c8efc=_0x32ebed[_0x423e60];return _0x4c8efc;}export async function getEnabledSessionId(_0x21c53c){const _0x38d48b=_0x4c8e,_0x243b42={'zsoDo':function(_0x390b34){return _0x390b34();}};if(_0x21c53c)return isSessionEnabled(_0x21c53c)?_0x21c53c:null;const _0x5c3bbb=await _0x243b42[_0x38d48b(0x18f)](readHookInput),_0x1bad8d=_0x5c3bbb?.['session_id'];if(!_0x1bad8d||!isSessionEnabled(_0x1bad8d))return null;return _0x1bad8d;}export async function getEnabledHookContext(_0x3f13b4){const _0x40742a={'fhqxP':function(_0x3ce8dd,_0x57c749){return _0x3ce8dd(_0x57c749);}};if(_0x3f13b4){if(!isSessionEnabled(_0x3f13b4))return null;return{'sessionId':_0x3f13b4,'input':{'session_id':_0x3f13b4}};}const _0x329114=await readHookInput(),_0x114d1f=_0x329114?.['session_id'];if(!_0x114d1f||!_0x40742a['fhqxP'](isSessionEnabled,_0x114d1f))return null;return{'sessionId':_0x114d1f,'input':_0x329114};}function _0x32eb(){const _0x33a47e=['28452GFNUeO','35nXwDtD','184292jEWnel','trim','stdin','3939606wLgunh','15998qLyNih','zsoDo','30jvsGwk','463743zvBqoL','504789JzPvwc','929936jzFcmn','8qxezkm','12gSfgMd'];_0x32eb=function(){return _0x33a47e;};return _0x32eb();}
@@ -1 +1 @@
1
- function _0x3b13(){const _0x90cfde=['16034288BngBFk','648158SytiCG','12900UnmNJw','887916GryPTz','2202582jvxLij','2278956UCJcvO','GRhat','uLIFQ','11284175QmQabE','2005MGvrOn'];_0x3b13=function(){return _0x90cfde;};return _0x3b13();}(function(_0x2ebc81,_0x43628d){const _0x148264=_0x121f,_0x174353=_0x2ebc81();while(!![]){try{const _0x59d2e7=parseInt(_0x148264(0x13c))/0x1+-parseInt(_0x148264(0x140))/0x2+parseInt(_0x148264(0x13f))/0x3+parseInt(_0x148264(0x13e))/0x4+parseInt(_0x148264(0x13a))/0x5*(parseInt(_0x148264(0x13d))/0x6)+parseInt(_0x148264(0x139))/0x7+-parseInt(_0x148264(0x13b))/0x8;if(_0x59d2e7===_0x43628d)break;else _0x174353['push'](_0x174353['shift']());}catch(_0x2e6406){_0x174353['push'](_0x174353['shift']());}}}(_0x3b13,0xe4356));function _0x121f(_0x1da87b,_0x3d1c62){_0x1da87b=_0x1da87b-0x138;const _0x3b1364=_0x3b13();let _0x121f69=_0x3b1364[_0x1da87b];return _0x121f69;}import{printBlock,getEnabledHookContext}from'./output.js';import{shouldShowPlanReminder}from'../utils/sessionCache.js';export async function planReminder(_0x1f3e43){const _0x41a0cc=_0x121f,_0x3bb9d0={'GRhat':function(_0x13e674,_0x58e711){return _0x13e674!==_0x58e711;},'GkIjD':'plan','uLIFQ':function(_0x280258,_0x8441d5){return _0x280258(_0x8441d5);}},_0x25e400=await getEnabledHookContext(_0x1f3e43);if(!_0x25e400)return;if(_0x3bb9d0[_0x41a0cc(0x141)](_0x25e400['input']['permission_mode'],_0x3bb9d0['GkIjD']))return;if(!_0x3bb9d0[_0x41a0cc(0x138)](shouldShowPlanReminder,_0x25e400['sessionId']))return;printBlock('===\x20RANGER:\x20ACTION\x20REQUIRED\x20===\x0a\x0aIf\x20this\x20plan\x20involves\x20ANY\x20UI\x20changes,\x20you\x20MUST:\x0a\x0a1.\x20**READ\x20/ranger\x20skill\x20NOW**\x20-\x20specifically\x20the\x20create.md\x20instructions\x0a2.\x20**Add\x20a\x20Ranger\x20Feature\x20Review\x20Specification**\x20to\x20the\x20end\x20of\x20your\x20plan\x0a\x0aDO\x20NOT\x20write\x20scenarios\x20without\x20reading\x20create.md\x20first.\x0aScenarios\x20are\x20E2E\x20test\x20flows,\x20NOT\x20implementation\x20tasks.\x0a\x0aYour\x20plan\x20must\x20end\x20with:\x0a```\x0a###\x20Ranger\x20Feature\x20Review\x20Specification\x20(create\x20this\x20first\x20with\x20`ranger\x20create`)\x0aFeature\x20Review\x20Name:\x20<name>\x0aDescription:\x20<description>\x0aScenarios:\x0a1.\x20<E2E\x20user\x20flow\x20that\x20can\x20be\x20verified\x20in\x20browser>\x0a2.\x20<another\x20E2E\x20user\x20flow\x20if\x20needed>\x0a```\x0a\x0aThen\x20run:\x20`ranger\x20create\x20\x22<name>\x22\x20-d\x20\x22<desc>\x22\x20-c\x20\x22<scenario1>\x22\x20-c\x20\x22<scenario2>\x22`\x0a\x0a===\x20END\x20===');}
1
+ (function(_0x1f83a9,_0x100f6a){const _0x4ffd72=_0x53ce,_0x922f50=_0x1f83a9();while(!![]){try{const _0x20ef97=-parseInt(_0x4ffd72(0x7e))/0x1*(parseInt(_0x4ffd72(0x81))/0x2)+parseInt(_0x4ffd72(0x7f))/0x3+-parseInt(_0x4ffd72(0x79))/0x4+-parseInt(_0x4ffd72(0x7a))/0x5*(-parseInt(_0x4ffd72(0x75))/0x6)+parseInt(_0x4ffd72(0x76))/0x7+parseInt(_0x4ffd72(0x77))/0x8+parseInt(_0x4ffd72(0x7b))/0x9;if(_0x20ef97===_0x100f6a)break;else _0x922f50['push'](_0x922f50['shift']());}catch(_0x4113da){_0x922f50['push'](_0x922f50['shift']());}}}(_0x8646,0xa1eac));import{printBlock,getEnabledHookContext}from'./output.js';import{shouldShowPlanReminder}from'../utils/sessionCache.js';function _0x53ce(_0x1e0c83,_0x26bccd){_0x1e0c83=_0x1e0c83-0x75;const _0x8646de=_0x8646();let _0x53ce90=_0x8646de[_0x1e0c83];return _0x53ce90;}function _0x8646(){const _0x54c67b=['3425928IiCfTf','gWWRh','3762016BTraRt','3325940lJxsXD','36648wcATEF','===\x20RANGER:\x20ACTION\x20REQUIRED\x20===\x0a\x0aIf\x20this\x20plan\x20involves\x20ANY\x20UI\x20changes,\x20you\x20MUST:\x0a\x0a1.\x20**READ\x20/ranger\x20skill\x20NOW**\x20-\x20specifically\x20the\x20create.md\x20instructions\x0a2.\x20**Add\x20a\x20Ranger\x20Feature\x20Review\x20Specification**\x20to\x20the\x20end\x20of\x20your\x20plan\x0a\x0aDO\x20NOT\x20write\x20scenarios\x20without\x20reading\x20create.md\x20first.\x0aScenarios\x20are\x20E2E\x20test\x20flows,\x20NOT\x20implementation\x20tasks.\x0a\x0aYour\x20plan\x20must\x20end\x20with:\x0a```\x0a###\x20Ranger\x20Feature\x20Review\x20Specification\x20(create\x20this\x20first\x20with\x20`ranger\x20create`)\x0aFeature\x20Review\x20Name:\x20<name>\x0aDescription:\x20<description>\x0aScenarios:\x0a1.\x20<E2E\x20user\x20flow\x20that\x20can\x20be\x20verified\x20in\x20browser>\x0a2.\x20<another\x20E2E\x20user\x20flow\x20if\x20needed>\x0a```\x0a\x0aThen\x20run:\x20`ranger\x20create\x20\x22<name>\x22\x20-d\x20\x22<desc>\x22\x20-c\x20\x22<scenario1>\x22\x20-c\x20\x22<scenario2>\x22`\x0a\x0a===\x20END\x20===','sessionId','11yblGhr','1652994mZzlMF','permission_mode','126950lFYBcl','6mtVjWI','4574094QvZPzI'];_0x8646=function(){return _0x54c67b;};return _0x8646();}export async function planReminder(_0x29ddd1){const _0x43bec1=_0x53ce,_0x58f575={'gWWRh':function(_0x1dfc05,_0x51e44b){return _0x1dfc05(_0x51e44b);}},_0x275c18=await _0x58f575[_0x43bec1(0x78)](getEnabledHookContext,_0x29ddd1);if(!_0x275c18)return;if(_0x275c18['input'][_0x43bec1(0x80)]!=='plan')return;if(!shouldShowPlanReminder(_0x275c18[_0x43bec1(0x7d)]))return;printBlock(_0x43bec1(0x7c));}
@@ -1 +1 @@
1
- (function(_0x207a06,_0xbe4cba){const _0x5b1b68=_0x597b,_0x2df318=_0x207a06();while(!![]){try{const _0x549fe9=-parseInt(_0x5b1b68(0x10d))/0x1*(-parseInt(_0x5b1b68(0x10f))/0x2)+-parseInt(_0x5b1b68(0x114))/0x3+parseInt(_0x5b1b68(0x112))/0x4+parseInt(_0x5b1b68(0x110))/0x5+-parseInt(_0x5b1b68(0x111))/0x6+parseInt(_0x5b1b68(0x10e))/0x7+-parseInt(_0x5b1b68(0x10c))/0x8;if(_0x549fe9===_0xbe4cba)break;else _0x2df318['push'](_0x2df318['shift']());}catch(_0x152963){_0x2df318['push'](_0x2df318['shift']());}}}(_0x6cda,0x94f23));function _0x597b(_0x54fa61,_0x345400){_0x54fa61=_0x54fa61-0x10c;const _0x6cda80=_0x6cda();let _0x597bc5=_0x6cda80[_0x54fa61];return _0x597bc5;}function _0x6cda(){const _0x1ae6a4=['6398588DNHqhG','2qkZoao','3918455AMpKsY','6906456SPGqiT','463516ICqOVk','===\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===','111432OLcxln','690800ItHyeI','70999OhGBvO'];_0x6cda=function(){return _0x1ae6a4;};return _0x6cda();}import{printBlock,getEnabledSessionId}from'./output.js';export async function planStart(_0x5597b0){const _0xdea0f1=_0x597b,_0x6c7d80=await getEnabledSessionId(_0x5597b0);if(!_0x6c7d80)return;printBlock(_0xdea0f1(0x113));}
1
+ (function(_0x27193c,_0x4f547f){const _0x21e6de=_0x55e1,_0x2bbf69=_0x27193c();while(!![]){try{const _0xf5930a=-parseInt(_0x21e6de(0xb7))/0x1+parseInt(_0x21e6de(0xb3))/0x2+parseInt(_0x21e6de(0xb2))/0x3*(parseInt(_0x21e6de(0xb5))/0x4)+parseInt(_0x21e6de(0xb4))/0x5*(-parseInt(_0x21e6de(0xae))/0x6)+parseInt(_0x21e6de(0xb9))/0x7*(parseInt(_0x21e6de(0xaf))/0x8)+-parseInt(_0x21e6de(0xb6))/0x9+-parseInt(_0x21e6de(0xb8))/0xa*(-parseInt(_0x21e6de(0xb1))/0xb);if(_0xf5930a===_0x4f547f)break;else _0x2bbf69['push'](_0x2bbf69['shift']());}catch(_0x2a0755){_0x2bbf69['push'](_0x2bbf69['shift']());}}}(_0x4d3e,0x475b3));function _0x55e1(_0x151b27,_0xc7945){_0x151b27=_0x151b27-0xae;const _0x4d3e3c=_0x4d3e();let _0x55e18c=_0x4d3e3c[_0x151b27];return _0x55e18c;}import{printBlock,getEnabledSessionId}from'./output.js';export async function planStart(_0x56d757){const _0x4de5bc=_0x55e1,_0x3f9af6={'aFGhA':function(_0x5319f5,_0x2ec2a0){return _0x5319f5(_0x2ec2a0);}},_0x338cb7=await _0x3f9af6['aFGhA'](getEnabledSessionId,_0x56d757);if(!_0x338cb7)return;_0x3f9af6[_0x4de5bc(0xb0)](printBlock,'===\x20RANGER:\x20ACTION\x20REQUIRED\x20===\x0a\x0aIf\x20this\x20plan\x20involves\x20UI\x20changes,\x20you\x20MUST:\x0a\x0a1.\x20**READ\x20/ranger\x20skill**\x20-\x20specifically\x20create.md\x0a2.\x20**Add\x20a\x20Ranger\x20Feature\x20Review\x20Specification**\x20at\x20the\x20end\x20of\x20your\x20plan\x0a\x0aScenarios\x20are\x20E2E\x20test\x20flows,\x20NOT\x20implementation\x20tasks.\x0a\x0a**Good:**\x20\x22User\x20can\x20log\x20in\x20with\x20valid\x20credentials\x20and\x20see\x20dashboard\x22\x0a**Bad:**\x20\x22Add\x20form\x20validation\x22\x20or\x20\x22Button\x20is\x20visible\x22\x0a\x0aAfter\x20planning,\x20run:\x0a`ranger\x20create\x20\x22<name>\x22\x20-d\x20\x22<desc>\x22\x20-c\x20\x22<E2E\x20flow\x201>\x22\x20-c\x20\x22<E2E\x20flow\x202>\x22`\x0a\x0a===\x20END\x20===');}function _0x4d3e(){const _0x122156=['704zPtPVW','aFGhA','481855qzgCPy','402khHglC','190524WFgYbe','5hQUOlQ','16940PQjcpU','2839446mETZdP','402898fbQkLE','120hSONKf','8974gEuFCh','1743366oGcbOs'];_0x4d3e=function(){return _0x122156;};return _0x4d3e();}
@@ -1 +1 @@
1
- (function(_0xa9d22d,_0x15ea47){const _0x57705d=_0x1d10,_0x2530d8=_0xa9d22d();while(!![]){try{const _0x59dac5=-parseInt(_0x57705d(0x111))/0x1*(-parseInt(_0x57705d(0x108))/0x2)+-parseInt(_0x57705d(0x106))/0x3*(parseInt(_0x57705d(0x10e))/0x4)+parseInt(_0x57705d(0x10b))/0x5+parseInt(_0x57705d(0x105))/0x6*(-parseInt(_0x57705d(0x113))/0x7)+-parseInt(_0x57705d(0x109))/0x8*(-parseInt(_0x57705d(0x10f))/0x9)+-parseInt(_0x57705d(0x112))/0xa*(parseInt(_0x57705d(0x10d))/0xb)+-parseInt(_0x57705d(0x110))/0xc*(-parseInt(_0x57705d(0x10c))/0xd);if(_0x59dac5===_0x15ea47)break;else _0x2530d8['push'](_0x2530d8['shift']());}catch(_0xbbaeb0){_0x2530d8['push'](_0x2530d8['shift']());}}}(_0x17e9,0xe613a));function _0x1d10(_0x4eac16,_0x31c341){_0x4eac16=_0x4eac16-0x105;const _0x17e956=_0x17e9();let _0x1d1068=_0x17e956[_0x4eac16];return _0x1d1068;}function _0x17e9(){const _0x35ab18=['120czXkqA','SgVjZ','5502515mXMGfj','13HoTsLa','11kNuYtd','121468iDKlMY','458685QZhtQx','331032HpMEPd','31mPNCRe','200530OxGKZe','7QWdVui','log','wWZdG','7111266YAohCW','6cCFCAJ','PostToolUse','20376UNvHNd'];_0x17e9=function(){return _0x35ab18;};return _0x17e9();}import{getSessionEntry,updateBranchTracking}from'../utils/sessionCache.js';import{getToken}from'../utils/keychain.js';import{getEnabledSessionId}from'./output.js';export async function postEdit(_0x5e5602){const _0x24ee8b=_0x1d10,_0x3dbb1c={'SgVjZ':function(_0x2c820f,_0x42f5ea){return _0x2c820f(_0x42f5ea);},'wWZdG':function(_0x17e5d1,_0x3b9c3b){return _0x17e5d1(_0x3b9c3b);},'oHnko':function(_0xb33df6,_0x409293){return _0xb33df6(_0x409293);},'OfEhF':_0x24ee8b(0x107)},_0x61fbb2=await _0x3dbb1c[_0x24ee8b(0x10a)](getEnabledSessionId,_0x5e5602);if(!_0x61fbb2)return;_0x3dbb1c[_0x24ee8b(0x115)](updateBranchTracking,_0x61fbb2);const _0x5ae00e=await getToken();if(!_0x5ae00e)return;const _0x3c0631=_0x3dbb1c['oHnko'](getSessionEntry,_0x61fbb2);if(_0x3c0631){const _0x58c19e={'hookSpecificOutput':{'hookEventName':_0x3dbb1c['OfEhF'],'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'](_0x58c19e));return;}const _0x29de2a={'hookSpecificOutput':{'hookEventName':'PostToolUse','additionalContext':'RANGER:\x20If\x20this\x20is\x20for\x20a\x20UI\x20feature,\x20you\x20MUST\x20use\x20/ranger\x20to\x20either\x20create\x20a\x20new\x20feature\x20review\x20or\x20resume\x20an\x20existing\x20one.'}};console[_0x24ee8b(0x114)](JSON['stringify'](_0x29de2a));}
1
+ (function(_0x2a32cc,_0x2c56bf){const _0x4dd167=_0x4d90,_0x171f1e=_0x2a32cc();while(!![]){try{const _0x18f5be=parseInt(_0x4dd167(0xd8))/0x1*(-parseInt(_0x4dd167(0xdb))/0x2)+parseInt(_0x4dd167(0xdd))/0x3+-parseInt(_0x4dd167(0xdc))/0x4*(parseInt(_0x4dd167(0xd6))/0x5)+parseInt(_0x4dd167(0xdf))/0x6*(-parseInt(_0x4dd167(0xd3))/0x7)+parseInt(_0x4dd167(0xd4))/0x8+-parseInt(_0x4dd167(0xda))/0x9+parseInt(_0x4dd167(0xd5))/0xa;if(_0x18f5be===_0x2c56bf)break;else _0x171f1e['push'](_0x171f1e['shift']());}catch(_0x4db906){_0x171f1e['push'](_0x171f1e['shift']());}}}(_0x47a2,0x9d67a));import{getSessionEntry,updateBranchTracking}from'../utils/sessionCache.js';function _0x4d90(_0x34ab38,_0x11adae){_0x34ab38=_0x34ab38-0xd3;const _0x47a28b=_0x47a2();let _0x4d90c0=_0x47a28b[_0x34ab38];return _0x4d90c0;}import{getToken}from'../utils/keychain.js';import{getEnabledSessionId}from'./output.js';function _0x47a2(){const _0x405907=['1881710SlDBWB','stringify','81jnBqrj','zZHzR','7574580Pvspja','18588teyGhy','4NtysrK','2871669raSLMJ','PostToolUse','165588eCQnhb','log','301YIxQmS','8508136MVPuxf','17814800LarTRL'];_0x47a2=function(){return _0x405907;};return _0x47a2();}export async function postEdit(_0xa2dd49){const _0x2ebd8a=_0x4d90,_0x55fb1c={'zZHzR':function(_0x4bca71,_0x3f3abb){return _0x4bca71(_0x3f3abb);},'fxFlq':function(_0x403b9c){return _0x403b9c();}},_0x4765b9=await getEnabledSessionId(_0xa2dd49);if(!_0x4765b9)return;_0x55fb1c[_0x2ebd8a(0xd9)](updateBranchTracking,_0x4765b9);const _0x43a607=await _0x55fb1c['fxFlq'](getToken);if(!_0x43a607)return;const _0x4ad7e4=getSessionEntry(_0x4765b9);if(_0x4ad7e4){const _0x2f8f9e={'hookSpecificOutput':{'hookEventName':_0x2ebd8a(0xde),'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[_0x2ebd8a(0xe0)](JSON[_0x2ebd8a(0xd7)](_0x2f8f9e));return;}const _0xadba27={'hookSpecificOutput':{'hookEventName':_0x2ebd8a(0xde),'additionalContext':'RANGER:\x20If\x20this\x20is\x20for\x20a\x20UI\x20feature,\x20you\x20MUST\x20use\x20/ranger\x20to\x20either\x20create\x20a\x20new\x20feature\x20review\x20or\x20resume\x20an\x20existing\x20one.'}};console['log'](JSON['stringify'](_0xadba27));}
@@ -1 +1 @@
1
- (function(_0x5eaa49,_0x13785c){const _0x452bdb=_0x5d4f,_0x175d97=_0x5eaa49();while(!![]){try{const _0x5579b6=-parseInt(_0x452bdb(0xa4))/0x1*(parseInt(_0x452bdb(0xa6))/0x2)+parseInt(_0x452bdb(0xa1))/0x3+parseInt(_0x452bdb(0xa9))/0x4+parseInt(_0x452bdb(0xaa))/0x5*(-parseInt(_0x452bdb(0xa8))/0x6)+parseInt(_0x452bdb(0xac))/0x7*(-parseInt(_0x452bdb(0xa5))/0x8)+-parseInt(_0x452bdb(0xa7))/0x9+parseInt(_0x452bdb(0xa3))/0xa*(parseInt(_0x452bdb(0xab))/0xb);if(_0x5579b6===_0x13785c)break;else _0x175d97['push'](_0x175d97['shift']());}catch(_0x379f93){_0x175d97['push'](_0x175d97['shift']());}}}(_0x35da,0x48312));function _0x5d4f(_0x1a44ab,_0x3f1bde){_0x1a44ab=_0x1a44ab-0xa1;const _0x35daf4=_0x35da();let _0x5d4f52=_0x35daf4[_0x1a44ab];return _0x5d4f52;}import{getToken}from'../utils/keychain.js';import{printBlock,getEnabledSessionId}from'./output.js';function _0x35da(){const _0xcaa6a1=['505476LxVfjl','2223081TuAUEA','6QYdkFj','1885340GtYXwP','2630315MwyqwP','22uJBhbp','2170413XxKZqR','1407348hMJhvs','===\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`.','4719270LjsxBp','2lQTqPI','8PoEMiI'];_0x35da=function(){return _0xcaa6a1;};return _0x35da();}export async function preCompact(_0x4792b0){const _0x820b3c=_0x5d4f,_0x82075b={'zTzOv':function(_0x5e1c20,_0x55ae82){return _0x5e1c20(_0x55ae82);}},_0x5d5ae8=await _0x82075b['zTzOv'](getEnabledSessionId,_0x4792b0);if(!_0x5d5ae8)return;try{const _0x2a99ea=await getToken();if(!_0x2a99ea)return;printBlock(_0x820b3c(0xa2));}catch{}}
1
+ (function(_0x264596,_0x1b0b8c){const _0x4b3f01=_0x2a17,_0x4ccb53=_0x264596();while(!![]){try{const _0x177508=-parseInt(_0x4b3f01(0x139))/0x1+parseInt(_0x4b3f01(0x13a))/0x2*(-parseInt(_0x4b3f01(0x13b))/0x3)+-parseInt(_0x4b3f01(0x13e))/0x4+parseInt(_0x4b3f01(0x13f))/0x5+-parseInt(_0x4b3f01(0x141))/0x6*(-parseInt(_0x4b3f01(0x140))/0x7)+parseInt(_0x4b3f01(0x138))/0x8*(-parseInt(_0x4b3f01(0x13c))/0x9)+parseInt(_0x4b3f01(0x13d))/0xa;if(_0x177508===_0x1b0b8c)break;else _0x4ccb53['push'](_0x4ccb53['shift']());}catch(_0x59ea8d){_0x4ccb53['push'](_0x4ccb53['shift']());}}}(_0x2b77,0x8ec4b));function _0x2a17(_0x5d7e0e,_0x6d032a){_0x5d7e0e=_0x5d7e0e-0x138;const _0x2b771f=_0x2b77();let _0x2a1739=_0x2b771f[_0x5d7e0e];return _0x2a1739;}import{getToken}from'../utils/keychain.js';import{printBlock,getEnabledSessionId}from'./output.js';function _0x2b77(){const _0xe8a8b6=['2881503wsqDuV','24743010NBwaTn','2708180izJqkr','2315935dVpZeN','2338QFhsWU','13374FaCiSh','24CzpEvU','741340yNxybO','2PeRvJp','2154927UtYSLs'];_0x2b77=function(){return _0xe8a8b6;};return _0x2b77();}export async function preCompact(_0x1ef502){const _0x9958c1=await getEnabledSessionId(_0x1ef502);if(!_0x9958c1)return;try{const _0x928767=await getToken();if(!_0x928767)return;printBlock('===\x20RANGER:\x20PRESERVE\x20IN\x20COMPACTION\x20===\x0a\x0aIf\x20you\x20created\x20a\x20plan\x20with\x20a\x20**Ranger\x20Feature\x20Review\x20Specification**,\x20you\x20MUST\x20preserve\x20it\x20in\x20the\x20compaction\x20summary.\x0a\x0aThe\x20specification\x20contains\x20scenarios\x20that\x20will\x20be\x20used\x20with\x20`ranger\x20create`.');}catch{}}
@@ -1 +1 @@
1
- (function(_0x529fb6,_0x59f35f){const _0x56d461=_0xe644,_0x3d6f8f=_0x529fb6();while(!![]){try{const _0x3fa6f3=parseInt(_0x56d461(0x14f))/0x1+parseInt(_0x56d461(0x14d))/0x2*(-parseInt(_0x56d461(0x15a))/0x3)+parseInt(_0x56d461(0x158))/0x4*(-parseInt(_0x56d461(0x15b))/0x5)+parseInt(_0x56d461(0x153))/0x6*(-parseInt(_0x56d461(0x152))/0x7)+parseInt(_0x56d461(0x156))/0x8*(-parseInt(_0x56d461(0x157))/0x9)+parseInt(_0x56d461(0x155))/0xa*(-parseInt(_0x56d461(0x15d))/0xb)+parseInt(_0x56d461(0x150))/0xc*(parseInt(_0x56d461(0x15c))/0xd);if(_0x3fa6f3===_0x59f35f)break;else _0x3d6f8f['push'](_0x3d6f8f['shift']());}catch(_0x4dc1c4){_0x3d6f8f['push'](_0x3d6f8f['shift']());}}}(_0x424f,0x98e99));function _0xe644(_0x3a7cf1,_0x36237c){_0x3a7cf1=_0x3a7cf1-0x14d;const _0x424fc6=_0x424f();let _0xe644ea=_0x424fc6[_0x3a7cf1];return _0xe644ea;}function _0x424f(){const _0x30a49e=['935701dxnRWM','12rowxTn','wQdZF','98qIuJOM','89382quWDpi','clear','311510olsxLq','1296544MXenbE','9sbQjWK','9524oVNVjP','env','39ZwBBCI','1685OAIbuf','32297005DLyhPL','231NBOivI','148702QHdOVX','session_id'];_0x424f=function(){return _0x30a49e;};return _0x424f();}import{isSessionEnabled,recordEnabledSessionCleared}from'../utils/sessionCache.js';import{readHookInput}from'./output.js';export async function sessionEnd(_0x7cb4bd){const _0x169eb2=_0xe644,_0x17809c={'wQdZF':function(_0x9d0a4d,_0x2bc7a6){return _0x9d0a4d===_0x2bc7a6;},'rgOoY':_0x169eb2(0x154)},_0x3549d5=process[_0x169eb2(0x159)]['CLAUDE_SESSION_ID'];let _0x5b1f2a=_0x7cb4bd,_0x56b56d;if(!_0x7cb4bd){if(_0x3549d5&&!isSessionEnabled(_0x3549d5))return;const _0x5c3c82=await readHookInput();_0x5b1f2a=_0x5c3c82?.[_0x169eb2(0x14e)]||_0x3549d5,_0x56b56d=_0x5c3c82?.['reason'];}if(!_0x5b1f2a)return;_0x17809c[_0x169eb2(0x151)](_0x56b56d,_0x17809c['rgOoY'])&&recordEnabledSessionCleared(_0x5b1f2a);}
1
+ function _0x5bca(){const _0x2c7cc5=['1219234QqyuQy','345456WmPOdb','session_id','24367InCZnn','2441870VVZJyj','1830530vgcJzc','207WSmHEV','6IUdfzF','CLAUDE_SESSION_ID','1182CEPmkn','500276XbbfvZ','1169928hKlaxD','110WEKQEb','reason'];_0x5bca=function(){return _0x2c7cc5;};return _0x5bca();}function _0x110d(_0x14bf1b,_0x419b21){_0x14bf1b=_0x14bf1b-0xb0;const _0x5bcaa4=_0x5bca();let _0x110d23=_0x5bcaa4[_0x14bf1b];return _0x110d23;}(function(_0x465108,_0x20ac86){const _0x37911c=_0x110d,_0x1061cb=_0x465108();while(!![]){try{const _0x213dbf=-parseInt(_0x37911c(0xb0))/0x1+-parseInt(_0x37911c(0xb4))/0x2*(-parseInt(_0x37911c(0xbb))/0x3)+-parseInt(_0x37911c(0xb1))/0x4+parseInt(_0x37911c(0xb8))/0x5+-parseInt(_0x37911c(0xbd))/0x6*(-parseInt(_0x37911c(0xb7))/0x7)+parseInt(_0x37911c(0xb5))/0x8*(parseInt(_0x37911c(0xba))/0x9)+-parseInt(_0x37911c(0xb9))/0xa*(parseInt(_0x37911c(0xb2))/0xb);if(_0x213dbf===_0x20ac86)break;else _0x1061cb['push'](_0x1061cb['shift']());}catch(_0x3009d1){_0x1061cb['push'](_0x1061cb['shift']());}}}(_0x5bca,0xba57f));import{isSessionEnabled,recordEnabledSessionCleared}from'../utils/sessionCache.js';import{readHookInput}from'./output.js';export async function sessionEnd(_0x215841){const _0x439e3e=_0x110d,_0x4b4642={'FIoEj':function(_0x7ef65f){return _0x7ef65f();},'ApCcE':function(_0x4f4a20,_0x40527c){return _0x4f4a20===_0x40527c;}},_0x44f029=process['env'][_0x439e3e(0xbc)];let _0x586a04=_0x215841,_0x3f3edf;if(!_0x215841){if(_0x44f029&&!isSessionEnabled(_0x44f029))return;const _0x2821cd=await _0x4b4642['FIoEj'](readHookInput);_0x586a04=_0x2821cd?.[_0x439e3e(0xb6)]||_0x44f029,_0x3f3edf=_0x2821cd?.[_0x439e3e(0xb3)];}if(!_0x586a04)return;_0x4b4642['ApCcE'](_0x3f3edf,'clear')&&recordEnabledSessionCleared(_0x586a04);}
@@ -1 +1 @@
1
- (function(_0x42998a,_0x44e756){const _0x53c76e=_0x390c,_0x5d171f=_0x42998a();while(!![]){try{const _0x221ae6=parseInt(_0x53c76e(0xf1))/0x1*(-parseInt(_0x53c76e(0xf4))/0x2)+parseInt(_0x53c76e(0x103))/0x3*(-parseInt(_0x53c76e(0xf7))/0x4)+parseInt(_0x53c76e(0x10a))/0x5*(parseInt(_0x53c76e(0xed))/0x6)+parseInt(_0x53c76e(0x101))/0x7+parseInt(_0x53c76e(0xf2))/0x8*(parseInt(_0x53c76e(0xff))/0x9)+-parseInt(_0x53c76e(0x104))/0xa+parseInt(_0x53c76e(0xfb))/0xb*(parseInt(_0x53c76e(0xf8))/0xc);if(_0x221ae6===_0x44e756)break;else _0x5d171f['push'](_0x5d171f['shift']());}catch(_0x3e037f){_0x5d171f['push'](_0x5d171f['shift']());}}}(_0x1922,0x7d9a4));import{appendFile}from'fs/promises';import{initBranchTracking,shouldAutoEnableAfterClear,autoEnableAfterClear,isSessionEnabled,getCurrentBranch}from'../utils/sessionCache.js';import{createTelemetryCollector}from'../utils/telemetry.js';function _0x390c(_0x523fc6,_0x229802){_0x523fc6=_0x523fc6-0xed;const _0x1922a2=_0x1922();let _0x390c73=_0x1922a2[_0x523fc6];return _0x390c73;}import{getToken}from'../utils/keychain.js';function _0x1922(){const _0x249cea=['1ljohEU','8wxTSae','trackCommandStart','2037460yiqoqq','rNRrN','stringify','17252UUEAjJ','12dmmgnR','trackCommandEnd','stdin','12620245sQRoTc','vBwQV','rcXpr','akzCg','2721321AYpahH','FrPyz','3607100NgtLUn','parse','66zBoHKH','5040400BiEsNG','aXXWZ','success','KHPmy','log','PrKPb','55720SYvZVM','90HhpUIK','CLAUDE_ENV_FILE','eTEXT','adwDn'];_0x1922=function(){return _0x249cea;};return _0x1922();}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(_0x45557c){const _0x5002c8=_0x390c,_0x6c9c5a={'rcXpr':'session_id','FrPyz':function(_0x1c5753,_0x134d9a){return _0x1c5753&&_0x134d9a;},'XKJdY':function(_0x8d2641,_0x435518,_0x4e8b9f){return _0x8d2641(_0x435518,_0x4e8b9f);},'rNRrN':function(_0x3e47c9){return _0x3e47c9();},'eTEXT':function(_0x5dfb48,_0x223e2c){return _0x5dfb48(_0x223e2c);},'xiiuU':function(_0xd179d3,_0x919458){return _0xd179d3(_0x919458);},'SXMpT':function(_0x58c7a3,_0x4d3dd9){return _0x58c7a3(_0x4d3dd9);},'akzCg':_0x5002c8(0x106),'aXXWZ':function(_0x71f6ca){return _0x71f6ca();},'vBwQV':'main','KHPmy':'master','adwDn':'SessionStart','PrKPb':function(_0x39f36d,_0x57b1fe){return _0x39f36d+_0x57b1fe;}};let _0x147eba=_0x45557c||'',_0x42fbf1;if(!_0x45557c){let _0x380ea1='';for await(const _0x195937 of process[_0x5002c8(0xfa)]){_0x380ea1+=_0x195937;}try{const _0x27688a=JSON[_0x5002c8(0x102)](_0x380ea1);_0x147eba=_0x27688a[_0x6c9c5a[_0x5002c8(0xfd)]]||'',_0x42fbf1=_0x27688a['source'];}catch{}const _0x76433=process['env'][_0x5002c8(0xee)];if(_0x6c9c5a[_0x5002c8(0x100)](_0x76433,_0x147eba))try{await _0x6c9c5a['XKJdY'](appendFile,_0x76433,'export\x20CLAUDE_SESSION_ID=\x22'+_0x147eba+'\x22\x0a');}catch{}}try{await _0x6c9c5a[_0x5002c8(0xf5)](getToken);}catch{}if(_0x147eba){_0x6c9c5a['eTEXT'](shouldAutoEnableAfterClear,_0x42fbf1)&&autoEnableAfterClear(_0x147eba);_0x6c9c5a[_0x5002c8(0xef)](initBranchTracking,_0x147eba);const _0x515290=_0x6c9c5a['xiiuU'](isSessionEnabled,_0x147eba);try{const _0x2c0acf=_0x6c9c5a['SXMpT'](createTelemetryCollector,'hook:session-start');await _0x2c0acf[_0x5002c8(0xf3)]({'sessionId':_0x147eba,'hooksEnabled':_0x515290}),await _0x2c0acf[_0x5002c8(0xf9)](_0x6c9c5a[_0x5002c8(0xfe)]);}catch{}if(_0x515290){const _0x2c9670=_0x6c9c5a[_0x5002c8(0x105)](getCurrentBranch),_0x32c22c=_0x2c9670&&_0x2c9670!==_0x6c9c5a[_0x5002c8(0xfc)]&&_0x2c9670!==_0x6c9c5a[_0x5002c8(0x107)]?'\x20(Branch:\x20'+_0x2c9670+')':'',_0x69d729={'hookSpecificOutput':{'hookEventName':_0x6c9c5a[_0x5002c8(0xf0)],'additionalContext':_0x6c9c5a[_0x5002c8(0x109)](RANGER_AUTO_ENABLED_PROMPT,_0x32c22c)}};console[_0x5002c8(0x108)](JSON[_0x5002c8(0xf6)](_0x69d729));}}}
1
+ const _0x45c058=_0x3805;(function(_0x5dbe5b,_0x4d9980){const _0x16b53b=_0x3805,_0x466cb3=_0x5dbe5b();while(!![]){try{const _0x18d6cb=-parseInt(_0x16b53b(0x1bd))/0x1*(-parseInt(_0x16b53b(0x1c6))/0x2)+parseInt(_0x16b53b(0x1ad))/0x3*(-parseInt(_0x16b53b(0x1ac))/0x4)+-parseInt(_0x16b53b(0x1b5))/0x5+parseInt(_0x16b53b(0x1b2))/0x6+-parseInt(_0x16b53b(0x1b9))/0x7*(-parseInt(_0x16b53b(0x1c5))/0x8)+parseInt(_0x16b53b(0x1b7))/0x9*(parseInt(_0x16b53b(0x1af))/0xa)+-parseInt(_0x16b53b(0x1bc))/0xb*(parseInt(_0x16b53b(0x1ba))/0xc);if(_0x18d6cb===_0x4d9980)break;else _0x466cb3['push'](_0x466cb3['shift']());}catch(_0x4613e3){_0x466cb3['push'](_0x466cb3['shift']());}}}(_0x2d2a,0xdc7c6));import{appendFile}from'fs/promises';function _0x2d2a(){const _0x4e4223=['=================================================================\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=================================================================','YABYv','mIrnY','rcxUk','UxTpa','17008qAMtcN','4LcQLXb','nquHe','session_id','510928Vsvzkq','33FFoFoP','MKGbb','5845660fwMtvc','XXZHo','trackCommandStart','4879296lhezfn','spazG','parse','2769305pXGIem','xjoku','9IHBWfF','main','3878iJEynT','3146244MssuUb','master','11JwJgHY','274312OnJtvZ','SessionStart','UcIxD'];_0x2d2a=function(){return _0x4e4223;};return _0x2d2a();}import{initBranchTracking,shouldAutoEnableAfterClear,autoEnableAfterClear,enableSession,isSessionEnabled,getCurrentBranch}from'../utils/sessionCache.js';import{createTelemetryCollector}from'../utils/telemetry.js';import{getToken}from'../utils/keychain.js';import{resolveHookMode}from'../utils/environment.js';function _0x3805(_0x50bcdd,_0x2ad2f8){_0x50bcdd=_0x50bcdd-0x1aa;const _0x2d2a6f=_0x2d2a();let _0x38051c=_0x2d2a6f[_0x50bcdd];return _0x38051c;}const RANGER_AUTO_ENABLED_PROMPT=_0x45c058(0x1c0);export async function sessionStart(_0x2e6b6e){const _0x2d86c4=_0x45c058,_0x5c0de4={'YABYv':'source','nquHe':function(_0x114b0e,_0x495997){return _0x114b0e&&_0x495997;},'spazG':function(_0x4b8e01,_0x2c33dc,_0x5eb524){return _0x4b8e01(_0x2c33dc,_0x5eb524);},'kNbuQ':function(_0x4430b0){return _0x4430b0();},'UcIxD':function(_0xbc6ed6,_0x5e8473){return _0xbc6ed6(_0x5e8473);},'MKGbb':function(_0x1ca436,_0x3f1db4){return _0x1ca436(_0x3f1db4);},'lDbIs':function(_0x525d0a,_0x59f7e5){return _0x525d0a(_0x59f7e5);},'xjoku':function(_0x44bdd3){return _0x44bdd3();},'rcxUk':function(_0x59721d,_0x3ac36c){return _0x59721d(_0x3ac36c);},'mIrnY':'hook:session-start','FDryS':'success','UxTpa':_0x2d86c4(0x1bb),'XXZHo':_0x2d86c4(0x1be),'YXasr':function(_0x590504,_0x30d93e){return _0x590504+_0x30d93e;}};let _0x2f0bf1=_0x2e6b6e||'',_0x6ff6a7;if(!_0x2e6b6e){let _0x2415ef='';for await(const _0x3b9e6a of process['stdin']){_0x2415ef+=_0x3b9e6a;}try{const _0x5ae4de=JSON[_0x2d86c4(0x1b4)](_0x2415ef);_0x2f0bf1=_0x5ae4de[_0x2d86c4(0x1ab)]||'',_0x6ff6a7=_0x5ae4de[_0x5c0de4[_0x2d86c4(0x1c1)]];}catch{}const _0x16fce1=process['env']['CLAUDE_ENV_FILE'];if(_0x5c0de4[_0x2d86c4(0x1aa)](_0x16fce1,_0x2f0bf1))try{await _0x5c0de4[_0x2d86c4(0x1b3)](appendFile,_0x16fce1,'export\x20CLAUDE_SESSION_ID=\x22'+_0x2f0bf1+'\x22\x0a');}catch{}}try{await _0x5c0de4['kNbuQ'](getToken);}catch{}if(_0x2f0bf1){_0x5c0de4[_0x2d86c4(0x1bf)](shouldAutoEnableAfterClear,_0x6ff6a7)&&_0x5c0de4[_0x2d86c4(0x1ae)](autoEnableAfterClear,_0x2f0bf1);_0x5c0de4['lDbIs'](initBranchTracking,_0x2f0bf1);_0x5c0de4[_0x2d86c4(0x1b6)](resolveHookMode)==='on'&&_0x5c0de4[_0x2d86c4(0x1bf)](enableSession,_0x2f0bf1);const _0x1cff13=_0x5c0de4[_0x2d86c4(0x1c3)](isSessionEnabled,_0x2f0bf1);try{const _0x377c7d=createTelemetryCollector(_0x5c0de4[_0x2d86c4(0x1c2)]);await _0x377c7d[_0x2d86c4(0x1b1)]({'sessionId':_0x2f0bf1,'hooksEnabled':_0x1cff13}),await _0x377c7d['trackCommandEnd'](_0x5c0de4['FDryS']);}catch{}if(_0x1cff13){const _0x1d0ef3=_0x5c0de4['kNbuQ'](getCurrentBranch),_0x7aa60e=_0x1d0ef3&&_0x1d0ef3!==_0x2d86c4(0x1b8)&&_0x1d0ef3!==_0x5c0de4[_0x2d86c4(0x1c4)]?'\x20(Branch:\x20'+_0x1d0ef3+')':'',_0x4fd1ef={'hookSpecificOutput':{'hookEventName':_0x5c0de4[_0x2d86c4(0x1b0)],'additionalContext':_0x5c0de4['YXasr'](RANGER_AUTO_ENABLED_PROMPT,_0x7aa60e)}};console['log'](JSON['stringify'](_0x4fd1ef));}}}
@@ -1 +1 @@
1
- function _0x4dae(){const _0x29c85e=['currentSessionId','1453723VkOjoK','4355tWJyJe','1950384ycTsNU','success','495267ALwjqv','filter','ZsMwz','7400178VwQLBi','stringify','sNSAx','4366614CtBUxN','checklistItems','AkzAO','verified','status','Stop','log','2920HNyqiu','trackCommandStart','featureId','DBomc','45558JXuczz','sessionId','incomplete','3292alLWHK'];_0x4dae=function(){return _0x29c85e;};return _0x4dae();}(function(_0xf33c7a,_0x221cb5){const _0x295911=_0xd983,_0x50b5a8=_0xf33c7a();while(!![]){try{const _0x380811=-parseInt(_0x295911(0xc4))/0x1+-parseInt(_0x295911(0xc6))/0x2+parseInt(_0x295911(0xc8))/0x3+parseInt(_0x295911(0xdc))/0x4*(parseInt(_0x295911(0xc5))/0x5)+parseInt(_0x295911(0xcb))/0x6+-parseInt(_0x295911(0xce))/0x7+parseInt(_0x295911(0xd5))/0x8*(parseInt(_0x295911(0xd9))/0x9);if(_0x380811===_0x221cb5)break;else _0x50b5a8['push'](_0x50b5a8['shift']());}catch(_0x38ed99){_0x50b5a8['push'](_0x50b5a8['shift']());}}}(_0x4dae,0xde376));function _0xd983(_0x112e34,_0x181694){_0x112e34=_0x112e34-0xc4;const _0x4dae68=_0x4dae();let _0xd98303=_0x4dae68[_0x112e34];return _0xd98303;}import{getToken}from'../utils/keychain.js';import{getFeature,concludeSession}from'../utils/featureApi.js';import{getSessionEntry,shouldShowStopReminder}from'../utils/sessionCache.js';import{getEnabledHookContext}from'./output.js';import{createTelemetryCollector}from'../utils/telemetry.js';export async function stopHook(_0x238514){const _0x12f627=_0xd983,_0x5dd98f={'sNSAx':function(_0x17a058,_0x397f29,_0x3a4e24,_0x2025c5){return _0x17a058(_0x397f29,_0x3a4e24,_0x2025c5);},'RAbNO':function(_0x196d6a,_0x386c09){return _0x196d6a(_0x386c09);},'ZsMwz':function(_0x302922,_0xce2f2d){return _0x302922&&_0xce2f2d;},'DBomc':function(_0x34682b,_0x3ca21d,_0x4bfcc7){return _0x34682b(_0x3ca21d,_0x4bfcc7);}},_0x3b4700=await getEnabledHookContext(_0x238514),_0x30e0a0=_0x3b4700?.[_0x12f627(0xda)]??null;let _0x228743=!![];if(!_0x30e0a0){await _0x5dd98f[_0x12f627(0xcd)](trackStop,_0x30e0a0,![],_0x228743);return;}try{const _0x2285fb=_0x5dd98f['RAbNO'](getSessionEntry,_0x30e0a0);if(!_0x2285fb){await _0x5dd98f[_0x12f627(0xcd)](trackStop,_0x30e0a0,!![],_0x228743);return;}const _0x309d1a=await getToken(),_0x2cd951='https://dashboard.ranger.net/features/'+_0x2285fb['featureId'];let _0xb9036a=null,_0x2ab879=![],_0x56e82f=![];if(_0x309d1a)try{const _0x25f959=await getFeature(_0x2285fb['featureId']);_0xb9036a=_0x25f959[_0x12f627(0xdd)]??null;const _0x451c89=_0x25f959[_0x12f627(0xcf)][_0x12f627(0xc9)](_0x8ec09d=>_0x8ec09d[_0x12f627(0xda)]===_0xb9036a);_0x2ab879=_0x451c89['some'](_0x38950c=>_0x38950c['status']!==_0x12f627(0xd1)&&_0x38950c[_0x12f627(0xd2)]!=='blocked'&&_0x38950c['status']!=='closed'&&_0x38950c['status']!==_0x12f627(0xdb)),_0x56e82f=_0x451c89['some'](_0x4f762c=>_0x4f762c['status']==='verification_in_progress');}catch{}if(_0x309d1a&&_0xb9036a&&_0x2ab879){if(!_0x56e82f&&shouldShowStopReminder(_0x30e0a0)){const _0x4a4a52={'hookSpecificOutput':{'hookEventName':_0x12f627(0xd3),'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'+_0x2cd951}};console[_0x12f627(0xd4)](JSON[_0x12f627(0xcc)](_0x4a4a52));}}if(_0x5dd98f[_0x12f627(0xca)](_0x309d1a,_0xb9036a)&&!_0x2ab879)try{await _0x5dd98f[_0x12f627(0xd8)](concludeSession,_0x2285fb[_0x12f627(0xd7)],_0xb9036a);}catch{}await trackStop(_0x30e0a0,!![],_0x228743);return;}catch{await trackStop(_0x30e0a0,!![],_0x228743);return;}}async function trackStop(_0xd59ba,_0x3bce89,_0x65caca){const _0x5db06f=_0xd983,_0x4b7e98={'GjQBX':'hook:stop','AkzAO':_0x5db06f(0xc7)};try{const _0x30646b=createTelemetryCollector(_0x4b7e98['GjQBX']);await _0x30646b[_0x5db06f(0xd6)]({'sessionId':_0xd59ba??undefined,'hooksEnabled':_0x3bce89,'stopAllowed':_0x65caca}),await _0x30646b['trackCommandEnd'](_0x4b7e98[_0x5db06f(0xd0)]);}catch{}}
1
+ (function(_0x580c95,_0x598656){const _0x52f6f3=_0x13b2,_0x2aa27c=_0x580c95();while(!![]){try{const _0x4fa1c7=-parseInt(_0x52f6f3(0x13b))/0x1+parseInt(_0x52f6f3(0x144))/0x2+-parseInt(_0x52f6f3(0x150))/0x3*(parseInt(_0x52f6f3(0x153))/0x4)+parseInt(_0x52f6f3(0x14b))/0x5*(parseInt(_0x52f6f3(0x13c))/0x6)+-parseInt(_0x52f6f3(0x13d))/0x7+parseInt(_0x52f6f3(0x14d))/0x8+parseInt(_0x52f6f3(0x148))/0x9;if(_0x4fa1c7===_0x598656)break;else _0x2aa27c['push'](_0x2aa27c['shift']());}catch(_0x5d74df){_0x2aa27c['push'](_0x2aa27c['shift']());}}}(_0x3bf5,0x48afa));function _0x3bf5(){const _0x2a5e3e=['mQIcz','459166eMdNpn','6eIFVTc','479381wKCFwo','trackCommandStart','featureId','sessionId','checklistItems','status','trackCommandEnd','622320eHfMpp','fpyDu','eCyXV','closed','4510224LxekRz','some','SkHxA','987990NshabQ','hook:stop','767080vmJMWZ','currentSessionId','PXXee','105153QZOmYZ','gPZer','Stop','32WXZWBL','log','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','OTQJz','incomplete'];_0x3bf5=function(){return _0x2a5e3e;};return _0x3bf5();}import{getToken}from'../utils/keychain.js';function _0x13b2(_0x1a07b9,_0x392824){_0x1a07b9=_0x1a07b9-0x136;const _0x3bf5f6=_0x3bf5();let _0x13b2dc=_0x3bf5f6[_0x1a07b9];return _0x13b2dc;}import{getFeature,concludeSession}from'../utils/featureApi.js';import{getSessionEntry,shouldShowStopReminder}from'../utils/sessionCache.js';import{getEnabledHookContext}from'./output.js';import{createTelemetryCollector}from'../utils/telemetry.js';export async function stopHook(_0x3b5dde){const _0x50ceab=_0x13b2,_0x7e743={'SkHxA':function(_0x11ce6e,_0xff66fb){return _0x11ce6e(_0xff66fb);},'fpyDu':function(_0x49560c,_0x596a4e,_0x224515,_0x1ab0b6){return _0x49560c(_0x596a4e,_0x224515,_0x1ab0b6);},'ZnXar':function(_0x1d0fa4){return _0x1d0fa4();},'gPZer':function(_0x46f12a,_0x264bea){return _0x46f12a(_0x264bea);},'PXXee':function(_0xd5feb,_0x96752b){return _0xd5feb(_0x96752b);},'eCyXV':_0x50ceab(0x152),'mQIcz':function(_0x2d08ff,_0x567cba,_0x3a944c){return _0x2d08ff(_0x567cba,_0x3a944c);},'kyIDx':function(_0x2d42e9,_0x42125e,_0x3cdf36,_0x2cf43b){return _0x2d42e9(_0x42125e,_0x3cdf36,_0x2cf43b);}},_0x51b281=await _0x7e743[_0x50ceab(0x14a)](getEnabledHookContext,_0x3b5dde),_0x49a4f2=_0x51b281?.['sessionId']??null;let _0x3ff92a=!![];if(!_0x49a4f2){await _0x7e743[_0x50ceab(0x145)](trackStop,_0x49a4f2,![],_0x3ff92a);return;}try{const _0x1d7edc=getSessionEntry(_0x49a4f2);if(!_0x1d7edc){await trackStop(_0x49a4f2,!![],_0x3ff92a);return;}const _0x4daf50=await _0x7e743['ZnXar'](getToken),_0x32deaf='https://dashboard.ranger.net/features/'+_0x1d7edc['featureId'];let _0xbd2f37=null,_0x2dae40=![],_0x33b2d0=![];if(_0x4daf50)try{const _0x48ad27=await _0x7e743[_0x50ceab(0x151)](getFeature,_0x1d7edc[_0x50ceab(0x13f)]);_0xbd2f37=_0x48ad27[_0x50ceab(0x14e)]??null;const _0x532104=_0x48ad27[_0x50ceab(0x141)]['filter'](_0x4a2f16=>_0x4a2f16[_0x50ceab(0x140)]===_0xbd2f37);_0x2dae40=_0x532104[_0x50ceab(0x149)](_0x14d7df=>_0x14d7df[_0x50ceab(0x142)]!=='verified'&&_0x14d7df['status']!=='blocked'&&_0x14d7df[_0x50ceab(0x142)]!==_0x50ceab(0x147)&&_0x14d7df[_0x50ceab(0x142)]!==_0x50ceab(0x139)),_0x33b2d0=_0x532104[_0x50ceab(0x149)](_0x4361b4=>_0x4361b4[_0x50ceab(0x142)]==='verification_in_progress');}catch{}if(_0x4daf50&&_0xbd2f37&&_0x2dae40){if(!_0x33b2d0&&_0x7e743[_0x50ceab(0x14f)](shouldShowStopReminder,_0x49a4f2)){const _0x29a0ca={'hookSpecificOutput':{'hookEventName':_0x7e743[_0x50ceab(0x146)],'additionalContext':_0x50ceab(0x137)+_0x32deaf}};console[_0x50ceab(0x136)](JSON['stringify'](_0x29a0ca));}}if(_0x4daf50&&_0xbd2f37&&!_0x2dae40)try{await _0x7e743[_0x50ceab(0x13a)](concludeSession,_0x1d7edc['featureId'],_0xbd2f37);}catch{}await _0x7e743['kyIDx'](trackStop,_0x49a4f2,!![],_0x3ff92a);return;}catch{await trackStop(_0x49a4f2,!![],_0x3ff92a);return;}}async function trackStop(_0x58fec0,_0x590818,_0x72c5ae){const _0x1e34e4=_0x13b2,_0x4cbf4a={'OWjVX':function(_0x303407,_0x567f23){return _0x303407??_0x567f23;},'OTQJz':'success'};try{const _0x5d270f=createTelemetryCollector(_0x1e34e4(0x14c));await _0x5d270f[_0x1e34e4(0x13e)]({'sessionId':_0x4cbf4a['OWjVX'](_0x58fec0,undefined),'hooksEnabled':_0x590818,'stopAllowed':_0x72c5ae}),await _0x5d270f[_0x1e34e4(0x143)](_0x4cbf4a[_0x1e34e4(0x138)]);}catch{}}
@@ -1 +1 @@
1
- function _0x396d(_0x21b156,_0x2a12d6){_0x21b156=_0x21b156-0xa1;var _0x213819=_0x2138();var _0x396d93=_0x213819[_0x21b156];return _0x396d93;}(function(_0x52aad6,_0x18324d){var _0x2a9d19=_0x396d,_0x5d80a6=_0x52aad6();while(!![]){try{var _0x32f840=parseInt(_0x2a9d19(0xa6))/0x1+parseInt(_0x2a9d19(0xa9))/0x2*(-parseInt(_0x2a9d19(0xa1))/0x3)+parseInt(_0x2a9d19(0xa4))/0x4+-parseInt(_0x2a9d19(0xa5))/0x5+parseInt(_0x2a9d19(0xaa))/0x6+-parseInt(_0x2a9d19(0xa8))/0x7*(-parseInt(_0x2a9d19(0xa3))/0x8)+-parseInt(_0x2a9d19(0xa2))/0x9*(parseInt(_0x2a9d19(0xa7))/0xa);if(_0x32f840===_0x18324d)break;else _0x5d80a6['push'](_0x5d80a6['shift']());}catch(_0x1c2a0e){_0x5d80a6['push'](_0x5d80a6['shift']());}}}(_0x2138,0x1d98a));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{deleteProfile}from'./deleteProfile.js';export{updateEnv}from'./updateEnv.js';export{update}from'./update.js';export{skillup}from'./skillup.js';export{envList}from'./env.js';export{hook}from'./hook.js';export{setupCi}from'./setupCi.js';export{migrateProfile}from'./migrateProfile.js';function _0x2138(){var _0x384d43=['3MSGxJt','53451nVaiBL','407912XoSMzm','494972KJKuPz','262545RdATIa','5402HDKxEk','110IGtWor','21oGUEoD','466366ZuPkaq','1140810tqQgXl'];_0x2138=function(){return _0x384d43;};return _0x2138();}
1
+ (function(_0x2e36a7,_0xa33a24){var _0x1de781=_0x18fa,_0x186c06=_0x2e36a7();while(!![]){try{var _0x23203e=parseInt(_0x1de781(0x112))/0x1*(parseInt(_0x1de781(0x11c))/0x2)+parseInt(_0x1de781(0x115))/0x3*(-parseInt(_0x1de781(0x116))/0x4)+parseInt(_0x1de781(0x118))/0x5*(parseInt(_0x1de781(0x113))/0x6)+parseInt(_0x1de781(0x119))/0x7*(-parseInt(_0x1de781(0x114))/0x8)+parseInt(_0x1de781(0x117))/0x9*(-parseInt(_0x1de781(0x11d))/0xa)+parseInt(_0x1de781(0x11b))/0xb+-parseInt(_0x1de781(0x11a))/0xc;if(_0x23203e===_0xa33a24)break;else _0x186c06['push'](_0x186c06['shift']());}catch(_0x38252d){_0x186c06['push'](_0x186c06['shift']());}}}(_0xf73a,0x49456));export{addEnv}from'./addEnv.js';export{clean}from'./clean.js';export{login}from'./login.js';export{start,ensureLocalEnv,ensureChromium,authenticate}from'./start.js';function _0x18fa(_0x4cc8ba,_0xffcead){_0x4cc8ba=_0x4cc8ba-0x112;var _0xf73a60=_0xf73a();var _0x18faa1=_0xf73a60[_0x4cc8ba];return _0x18faa1;}export{useEnv}from'./useEnv.js';export{deleteProfile}from'./deleteProfile.js';export{updateEnv}from'./updateEnv.js';export{update}from'./update.js';export{skillup}from'./skillup.js';export{envList}from'./env.js';export{hook}from'./hook.js';export{setupCi}from'./setupCi.js';export{migrateProfile}from'./migrateProfile.js';function _0xf73a(){var _0x227441=['2637173IeQkll','1132974rXIocn','6170VQLqLl','1BMmwbA','58152ilIhnA','24gPKJqv','3eDGPMg','511484rfsHrY','1179FIDPFG','240DsKKSU','1364839TocUZh','2132388oTeVGH'];_0xf73a=function(){return _0x227441;};return _0xf73a();}