@ranger-testing/ranger-cli 3.0.1-alpha.ffffb5b-28 → 3.1.1-alpha.08fb70e-39

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 _0x140b14=_0x31a1;(function(_0x3c26e8,_0x1a1300){const _0x488cdf=_0x31a1,_0x5444b3=_0x3c26e8();while(!![]){try{const _0x3d8ced=parseInt(_0x488cdf(0x1a3))/0x1*(parseInt(_0x488cdf(0x15e))/0x2)+parseInt(_0x488cdf(0x1de))/0x3*(parseInt(_0x488cdf(0x198))/0x4)+parseInt(_0x488cdf(0x1a0))/0x5+parseInt(_0x488cdf(0x1f1))/0x6+-parseInt(_0x488cdf(0x203))/0x7*(-parseInt(_0x488cdf(0x20a))/0x8)+-parseInt(_0x488cdf(0x1e2))/0x9*(-parseInt(_0x488cdf(0x170))/0xa)+-parseInt(_0x488cdf(0x1b2))/0xb;if(_0x3d8ced===_0x1a1300)break;else _0x5444b3['push'](_0x5444b3['shift']());}catch(_0x46fb93){_0x5444b3['push'](_0x5444b3['shift']());}}}(_0x4b38,0x4403d));import{readFile,writeFile,mkdir}from'fs/promises';import{join}from'path';import{existsSync}from'fs';import{execSync}from'child_process';import _0x4803a4 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';function _0x4b38(){const _0x5df920=['CbZEP','BDmYp','\x20\x20\x20To\x20restore\x20it,\x20run:\x20ranger\x20restore\x20','ysdOG','authorEmail','No\x20active\x20session\x20for\x20this\x20feature\x20review.','unaddressedComments','totalCount','selected','\x20\x20\x20The\x20feature\x20review\x20is\x20now\x20ready\x20for\x20human\x20review\x20on\x20the\x20Ranger\x20dashboard.','mYryo','map','\x0a📁\x20Sessions\x20for\x20feature\x20review:\x20','en-US','filter','McnzJ','isKeyStep','env','\x20--limit\x20','find','pipe','\x0a❌\x20No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.','.\x20Feature\x20review\x20has\x20','git\x20remote\x20get-url\x20origin','approved','submittedAt','point','Cannot\x20add\x20scenario:\x20feature\x20review\x20has\x20an\x20active\x20review.\x20Please\x20finish\x20your\x20review\x20first:\x20','WDtQO','\x20concluded.','incomplete','847040uEewJq','feedback-images','stringify','\x20\x20\x20\x20\x20ID:\x20','IqMWw','assetType','\x0a✅\x20Scenario\x20updated','from','785350UsyKRC','closed','Next\x20page:\x20ranger\x20list\x20--offset\x20','1dhRzNJ','DOrxf','ZAIrr','\x20\x20✅\x20No\x20feedback\x20to\x20address','domRef','canceledReason','No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','isTTY','limit','fqNwA','gitBranch','draiC','description','completedAt','YvZtr','20325437pMxJZb','\x20\x20\x20\x20\x20Branch:\x20','\x20[has\x20reviewer\x20feedback]','status','iteration','\x0aNo\x20feature\x20reviews\x20found.','Run:\x20ranger\x20create\x20\x22<name>\x22\x20to\x20create\x20a\x20new\x20feature\x20review','\x1b[1m','\x20incomplete','scenario','FUuPa','qSElf','\x0a✅\x20Resumed\x20feature\x20review:\x20','assets','CLAUDE_SESSION_ID','VrCRV','\x0a✅\x20Scenario\x20added','createdAt','BaiBS','currentBranch','selector','nPwOX','trim','currentSessionId','output','Scenario\x20','\x20\x20\x20▶️\x20Started\x20session\x20','\x0a✅\x20Feature\x20review\x20created:\x20',':\x20\x22','comment_','browserSessionId','zDrQT','exit','kokfI','name','pLEFp','bIfGh','vtiNG','LzrVM','verifiedItems','blockedReason','element','1|3|0|4|2|5','\x0a\x20\x20\x20Scenarios:','6VZJuQV','\x20\x20\x20\x20\x20\x20Incomplete:\x20','\x0a❌\x20Invalid\x20scenario\x20number(s):\x20','gitRepoUrl','4859874CjsnTt','JjCMG','OjaWH','IUIAV','GpNpt','latestReview','\x20\x20Expected\x20flow:','\x0a❌\x20No\x20scenario\x20number\x20provided.\x20Use\x20--scenario\x20<number>.','sMqVL','cZrKf','rhsoo','error','GQliw','Step\x20','Not\x20in\x20a\x20git\x20repository.','2530080qjugVO','join','\x0a✅\x20Restored\x20feature\x20review:\x20','BfUai','spatial','/artifacts/','\x20\x20\x20Completed:\x20','replace','round','KrsLS','repeat','\x20/\x20','\x1b[0m','storage','CjMTi','\x20--current-branch','\x20Session\x20','iEMBN','1595496BiqWyZ','cKbIX','xwmJg','all','zFZjt','BYHNx','bkikV','16BvdFgU','terminalReason','parentItemId','push','list','uChVG','stats','meQYb','SCBWE','\x20\x20\x20\x20\x20\x20Cancelled:\x20','PBKUN','reports','stdout','\x20\x20\x20\x20\x20📍\x20Annotation:\x20','eNaDo','utf-8','\x20\x20💬\x20','\x20--include-deleted','\x20scenarios.','...','YybGk','uatbZ','\x0a❌\x20Invalid\x20scenario\x20index:\x20','LhcHp','QAyur','coordinates','\x20\x20\x20Created:\x20','github.com/','\x20\x20\x20Branch:\x20','lijEm','):\x20\x22','SscjJ','\x0a❌\x20Cannot\x20edit\x20scenario:\x20feature\x20review\x20has\x20an\x20active\x20review.','\x0aConcluding\x20session...','log','No\x20sessions\x20found.','prompt','QxLEe','\x20(v','\x20\x20\x20\x20\x20\x20Approved','RANGER_TEST_USERNAME','version','type','No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.','koETT','\x20\x20\x20Updated\x20branch\x20to:\x20','oPxdT','ECGKQ','256488qhTNFH','scenarios','\x0aAvailable\x20scenarios:','textContent','hBVPZ','active-feature.txt','bvDTZ','warn','sessionId','yrONk','toLocaleString','incompleteReason','gtaNL','checklistItems','\x20—\x20','\x20\x20\x20ID:\x20','iGhNj','mPZIT','10hXOEyz','\x0a✅\x20Session\x20is\x20already\x20completed.','kczus','dashboardUrl','MnjFe','split','eWEFp','length','\x20\x20\x20Status:\x20'];_0x4b38=function(){return _0x5df920;};return _0x4b38();}import{getEnvNames}from'./env.js';import{formatProfileRequiredMessage}from'./utils/profileMessages.js';import{listCloudProfiles}from'./utils/cloudProfile.js';const ACTIVE_FEATURE_FILE=_0x140b14(0x163),bold=_0x236004=>_0x140b14(0x1b9)+_0x236004+_0x140b14(0x1fd);function getGitRepoUrl(){const _0x2d5fc0=_0x140b14,_0x25fc98={'SscjJ':function(_0x36166c,_0x120d62,_0x118c95){return _0x36166c(_0x120d62,_0x118c95);},'OjaWH':'pipe'};try{const _0x53082b=_0x25fc98[_0x2d5fc0(0x14d)](execSync,_0x2d5fc0(0x190),{'encoding':'utf-8','stdio':['pipe',_0x2d5fc0(0x18d),_0x25fc98[_0x2d5fc0(0x1e4)]]})[_0x2d5fc0(0x1c8)]();return _0x53082b['replace'](/\.git$/,'')['replace'](/^git@github\.com:/,_0x2d5fc0(0x149))[_0x2d5fc0(0x1f8)](/^https?:\/\//,'');}catch{return undefined;}}function getGitBranch(){const _0x596570=_0x140b14,_0x526f23={'hTMBo':function(_0x17261b,_0x25402d,_0x41d453){return _0x17261b(_0x25402d,_0x41d453);},'ERjGG':'git\x20rev-parse\x20--abbrev-ref\x20HEAD','Akfer':'utf-8','YvZtr':'pipe'};try{return _0x526f23['hTMBo'](execSync,_0x526f23['ERjGG'],{'encoding':_0x526f23['Akfer'],'stdio':[_0x526f23[_0x596570(0x1b1)],_0x526f23['YvZtr'],_0x596570(0x18d)]})['trim']();}catch{return undefined;}}export async function getActiveFeatureId(){const _0x750868=_0x140b14,_0x54e67d={'vmyxV':function(_0x2580e6,_0x3f9fa2,_0x1d64e8){return _0x2580e6(_0x3f9fa2,_0x1d64e8);},'fluHl':_0x750868(0x13d)},_0x584ad2=_0x54e67d['vmyxV'](join,getRangerDir(),ACTIVE_FEATURE_FILE);if(!existsSync(_0x584ad2))return null;try{const _0x1beb86=await readFile(_0x584ad2,_0x54e67d['fluHl']);return _0x1beb86[_0x750868(0x1c8)]()||null;}catch{return null;}}async function setActiveFeatureId(_0x35a4a2){const _0x44ffcd=_0x140b14,_0x46cfe2={'JjCMG':function(_0x2b29d3,_0x35bc56,_0x28fc7b){return _0x2b29d3(_0x35bc56,_0x28fc7b);},'ZKLMG':function(_0x3c68df,_0x559fb4,_0x3ac274,_0x385d2a){return _0x3c68df(_0x559fb4,_0x3ac274,_0x385d2a);},'DRDxM':_0x44ffcd(0x13d)},_0x53e45=getRangerDir(),_0x1f9807=_0x46cfe2['JjCMG'](join,_0x53e45,ACTIVE_FEATURE_FILE);!existsSync(_0x53e45)&&await _0x46cfe2[_0x44ffcd(0x1e3)](mkdir,_0x53e45,{'recursive':!![]}),await _0x46cfe2['ZKLMG'](writeFile,_0x1f9807,_0x35a4a2,_0x46cfe2['DRDxM']);}function getProgressDisplay(_0x3f2ac5){const _0x37736a=_0x140b14,_0x55a007={'YybGk':function(_0x3f2300,_0x29b647){return _0x3f2300+_0x29b647;},'npHmG':function(_0x3c35e3,_0x4253d7){return _0x3c35e3+_0x4253d7;},'draiC':function(_0x17cfa1,_0x8e5545){return _0x17cfa1>_0x8e5545;},'PBKUN':function(_0x18cfdd,_0x37a653){return _0x18cfdd>_0x37a653;}},_0x1eabb3=_0x3f2ac5[_0x37736a(0x1d9)]||0x0,_0x397d13=_0x3f2ac5['verificationInProgressItems']||0x0,_0x41c9b2=_0x3f2ac5['blockedItems']||0x0,_0x6d51ad=_0x3f2ac5['incompleteItems']||0x0,_0x12a007=_0x3f2ac5['pendingItems']||0x0,_0x28a6b7=_0x55a007[_0x37736a(0x142)](_0x1eabb3+_0x397d13,_0x41c9b2)+_0x6d51ad+_0x12a007;if(_0x28a6b7===0x0)return'-';const _0x3230a8=0xa,_0x161b5f=Math[_0x37736a(0x1f9)](_0x1eabb3/_0x28a6b7*_0x3230a8),_0x50a920=_0x55a007['npHmG']('█'[_0x37736a(0x1fb)](_0x161b5f),'░'['repeat'](_0x3230a8-_0x161b5f)),_0x15e452=[];if(_0x55a007[_0x37736a(0x1ae)](_0x41c9b2,0x0))_0x15e452[_0x37736a(0x20d)](_0x41c9b2+'\x20blocked');if(_0x55a007[_0x37736a(0x1ae)](_0x6d51ad,0x0))_0x15e452['push'](_0x6d51ad+_0x37736a(0x1ba));if(_0x55a007[_0x37736a(0x138)](_0x397d13,0x0))_0x15e452['push'](_0x397d13+'\x20in\x20progress');const _0xbb25eb=_0x55a007[_0x37736a(0x138)](_0x15e452['length'],0x0)?'\x20('+_0x15e452['join'](',\x20')+')':'';return _0x50a920+'\x20'+_0x1eabb3+'/'+_0x28a6b7+'\x20verified'+_0xbb25eb;}function getCurrentSessionItems(_0x34eab1,_0x46c567){const _0x2dbc3b=_0x140b14;if(!_0x34eab1[_0x2dbc3b(0x1c9)])return _0x46c567['filter'](_0x1ecbf9=>!_0x1ecbf9[_0x2dbc3b(0x166)]);return _0x46c567[_0x2dbc3b(0x187)](_0x56b547=>_0x56b547['sessionId']===_0x34eab1[_0x2dbc3b(0x1c9)]||!_0x56b547[_0x2dbc3b(0x166)]);}function displayFeature(_0x419053,_0x2761d9){const _0x2e78c8=_0x140b14,_0x4bfcfb={'FxoEI':function(_0x153b31,_0x31c423){return _0x153b31(_0x31c423);},'tqOzC':_0x2e78c8(0x1dd),'pLEFp':function(_0x10e05d,_0x526ebe){return _0x10e05d<_0x526ebe;},'IqMWw':function(_0x1fee44,_0x2d1816){return _0x1fee44===_0x2d1816;},'lVbNu':'verified','ECGKQ':function(_0x3d1b81,_0x15faa3){return _0x3d1b81===_0x15faa3;},'CjMTi':_0x2e78c8(0x197),'sLyPi':function(_0x416f1,_0x33bc75){return _0x416f1===_0x33bc75;},'nXwLn':function(_0x578242,_0x11d4ac){return _0x578242===_0x11d4ac;},'McnzJ':_0x2e78c8(0x1a1),'LzrVM':function(_0x1dc86f,_0x1c7cc4){return _0x1dc86f===_0x1c7cc4;},'ZAIrr':'verification_in_progress','koETT':function(_0x435191,_0x2b1bf0){return _0x435191>_0x2b1bf0;},'mYryo':function(_0x5214a8,_0xa2f33){return _0x5214a8+_0xa2f33;},'QAyur':function(_0x23bf0c,_0x2cfcbe){return _0x23bf0c===_0x2cfcbe;},'RMpah':_0x2e78c8(0x191)};console[_0x2e78c8(0x150)]('\x0a'+_0x419053[_0x2e78c8(0x1d4)]+'\x20('+_0x419053['dashboardUrl']+')');_0x419053[_0x2e78c8(0x210)]&&console[_0x2e78c8(0x150)]('\x20\x20\x20Progress:\x20'+_0x4bfcfb['FxoEI'](getProgressDisplay,_0x419053[_0x2e78c8(0x210)]));_0x419053[_0x2e78c8(0x1af)]&&console['log']('\x20\x20\x20Description:\x20'+_0x419053['description']);_0x419053['gitRepoUrl']&&console[_0x2e78c8(0x150)]('\x20\x20\x20Repository:\x20'+_0x419053['gitRepoUrl']);_0x419053['gitBranch']&&console['log'](_0x2e78c8(0x14a)+_0x419053['gitBranch']);console['log']('\x20\x20\x20Created:\x20'+new Date(_0x419053[_0x2e78c8(0x1c3)])[_0x2e78c8(0x168)]());_0x419053['completedAt']&&console[_0x2e78c8(0x150)](_0x2e78c8(0x1f7)+new Date(_0x419053[_0x2e78c8(0x1b0)])[_0x2e78c8(0x168)]());if(_0x2761d9&&_0x2761d9[_0x2e78c8(0x177)]>0x0){console['log'](_0x4bfcfb['tqOzC']);for(let _0x3e917d=0x0;_0x4bfcfb[_0x2e78c8(0x1d5)](_0x3e917d,_0x2761d9[_0x2e78c8(0x177)]);_0x3e917d++){const _0xb0d838=_0x2761d9[_0x3e917d];let _0x43624e;if(_0x4bfcfb[_0x2e78c8(0x19c)](_0xb0d838['status'],_0x2e78c8(0x1a1))&&_0xb0d838['terminalReason']==='approved')_0x43624e='✅';else{if(_0x4bfcfb['IqMWw'](_0xb0d838[_0x2e78c8(0x1b5)],_0x4bfcfb['lVbNu']))_0x43624e='🟢';else{if(_0x4bfcfb[_0x2e78c8(0x15d)](_0xb0d838[_0x2e78c8(0x1b5)],_0x4bfcfb['CjMTi']))_0x43624e='🟠';else{if(_0x4bfcfb['sLyPi'](_0xb0d838[_0x2e78c8(0x1b5)],'blocked'))_0x43624e='🛑';else{if(_0x4bfcfb['nXwLn'](_0xb0d838['status'],_0x4bfcfb[_0x2e78c8(0x188)]))_0x43624e='⛔';else _0x4bfcfb[_0x2e78c8(0x1d8)](_0xb0d838['status'],_0x4bfcfb[_0x2e78c8(0x1a5)])?_0x43624e='⏳':_0x43624e='⬜';}}}}const _0x52f2ea=_0xb0d838[_0x2e78c8(0x157)]>0x1?_0x2e78c8(0x154)+_0xb0d838['version']+')':'',_0x3b9969=_0x4bfcfb[_0x2e78c8(0x15a)](_0xb0d838[_0x2e78c8(0x157)],0x1)&&_0xb0d838[_0x2e78c8(0x20c)]&&_0xb0d838['status']!=='closed'&&_0xb0d838[_0x2e78c8(0x1b5)]!=='verified'?_0x2e78c8(0x1b4):'';console[_0x2e78c8(0x150)]('\x20\x20\x20'+_0x4bfcfb[_0x2e78c8(0x183)](_0x3e917d,0x1)+'.\x20'+_0x43624e+'\x20'+_0xb0d838['description']+_0x52f2ea+_0x3b9969);_0xb0d838[_0x2e78c8(0x1b5)]==='blocked'&&_0xb0d838[_0x2e78c8(0x1da)]&&console[_0x2e78c8(0x150)]('\x20\x20\x20\x20\x20\x20Blocked:\x20'+_0xb0d838['blockedReason']);_0x4bfcfb['sLyPi'](_0xb0d838[_0x2e78c8(0x1b5)],_0x4bfcfb[_0x2e78c8(0x1ff)])&&_0xb0d838['incompleteReason']&&console[_0x2e78c8(0x150)](_0x2e78c8(0x1df)+_0xb0d838[_0x2e78c8(0x169)]);if(_0x4bfcfb[_0x2e78c8(0x146)](_0xb0d838['status'],'closed')&&_0xb0d838[_0x2e78c8(0x20b)]===_0x4bfcfb['RMpah'])console['log'](_0x2e78c8(0x155));else _0xb0d838[_0x2e78c8(0x1b5)]===_0x4bfcfb[_0x2e78c8(0x188)]&&_0xb0d838[_0x2e78c8(0x1a8)]&&console[_0x2e78c8(0x150)](_0x2e78c8(0x137)+_0xb0d838[_0x2e78c8(0x1a8)]);}}}export async function featureCreate(_0x313b9b,_0x4b66a5){const _0x204a62=_0x140b14,_0x4c90c5={'xwmJg':function(_0x8f1436){return _0x8f1436();},'nUnwg':function(_0x251ddb,_0x1160ff){return _0x251ddb===_0x1160ff;},'VrCRV':function(_0x529260,_0x32c5ac){return _0x529260===_0x32c5ac;},'sqUZy':function(_0x574ec1,_0x2caf0a){return _0x574ec1(_0x2caf0a);},'Nzjhn':function(_0x4a5b5b,_0x302aa7,_0x9c7c07){return _0x4a5b5b(_0x302aa7,_0x9c7c07);}},{envNames:_0x108b65}=await _0x4c90c5['xwmJg'](getEnvNames);if(_0x4c90c5['nUnwg'](_0x108b65[_0x204a62(0x177)],0x0)&&!process[_0x204a62(0x18a)][_0x204a62(0x156)]){let _0x245033=0x0;try{_0x245033=(await _0x4c90c5[_0x204a62(0x205)](listCloudProfiles))['length'];}catch{_0x245033=0x1;}_0x4c90c5[_0x204a62(0x1c1)](_0x245033,0x0)&&console[_0x204a62(0x165)]('\x0a'+formatProfileRequiredMessage(_0xb53b81=>bold(_0xb53b81)));}const _0x44d7cb=_0x4b66a5[_0x204a62(0x15f)]?_0x4b66a5['scenarios']['map'](_0x16a855=>_0x16a855[_0x204a62(0x1c8)]()):[],_0x202cad=getGitRepoUrl(),_0x35dc6f=getGitBranch();console[_0x204a62(0x150)]('\x0aCreating\x20feature\x20review...');const _0x4dd1bc=await createFeature({'name':_0x313b9b,'description':_0x4b66a5['description'],'checklist':_0x44d7cb,'gitRepoUrl':_0x202cad,'gitBranch':_0x35dc6f});await _0x4c90c5['sqUZy'](setActiveFeatureId,_0x4dd1bc['id']),await tryStartCurrentSession(_0x4dd1bc['id']);const _0x3f4b91=process[_0x204a62(0x18a)]['CLAUDE_SESSION_ID'];_0x3f4b91&&_0x4c90c5['Nzjhn'](registerSession,_0x3f4b91,_0x4dd1bc['id']),console[_0x204a62(0x150)](_0x204a62(0x1cd)+_0x4dd1bc['id']),displayFeature(_0x4dd1bc,_0x4dd1bc['checklistItems']),console[_0x204a62(0x150)]('\x0a➡️\x20\x20Set\x20as\x20active\x20feature\x20review');}export async function featureList(_0x36b01a){const _0x805ab=_0x140b14,_0x269843={'WfOjG':function(_0x2e6e3e){return _0x2e6e3e();},'cKbIX':function(_0x63818,_0x4ecb4e){return _0x63818(_0x4ecb4e);},'KiSLf':function(_0x591d81,_0x332f80){return _0x591d81<_0x332f80;},'LhcHp':function(_0x210bbb,_0x12d414){return _0x210bbb!==_0x12d414;},'BDmYp':_0x805ab(0x200)},_0x3cb09d={'limit':_0x36b01a[_0x805ab(0x1ab)]??0xa,'offset':_0x36b01a['offset']??0x0,'includeDeleted':_0x36b01a['includeDeleted']};_0x36b01a[_0x805ab(0x1c5)]&&(_0x3cb09d[_0x805ab(0x1e1)]=getGitRepoUrl(),_0x3cb09d['gitBranch']=_0x269843['WfOjG'](getGitBranch));const _0x1925e2=await listFeatures(_0x3cb09d);if(_0x1925e2['items']['length']===0x0){console['log'](_0x805ab(0x1b7));return;}const _0xe5fae4=_0x1925e2[_0x805ab(0x180)]>_0x1925e2['items'][_0x805ab(0x177)]?'Showing\x20'+_0x1925e2['items'][_0x805ab(0x177)]+'\x20of\x20'+_0x1925e2[_0x805ab(0x180)]:_0x1925e2['totalCount']+'\x20feature\x20review(s)\x20found';console['log']('\x0a'+_0xe5fae4+':\x0a');for(const _0x5d497d of _0x1925e2['items']){const _0x3b283f='3|1|5|2|0|4'['split']('|');let _0x14e1cd=0x0;while(!![]){switch(_0x3b283f[_0x14e1cd++]){case'0':console[_0x805ab(0x150)](_0x805ab(0x148)+new Date(_0x5d497d['createdAt'])['toLocaleDateString']());continue;case'1':console[_0x805ab(0x150)](_0x805ab(0x16d)+_0x5d497d['id']);continue;case'2':_0x5d497d['gitBranch']&&console[_0x805ab(0x150)]('\x20\x20\x20Branch:\x20'+_0x5d497d[_0x805ab(0x1ad)]);continue;case'3':console['log'](''+_0x5d497d['name']);continue;case'4':console['log']('');continue;case'5':_0x5d497d[_0x805ab(0x210)]&&console['log']('\x20\x20\x20Progress:\x20'+_0x269843[_0x805ab(0x204)](getProgressDisplay,_0x5d497d[_0x805ab(0x210)]));continue;}break;}}const _0x364487=_0x3cb09d[_0x805ab(0x1ab)]??0xa,_0x1eb597=(_0x3cb09d['offset']??0x0)+_0x1925e2['items']['length'];if(_0x269843['KiSLf'](_0x1eb597,_0x1925e2['totalCount'])){const _0x1cc4cb=_0x269843[_0x805ab(0x145)](_0x364487,0xa)?_0x805ab(0x18b)+_0x364487:'',_0x4d1d7c=_0x36b01a['currentBranch']?_0x269843[_0x805ab(0x17a)]:'',_0x2d5074=_0x36b01a['includeDeleted']?_0x805ab(0x13f):'';console[_0x805ab(0x150)](_0x805ab(0x1a2)+_0x1eb597+_0x1cc4cb+_0x4d1d7c+_0x2d5074);}}export async function featureShow(_0x4779ef){const _0xe76ca7=_0x140b14,_0x3f2ed7={'GQliw':'No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','bvDTZ':function(_0x11bf73,_0x14ef7a){return _0x11bf73(_0x14ef7a);}},_0x1d7d5b=_0x4779ef||await getActiveFeatureId();if(!_0x1d7d5b)throw new Error(_0x3f2ed7[_0xe76ca7(0x1ee)]);const _0x28d4dd=await _0x3f2ed7[_0xe76ca7(0x164)](getFeature,_0x1d7d5b);displayFeature(_0x28d4dd,_0x28d4dd[_0xe76ca7(0x16b)]);}export async function featureResume(_0x1455da){const _0x2f94a6=_0x140b14,_0x217246={'eNaDo':function(_0x3899ff){return _0x3899ff();},'KrsLS':function(_0x395b89,_0x3505fd,_0x295ec7){return _0x395b89(_0x3505fd,_0x295ec7);},'zDrQT':function(_0x3dc5e4,_0xc392b1){return _0x3dc5e4(_0xc392b1);},'oPxdT':function(_0x37f4ae,_0x349934){return _0x37f4ae&&_0x349934;},'cZrKf':_0x2f94a6(0x1f0),'ikxKE':function(_0x35c925,_0x2a2800){return _0x35c925||_0x2a2800;},'BYHNx':'any','HNdYY':_0x2f94a6(0x1b8),'zREfy':function(_0x4d55d7,_0x3134c7){return _0x4d55d7===_0x3134c7;},'kokfI':'\x0aNon-interactive\x20mode\x20detected.\x20Multiple\x20feature\x20reviews\x20found:','AiHJn':'Please\x20specify\x20the\x20feature\x20review\x20ID:\x20ranger\x20resume\x20<id>','LvQSD':_0x2f94a6(0x181),'exWUy':function(_0x22d483,_0x15a210){return _0x22d483!==_0x15a210;}};if(_0x1455da){const _0x35ada1=await getFeature(_0x1455da);await setActiveFeatureId(_0x35ada1['id']);const _0x48882a=_0x217246[_0x2f94a6(0x13c)](getGitBranch);_0x48882a&&_0x48882a!==_0x35ada1['gitBranch']&&(await _0x217246[_0x2f94a6(0x1fa)](updateFeature,_0x35ada1['id'],{'gitBranch':_0x48882a}),console['log']('\x20\x20\x20Updated\x20branch\x20to:\x20'+_0x48882a));console['log'](_0x2f94a6(0x1be)+_0x35ada1[_0x2f94a6(0x1d4)]+'\x20('+_0x35ada1['id']+')'),await tryStartCurrentSession(_0x35ada1['id']);const _0x1c1579=process['env'][_0x2f94a6(0x1c0)];_0x1c1579&&registerSession(_0x1c1579,_0x35ada1['id']);displayFeature(_0x35ada1,_0x35ada1[_0x2f94a6(0x16b)]),await _0x217246[_0x2f94a6(0x1d1)](printFeedbackNudge,_0x35ada1['id']);return;}const _0x56245f=getGitRepoUrl(),_0x3c580a=getGitBranch();if(_0x217246[_0x2f94a6(0x15c)](!_0x56245f,!_0x3c580a))throw new Error(_0x217246[_0x2f94a6(0x1eb)]);console[_0x2f94a6(0x150)]('\x0aSearching\x20for\x20feature\x20reviews\x20matching:\x20'+_0x217246['ikxKE'](_0x56245f,_0x217246[_0x2f94a6(0x208)])+_0x2f94a6(0x1fc)+(_0x3c580a||'any')+_0x2f94a6(0x141));const _0x57dc07=await _0x217246[_0x2f94a6(0x1d1)](listFeatures,{'gitRepoUrl':_0x56245f,'gitBranch':_0x3c580a}),_0x130129=_0x57dc07['items']['filter'](_0x5ca534=>_0x5ca534['status']?_0x5ca534['status']!=='verified':!_0x5ca534['completedAt']);if(_0x130129[_0x2f94a6(0x177)]===0x0){console[_0x2f94a6(0x150)]('\x0aNo\x20matching\x20active\x20feature\x20reviews\x20found.'),console['log'](_0x217246['HNdYY']);return;}let _0x20170c;if(_0x217246['zREfy'](_0x130129['length'],0x1))_0x20170c=_0x130129[0x0];else{const _0x38181b=process['stdin'][_0x2f94a6(0x1aa)]&&process['stdout'][_0x2f94a6(0x1aa)];if(!_0x38181b){console['log'](_0x217246[_0x2f94a6(0x1d3)]);for(const _0x3fb252 of _0x130129){console['log']('\x20\x20'+_0x3fb252[_0x2f94a6(0x1d4)]),console['log'](_0x2f94a6(0x19b)+_0x3fb252['id']),_0x3fb252[_0x2f94a6(0x210)]&&console[_0x2f94a6(0x150)]('\x20\x20\x20\x20\x20Progress:\x20'+_0x217246['zDrQT'](getProgressDisplay,_0x3fb252['stats'])),_0x3fb252['gitBranch']&&console['log'](_0x2f94a6(0x1b3)+_0x3fb252[_0x2f94a6(0x1ad)]);}throw new Error(_0x217246['AiHJn']);}const {selected:_0x44e196}=await _0x4803a4[_0x2f94a6(0x152)]([{'type':_0x2f94a6(0x20e),'name':_0x217246['LvQSD'],'message':'Multiple\x20feature\x20reviews\x20found.\x20Select\x20one:','choices':_0x130129['map'](_0x427530=>({'name':_0x427530['name']+'\x20('+_0x427530['id']+')','value':_0x427530['id']}))}]);_0x20170c=_0x130129['find'](_0x1c3c2f=>_0x1c3c2f['id']===_0x44e196);}await setActiveFeatureId(_0x20170c['id']);_0x3c580a&&_0x217246['exWUy'](_0x3c580a,_0x20170c['gitBranch'])&&(await updateFeature(_0x20170c['id'],{'gitBranch':_0x3c580a}),console['log'](_0x2f94a6(0x15b)+_0x3c580a));console[_0x2f94a6(0x150)](_0x2f94a6(0x1be)+_0x20170c[_0x2f94a6(0x1d4)]+'\x20('+_0x20170c['id']+')'),await _0x217246[_0x2f94a6(0x1d1)](tryStartCurrentSession,_0x20170c['id']);const _0x8acc02=await getFeature(_0x20170c['id']),_0x1229d0=process['env']['CLAUDE_SESSION_ID'];_0x1229d0&&registerSession(_0x1229d0,_0x8acc02['id']),_0x217246['KrsLS'](displayFeature,_0x8acc02,_0x8acc02['checklistItems']),await printFeedbackNudge(_0x8acc02['id']);}async function printFeedbackNudge(_0x17dc33){const _0x211564=_0x140b14,_0x442004={'kIFSx':function(_0x4fa59a,_0x2d119b){return _0x4fa59a(_0x2d119b);},'iGhNj':function(_0x1e74ff,_0x21d60e,_0x3e9144){return _0x1e74ff(_0x21d60e,_0x3e9144);},'nQZqv':function(_0x2334ed,_0x24dbd3){return _0x2334ed>_0x24dbd3;},'qtXQw':'\x20\x20\x20Run\x20`ranger\x20get-review`\x20to\x20see\x20what\x20needs\x20to\x20be\x20fixed.'};try{const {items:_0xaa7068}=await _0x442004['kIFSx'](getActionItems,_0x17dc33);let _0x58257a=0x0,_0x4261cf=0x0;for(const _0x21d3b1 of _0xaa7068){const _0x5baabb=await _0x442004[_0x211564(0x16e)](getItemFeedback,_0x17dc33,_0x21d3b1['id']);_0x442004['nQZqv'](_0x5baabb[_0x211564(0x17f)][_0x211564(0x177)],0x0)&&(_0x58257a+=_0x5baabb['unaddressedComments'][_0x211564(0x177)],_0x4261cf++);}_0x58257a>0x0&&(console['log']('\x0a⚠️\x20\x20'+_0x58257a+'\x20unaddressed\x20reviewer\x20comment(s)\x20across\x20'+_0x4261cf+'\x20scenario(s).'),console['log'](_0x442004['qtXQw']));}catch{}}async function tryStartCurrentSession(_0x427434){const _0x1e19b5=_0x140b14;try{const {sessions:_0x4c812e}=await listFeatureSessions(_0x427434),_0x3d7487=_0x4c812e[_0x1e19b5(0x18c)](_0x469d65=>_0x469d65['status']==='ready');_0x3d7487&&(await startSession(_0x427434,_0x3d7487['id']),console[_0x1e19b5(0x150)](_0x1e19b5(0x1cc)+_0x3d7487['iteration']));}catch{}}export async function featureReport(_0x587f83,_0x34bd84){const _0x3e3406=_0x140b14,_0x717e4e={'mPZIT':function(_0x446807){return _0x446807();},'hBVPZ':'No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.','qxQXO':'\x0aGenerating\x20report...','ysdOG':function(_0x13cf0b,_0x104bba,_0x220840){return _0x13cf0b(_0x104bba,_0x220840);},'GuVfR':function(_0x252375,_0x4b7229){return _0x252375(_0x4b7229);}},_0x225a5a=_0x587f83||await _0x717e4e[_0x3e3406(0x16f)](getActiveFeatureId);if(!_0x225a5a)throw new Error(_0x717e4e[_0x3e3406(0x162)]);console['log'](_0x717e4e['qxQXO']);const _0x49b88c=await _0x717e4e[_0x3e3406(0x17c)](getFeatureReportMarkdown,_0x225a5a,{'style':_0x34bd84['style']}),_0x33a5c7=_0x34bd84[_0x3e3406(0x1ca)]||join(_0x717e4e['mPZIT'](getRangerDir),_0x3e3406(0x139),_0x225a5a+'.md'),_0xeed604=_0x717e4e[_0x3e3406(0x17c)](join,_0x33a5c7,'..');!_0x717e4e['GuVfR'](existsSync,_0xeed604)&&await mkdir(_0xeed604,{'recursive':!![]}),await writeFile(_0x33a5c7,_0x49b88c,'utf-8'),console['log']('\x0a✅\x20Report\x20generated:\x20'+_0x33a5c7);}function getScenarioResult(_0x439eac){const _0x271771=_0x140b14,_0x337daa={'FUuPa':'closed','yrONk':'verification_in_progress','MnjFe':'in_progress'};if(_0x439eac['status']==='closed')return _0x439eac[_0x271771(0x20b)]??_0x337daa[_0x271771(0x1bc)];if(_0x439eac[_0x271771(0x1b5)]===_0x337daa[_0x271771(0x167)])return _0x337daa[_0x271771(0x174)];return _0x439eac[_0x271771(0x1b5)];}function getScenarioRationale(_0x35c3d8,_0x480c3e){const _0xca7a38=_0x140b14,_0x30a029={'GMyUw':_0xca7a38(0x1dc)},_0x33aae2=_0x30a029['GMyUw'][_0xca7a38(0x175)]('|');let _0x865a4c=0x0;while(!![]){switch(_0x33aae2[_0x865a4c++]){case'0':if(_0x35c3d8[_0xca7a38(0x169)])return _0x35c3d8[_0xca7a38(0x169)];continue;case'1':if(_0x480c3e)return _0x480c3e;continue;case'2':if(_0x35c3d8['notes'])return _0x35c3d8['notes'];continue;case'3':if(_0x35c3d8[_0xca7a38(0x1da)])return _0x35c3d8[_0xca7a38(0x1da)];continue;case'4':if(_0x35c3d8['canceledReason'])return _0x35c3d8['canceledReason'];continue;case'5':return null;}break;}}export async function featureReportPrDescription(_0x54d47e,_0x58dfbf){const _0x12262a=_0x140b14,_0x2ce103={'aaxZn':function(_0x17c929){return _0x17c929();},'fqNwA':_0x12262a(0x159),'eWEFp':function(_0x247217,_0x46e45f,_0x236429){return _0x247217(_0x46e45f,_0x236429);},'cXdMB':'\x0a❌\x20No\x20scenarios\x20found\x20to\x20include.','qSElf':_0x12262a(0x160),'AGXRr':'\x0a❌\x20All\x20scenarios\x20were\x20excluded.','VAWNh':function(_0x52d147,_0x6b39fb,_0x4f48db){return _0x52d147(_0x6b39fb,_0x4f48db);}},_0x50a357=_0x54d47e||await _0x2ce103['aaxZn'](getActiveFeatureId);if(!_0x50a357)throw new Error(_0x2ce103[_0x12262a(0x1ac)]);const _0x24b0ca=await getFeature(_0x50a357),_0xadc5c9=_0x24b0ca[_0x12262a(0x16b)]||[],_0x2fe516=_0x2ce103[_0x12262a(0x176)](getCurrentSessionItems,_0x24b0ca,_0xadc5c9);_0x2fe516['length']===0x0&&(console['error'](_0x2ce103['cXdMB']),process['exit'](0x1));const _0x8d1506=_0x58dfbf['excludeScenarios']??[],_0x5828d9=_0x8d1506['filter'](_0x100fe8=>!Number['isInteger'](_0x100fe8)||_0x100fe8<0x1||_0x100fe8>_0x2fe516['length']);if(_0x5828d9[_0x12262a(0x177)]>0x0){console['error'](_0x12262a(0x1e0)+_0x5828d9[_0x12262a(0x1f2)](',\x20')),console['log'](_0x2ce103[_0x12262a(0x1bd)]);for(let _0x3fbd31=0x0;_0x3fbd31<_0x2fe516['length'];_0x3fbd31++){console['log']('\x20\x20'+(_0x3fbd31+0x1)+'.\x20'+_0x2fe516[_0x3fbd31]['description']);}process['exit'](0x1);}const _0xf8867a=new Set(_0x8d1506[_0x12262a(0x184)](_0x281005=>_0x281005-0x1)),_0x32d08e=_0x2fe516['filter']((_0x5dd65c,_0x5edea4)=>!_0xf8867a['has'](_0x5edea4));_0x32d08e['length']===0x0&&(console[_0x12262a(0x1ed)](_0x2ce103['AGXRr']),process[_0x12262a(0x1d2)](0x1));if(_0x58dfbf['json'])await outputJsonReport(_0x50a357,_0x24b0ca,_0x32d08e);else{const _0x30875d=await _0x2ce103['VAWNh'](getFeatureReportMarkdown,_0x50a357,{'itemIds':_0x32d08e[_0x12262a(0x184)](_0x1f0bc2=>_0x1f0bc2['id'])});process[_0x12262a(0x13a)]['write'](_0x30875d['trimEnd']()+'\x0a');}}async function outputJsonReport(_0x8f672c,_0x407067,_0x519749){const _0x4f480a=_0x140b14,_0x4a0345={'bkikV':function(_0x342a6e,_0x5eb677){return _0x342a6e(_0x5eb677);},'lijEm':function(_0x506105,_0x35aeb8){return _0x506105>_0x35aeb8;},'LsDZC':function(_0x12a3db,_0x4e9b8a){return _0x12a3db===_0x4e9b8a;},'tCXNf':function(_0x3bd267,_0x7371f2){return _0x3bd267+_0x7371f2;}},_0x3a40dd=getApiBaseUrl(),_0x324ad2=await getFeatureReport(_0x8f672c),_0x10f01d=new Map(_0x324ad2[_0x4f480a(0x16b)]['map'](_0x3c6a68=>[_0x3c6a68['id'],_0x3c6a68])),_0x25ba7c=await Promise[_0x4f480a(0x206)](_0x519749[_0x4f480a(0x184)](async _0x4a6ce9=>{const _0x41b848=_0x4f480a,_0x4bfae9=_0x10f01d['get'](_0x4a6ce9['id']),_0x3b03fb=_0x4bfae9?.['linkedSession']??null;let _0x3cf7f9=[];if(_0x4a6ce9[_0x41b848(0x1d0)])try{const {steps:_0x402642}=await _0x4a0345['bkikV'](getBrowserSessionSteps,_0x4a6ce9['browserSessionId']);_0x4a0345[_0x41b848(0x14b)](_0x402642['length'],0x0)&&(_0x3cf7f9=_0x402642[_0x41b848(0x184)](_0x5b44fb=>{const _0x56766f=_0x41b848,_0x191ecb=_0x5b44fb[_0x56766f(0x1bf)][_0x56766f(0x18c)](_0x5b25b0=>_0x5b25b0['assetType']==='screenshot'&&_0x5b25b0['timing']==='after')??_0x5b44fb['assets']['find'](_0x1fcd6e=>_0x1fcd6e[_0x56766f(0x19d)]==='screenshot');let _0x5c7611=null,_0x5221b9=null;if(_0x191ecb){const _0x51734b=_0x191ecb[_0x56766f(0x1fe)]['location']['split']('/')['pop']();_0x5c7611=_0x3a40dd+'/api/v1/mcp/browser-sessions/'+_0x4a6ce9[_0x56766f(0x1d0)]+_0x56766f(0x1f6)+_0x51734b,_0x51734b&&(_0x5221b9=_0x51734b['replace'](/\.\w+$/,'')[_0x56766f(0x1f8)](/^(key_)?\d+_/,'')[_0x56766f(0x1f8)](/[-_]/g,'\x20'));}return{'description':_0x5221b9||_0x5b44fb[_0x56766f(0x1af)]||_0x5b44fb['stepName']||_0x56766f(0x1ef)+_0x5b44fb['position'],'screenshot':_0x5c7611,'is_key_step':_0x5b44fb[_0x56766f(0x189)]};}));}catch{}return _0x4a0345['LsDZC'](_0x3cf7f9[_0x41b848(0x177)],0x0)&&_0x3b03fb?.['screenshotUrls']&&(_0x3cf7f9=_0x3b03fb['screenshotUrls']['map']((_0x47b1b7,_0x238255)=>({'description':'Screenshot\x20'+(_0x238255+0x1),'screenshot':_0x47b1b7,'is_key_step':![]}))),{'description':_0x4a6ce9[_0x41b848(0x1af)],'result':_0x4a0345[_0x41b848(0x209)](getScenarioResult,_0x4a6ce9),'rationale':getScenarioRationale(_0x4a6ce9,_0x3b03fb?.['agentResponse']),'steps':_0x3cf7f9};})),_0x5ba78f={'url':_0x407067[_0x4f480a(0x173)],'scenarios':_0x25ba7c};process[_0x4f480a(0x13a)]['write'](_0x4a0345['tCXNf'](JSON[_0x4f480a(0x19a)](_0x5ba78f,null,0x2),'\x0a'));}export async function featureConcludeSession(_0x59e1e5){const _0x880fa7=_0x140b14,_0x4e7d80={'laBHY':_0x880fa7(0x1a9),'nPwOX':function(_0x2650b2,_0x47ac5a){return _0x2650b2(_0x47ac5a);},'RalvS':_0x880fa7(0x17e),'mZpWo':function(_0x21c5f4,_0x26d876){return _0x21c5f4(_0x26d876);},'GpNpt':'completed','uatbZ':_0x880fa7(0x171),'EDdsF':'in_progress','SCBWE':function(_0x3d4e27,_0x1a32af,_0x36ac71){return _0x3d4e27(_0x1a32af,_0x36ac71);}},_0x2581c5=_0x59e1e5||await getActiveFeatureId();if(!_0x2581c5)throw new Error(_0x4e7d80['laBHY']);const _0x44520b=await _0x4e7d80[_0x880fa7(0x1c7)](getFeature,_0x2581c5);if(!_0x44520b['currentSessionId'])throw new Error(_0x4e7d80['RalvS']);const {sessions:_0x13e3d8}=await _0x4e7d80['mZpWo'](listFeatureSessions,_0x2581c5),_0x4a65c6=_0x13e3d8[_0x880fa7(0x18c)](_0x7ce96a=>_0x7ce96a['id']===_0x44520b['currentSessionId']);if(!_0x4a65c6)throw new Error('Current\x20session\x20not\x20found.');if(_0x4a65c6[_0x880fa7(0x1b5)]===_0x4e7d80[_0x880fa7(0x1e6)]){console['log'](_0x4e7d80[_0x880fa7(0x143)]);return;}if(_0x4a65c6[_0x880fa7(0x1b5)]!==_0x4e7d80['EDdsF'])throw new Error('Cannot\x20conclude\x20session\x20with\x20status:\x20'+_0x4a65c6[_0x880fa7(0x1b5)]);console[_0x880fa7(0x150)](_0x880fa7(0x14f)),await _0x4e7d80[_0x880fa7(0x212)](concludeSession,_0x2581c5,_0x44520b['currentSessionId']),console['log']('\x0a✅\x20Session\x20'+_0x4a65c6[_0x880fa7(0x1b6)]+_0x880fa7(0x196)),console['log'](_0x880fa7(0x182));}function _0x31a1(_0x79094d,_0x318208){_0x79094d=_0x79094d-0x137;const _0x4b3859=_0x4b38();let _0x31a194=_0x4b3859[_0x79094d];return _0x31a194;}export async function featureSessions(_0x8792cc){const _0x2778d7=_0x140b14,_0x3eb45c={'iEMBN':function(_0xec5d1f){return _0xec5d1f();},'meQYb':function(_0x50ef8a,_0x2b3017){return _0x50ef8a(_0x2b3017);}},_0x11d2a0=_0x8792cc||await _0x3eb45c[_0x2778d7(0x202)](getActiveFeatureId);if(!_0x11d2a0)throw new Error('No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.');const _0x33cca5=await _0x3eb45c[_0x2778d7(0x211)](getFeature,_0x11d2a0);console[_0x2778d7(0x150)](_0x2778d7(0x185)+_0x33cca5['name']+'\x0a');const {sessions:_0x4236b1}=await listFeatureSessions(_0x11d2a0);if(_0x4236b1['length']===0x0){console['log'](_0x2778d7(0x151));return;}for(const _0x5d508b of _0x4236b1){const _0x12a3bd=_0x5d508b[_0x2778d7(0x1b5)]==='completed'?'✅':_0x5d508b[_0x2778d7(0x1b5)]==='in_progress'?'🔄':'▶️';console[_0x2778d7(0x150)](_0x12a3bd+_0x2778d7(0x201)+_0x5d508b['iteration']+'\x20('+_0x5d508b['id']+')'),console[_0x2778d7(0x150)](_0x2778d7(0x178)+_0x5d508b['status']),console['log']('\x20\x20\x20Created:\x20'+new Date(_0x5d508b[_0x2778d7(0x1c3)])['toLocaleString']()),_0x5d508b[_0x2778d7(0x1b0)]&&console['log']('\x20\x20\x20Completed:\x20'+new Date(_0x5d508b['completedAt'])[_0x2778d7(0x168)]()),console[_0x2778d7(0x150)]('');}}export async function featureAddScenario(_0x4023c9,_0x24ec32){const _0x158f7d=_0x140b14,_0x5b8e0e={'BfUai':function(_0x5c6353){return _0x5c6353();},'PoAdD':_0x158f7d(0x1a9),'JMRpD':function(_0x4366e7,_0x14494f){return _0x4366e7(_0x14494f);},'ZtLUg':function(_0x6fd5c9,_0x26afc3,_0x5e57a1){return _0x6fd5c9(_0x26afc3,_0x5e57a1);}},_0x246885=_0x24ec32||await _0x5b8e0e[_0x158f7d(0x1f4)](getActiveFeatureId);if(!_0x246885)throw new Error(_0x5b8e0e['PoAdD']);const _0x53a877=await getFeature(_0x246885);if(_0x53a877[_0x158f7d(0x1e7)]&&!_0x53a877['latestReview'][_0x158f7d(0x192)])throw new Error(_0x158f7d(0x194)+_0x53a877['dashboardUrl']);await createChecklistItem(_0x246885,_0x4023c9);const _0x5b3fae=await _0x5b8e0e['JMRpD'](getFeature,_0x246885);console['log'](_0x158f7d(0x1c2)),_0x5b8e0e['ZtLUg'](displayFeature,_0x5b3fae,_0x5b3fae['checklistItems']);}export async function featureEditScenario(_0x155a78,_0x2fc879){const _0xfec700=_0x140b14,_0x225eab={'vtiNG':_0xfec700(0x18e),'IUIAV':'\x0a❌\x20No\x20scenarios\x20found\x20to\x20edit.','uChVG':_0xfec700(0x1e9),'zNmXp':'\x0aAvailable\x20scenarios:','QxLEe':function(_0x1cc5a2,_0x1f70eb){return _0x1cc5a2+_0x1f70eb;},'kczus':function(_0x2f259f,_0x4ce743){return _0x2f259f-_0x4ce743;},'Uwxfb':function(_0x50fcaf,_0x2f5e8d){return _0x50fcaf<_0x2f5e8d;},'FFsUY':function(_0x1e73c5,_0x45ca14,_0x2e57d3,_0x15ea27){return _0x1e73c5(_0x45ca14,_0x2e57d3,_0x15ea27);},'yWYfd':function(_0x2bbeb3,_0x4a4ea8){return _0x2bbeb3(_0x4a4ea8);},'NDYYD':function(_0x56ccef,_0x34faff,_0x1cad44){return _0x56ccef(_0x34faff,_0x1cad44);}},_0x15c99b=_0x2fc879['id']||await getActiveFeatureId();!_0x15c99b&&(console[_0xfec700(0x1ed)](_0x225eab[_0xfec700(0x1d7)]),console['error']('Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review'),process['exit'](0x1));const _0x119290=await getFeature(_0x15c99b);_0x119290['latestReview']&&!_0x119290[_0xfec700(0x1e7)]['submittedAt']&&(console[_0xfec700(0x1ed)](_0xfec700(0x14e)),console['error']('Please\x20finish\x20your\x20review\x20first:'),console['error']('\x20\x20'+_0x119290[_0xfec700(0x173)]),process['exit'](0x1));const _0x411b3e=_0x119290[_0xfec700(0x16b)]||[];_0x411b3e[_0xfec700(0x177)]===0x0&&(console[_0xfec700(0x1ed)](_0x225eab[_0xfec700(0x1e5)]),process[_0xfec700(0x1d2)](0x1));if(_0x2fc879[_0xfec700(0x1bb)]===undefined){console[_0xfec700(0x1ed)](_0x225eab[_0xfec700(0x20f)]),console[_0xfec700(0x150)](_0x225eab['zNmXp']);for(let _0x39fc8f=0x0;_0x39fc8f<_0x411b3e[_0xfec700(0x177)];_0x39fc8f++){console['log']('\x20\x20'+_0x225eab[_0xfec700(0x153)](_0x39fc8f,0x1)+'.\x20'+_0x411b3e[_0x39fc8f][_0xfec700(0x1af)]);}process[_0xfec700(0x1d2)](0x1);}const _0xec66=_0x225eab[_0xfec700(0x172)](_0x2fc879[_0xfec700(0x1bb)],0x1);if(_0x225eab['Uwxfb'](_0xec66,0x0)||_0xec66>=_0x411b3e['length']){console[_0xfec700(0x1ed)](_0xfec700(0x144)+_0x2fc879[_0xfec700(0x1bb)]+_0xfec700(0x18f)+_0x411b3e[_0xfec700(0x177)]+_0xfec700(0x140)),console['log']('\x0aAvailable\x20scenarios:');for(let _0x2145c6=0x0;_0x2145c6<_0x411b3e[_0xfec700(0x177)];_0x2145c6++){console[_0xfec700(0x150)]('\x20\x20'+(_0x2145c6+0x1)+'.\x20'+_0x411b3e[_0x2145c6][_0xfec700(0x1af)]);}process['exit'](0x1);}const _0x13b7ef=_0x411b3e[_0xec66];await _0x225eab['FFsUY'](updateChecklistItem,_0x15c99b,_0x13b7ef['id'],{'description':_0x155a78});const _0x8f20d5=await _0x225eab['yWYfd'](getFeature,_0x15c99b);console[_0xfec700(0x150)](_0xfec700(0x19e)),_0x225eab['NDYYD'](displayFeature,_0x8f20d5,_0x8f20d5[_0xfec700(0x16b)]);}async function downloadFeedbackImage(_0x3b0018,_0x5a1a37){const _0x1c817b=_0x140b14,_0x391923={'VokFU':_0x1c817b(0x199),'WDtQO':function(_0x1bccf6,_0x299262,_0x1bc96f){return _0x1bccf6(_0x299262,_0x1bc96f);},'gtaNL':function(_0x22002b,_0x4f8cf7,_0x46b7a9){return _0x22002b(_0x4f8cf7,_0x46b7a9);},'BaiBS':function(_0x122fb6,_0x1c6baa,_0x2a4ff9){return _0x122fb6(_0x1c6baa,_0x2a4ff9);}};try{const _0xd95a5c=join(getRangerDir(),_0x391923['VokFU']);await _0x391923[_0x1c817b(0x195)](mkdir,_0xd95a5c,{'recursive':!![]});const _0x5e6852=_0x391923[_0x1c817b(0x16a)](join,_0xd95a5c,_0x1c817b(0x1cf)+_0x5a1a37+'.png'),_0x53e122=await fetch(_0x3b0018);if(!_0x53e122['ok'])return null;const _0x1444c1=Buffer[_0x1c817b(0x19f)](await _0x53e122['arrayBuffer']());return await _0x391923[_0x1c817b(0x1c4)](writeFile,_0x5e6852,_0x1444c1),_0x5e6852;}catch{return null;}}export async function featureGetReview(_0x164798){const _0x294a0e=_0x140b14,_0x425b6e={'DOrxf':function(_0xd44656){return _0xd44656();},'PytxN':'No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','OuRBl':function(_0x427f30,_0x3f2b3f){return _0x427f30(_0x3f2b3f);},'zFZjt':function(_0x20c590,_0x29fbd2){return _0x20c590===_0x29fbd2;},'bhuNw':'No\x20scenarios\x20found.','hmIHI':function(_0x4ca820,_0x3d361a,_0x59a457){return _0x4ca820(_0x3d361a,_0x59a457);},'PMTLv':'short','sMqVL':'numeric','CbZEP':'Unknown','kpwHe':'\x20>\x20','csAhi':function(_0x4cbe03,_0x20f579){return _0x4cbe03===_0x20f579;},'mbFaW':function(_0x3026af,_0x2a3e9d){return _0x3026af>=_0x2a3e9d;}},_0x34b690=_0x164798||await _0x425b6e[_0x294a0e(0x1a4)](getActiveFeatureId);if(!_0x34b690)throw new Error(_0x425b6e['PytxN']);const _0xd1a02d=await getFeature(_0x34b690),{items:_0x1837d1}=await _0x425b6e['OuRBl'](getActionItems,_0x34b690);console['log']('\x0a📋\x20Feedback\x20for:\x20'+_0xd1a02d[_0x294a0e(0x1d4)]+'\x20('+_0xd1a02d['id']+')\x0a');if(_0x425b6e[_0x294a0e(0x207)](_0x1837d1['length'],0x0)){console['log'](_0x425b6e['bhuNw']);return;}for(let _0x4d4d16=0x0;_0x4d4d16<_0x1837d1['length'];_0x4d4d16++){const _0x1c2329=_0x1837d1[_0x4d4d16],_0x3e67c6=_0x1c2329['version']>0x1?'\x20(v'+_0x1c2329[_0x294a0e(0x157)]+')':'',_0x5d6432=await _0x425b6e['hmIHI'](getItemFeedback,_0x34b690,_0x1c2329['id']);if(_0x5d6432['unaddressedComments'][_0x294a0e(0x177)]>0x0){console[_0x294a0e(0x150)](_0x294a0e(0x1cb)+(_0x4d4d16+0x1)+_0x294a0e(0x1ce)+_0x1c2329['description']+'\x22'+_0x3e67c6+_0x294a0e(0x16c)+_0x5d6432[_0x294a0e(0x17f)]['length']+'\x20unaddressed\x20comment(s)');for(const _0x473cef of _0x5d6432[_0x294a0e(0x17f)]){const _0x320d23=new Date(_0x473cef[_0x294a0e(0x1c3)])['toLocaleDateString'](_0x294a0e(0x186),{'month':_0x425b6e['PMTLv'],'day':_0x425b6e[_0x294a0e(0x1ea)]}),_0x21bbf9=_0x473cef['authorName']||_0x473cef[_0x294a0e(0x17d)]||_0x425b6e[_0x294a0e(0x179)];console['log'](_0x294a0e(0x13e)+_0x21bbf9+'\x20('+_0x320d23+_0x294a0e(0x14c)+_0x473cef['content']+'\x22');if(_0x473cef['assetUrl']){const _0x4a951c=await _0x425b6e['hmIHI'](downloadFeedbackImage,_0x473cef['assetUrl'],_0x473cef['id']);_0x4a951c&&console[_0x294a0e(0x150)]('\x20\x20\x20\x20\x20📷\x20Screenshot:\x20'+_0x4a951c);}if(_0x473cef['domRef']){const _0x4fc936=_0x473cef[_0x294a0e(0x1a7)]['selector'][_0x294a0e(0x175)](_0x425b6e['kpwHe'])['pop']()?.[_0x294a0e(0x175)](':')[0x0]||_0x294a0e(0x1db),_0x4e107a=_0x473cef[_0x294a0e(0x1a7)]['textContent']?'\x20\x22'+_0x473cef['domRef'][_0x294a0e(0x161)]['slice'](0x0,0x3c)+'\x22':'';console['log']('\x20\x20\x20\x20\x20🎯\x20Element:\x20<'+_0x4fc936+'>'+_0x4e107a),console['log']('\x20\x20\x20\x20\x20📋\x20Selector:\x20'+_0x473cef['domRef'][_0x294a0e(0x1c6)]);}else{if(_0x473cef['spatial']){const _0x4c70ef=_0x473cef[_0x294a0e(0x1f5)][_0x294a0e(0x147)];_0x425b6e['csAhi'](_0x473cef[_0x294a0e(0x1f5)]['type'],_0x294a0e(0x193))&&_0x425b6e['mbFaW'](_0x4c70ef['length'],0x2)?console[_0x294a0e(0x150)]('\x20\x20\x20\x20\x20📍\x20Annotation:\x20point\x20at\x20('+_0x4c70ef[0x0]['toFixed'](0x2)+',\x20'+_0x4c70ef[0x1]['toFixed'](0x2)+')'):console[_0x294a0e(0x150)](_0x294a0e(0x13b)+_0x473cef[_0x294a0e(0x1f5)][_0x294a0e(0x158)]+'\x20at\x20['+_0x4c70ef['map'](_0x2549f1=>_0x2549f1['toFixed'](0x2))['join'](',\x20')+']');}}}if(_0x5d6432['canonicalFlow']){console[_0x294a0e(0x150)](_0x294a0e(0x1e8));for(const _0x59799b of _0x5d6432['canonicalFlow']['split']('\x0a')){console['log']('\x20\x20\x20\x20'+_0x59799b);}}}else console[_0x294a0e(0x150)]('Scenario\x20'+(_0x4d4d16+0x1)+':\x20\x22'+_0x1c2329['description']+'\x22'+_0x3e67c6+'\x20—\x20no\x20comments'),console[_0x294a0e(0x150)](_0x294a0e(0x1a6));console['log']('');}}export async function featureDelete(_0x4c3b0d){const _0x3b27b0=_0x140b14,_0x4c1fca={'rhsoo':function(_0x470fa9,_0x12ed5d){return _0x470fa9(_0x12ed5d);},'bIfGh':function(_0x4d5c3b,_0x16f69a){return _0x4d5c3b+_0x16f69a;}},_0x278c43=_0x4c3b0d||await getActiveFeatureId();if(!_0x278c43)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 _0x5b71a1=await getFeature(_0x278c43);await _0x4c1fca[_0x3b27b0(0x1ec)](softDeleteFeature,_0x278c43),console['log']('\x0a🗑️\x20\x20Deleted\x20feature\x20review:\x20'+_0x5b71a1['name']+'\x20('+_0x278c43+')'),console[_0x3b27b0(0x150)](_0x4c1fca[_0x3b27b0(0x1d6)](_0x3b27b0(0x17b),_0x278c43));}export async function featureRestore(_0x5bb790){const _0x5c07eb=_0x140b14,_0x3a3929={'uIyrk':function(_0xa10baf,_0x43c789){return _0xa10baf(_0x43c789);}};await _0x3a3929['uIyrk'](restoreFeature,_0x5bb790);const _0x389570=await getFeature(_0x5bb790);console['log'](_0x5c07eb(0x1f3)+_0x389570[_0x5c07eb(0x1d4)]+'\x20('+_0x5bb790+')'),displayFeature(_0x389570,_0x389570[_0x5c07eb(0x16b)]);}
@@ -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(_0x468e5c,_0x2e61ab){const _0xb5d34a=_0xe4a6,_0x562d4f=_0x468e5c();while(!![]){try{const _0x5bd341=-parseInt(_0xb5d34a(0x16c))/0x1*(-parseInt(_0xb5d34a(0x170))/0x2)+parseInt(_0xb5d34a(0x166))/0x3*(parseInt(_0xb5d34a(0x168))/0x4)+-parseInt(_0xb5d34a(0x16b))/0x5+-parseInt(_0xb5d34a(0x163))/0x6+-parseInt(_0xb5d34a(0x165))/0x7+parseInt(_0xb5d34a(0x16d))/0x8*(-parseInt(_0xb5d34a(0x164))/0x9)+-parseInt(_0xb5d34a(0x169))/0xa*(-parseInt(_0xb5d34a(0x167))/0xb);if(_0x5bd341===_0x2e61ab)break;else _0x562d4f['push'](_0x562d4f['shift']());}catch(_0x2b4f99){_0x562d4f['push'](_0x562d4f['shift']());}}}(_0x4241,0x676d8));import{sessionStart,sessionEnd,preCompact,postEdit,planStart,planReminder,exitPlanMode,stopHook,enable,disable,autoPrompt}from'./hooks/index.js';function _0xe4a6(_0x5e4759,_0x48eb75){_0x5e4759=_0x5e4759-0x163;const _0x424130=_0x4241();let _0xe4a64d=_0x424130[_0x5e4759];return _0xe4a64d;}function _0x4241(){const _0x4bdcbc=['1170468LOKPdT','27xAaYNQ','4751201xZQcjG','312jaTwVH','11wrWfAg','12524qdyEeG','11268310OiJMzW','Valid\x20hooks:\x20','1474240zWqcak','163LgqqnT','535944SFJaZT','join','mAQbG','4182sbSCQI','NXODk','once','exit'];_0x4241=function(){return _0x4bdcbc;};return _0x4241();}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 _0x27e421=_0xe4a6,_0x36ba97={'mAQbG':'SIGHUP'};if(cancellationHandlersInstalled)return;const _0x129bb6=()=>{const _0x2bffcd=_0xe4a6;process[_0x2bffcd(0x173)](0x0);};process['once']('SIGINT',_0x129bb6),process['once']('SIGTERM',_0x129bb6),process[_0x27e421(0x172)](_0x36ba97[_0x27e421(0x16f)],_0x129bb6),cancellationHandlersInstalled=!![];}export async function hook(_0xfc2cad,_0x375b49){const _0x31f4a9=_0xe4a6,_0x1b527d={'NXODk':function(_0x545aff,_0x3b64b2){return _0x545aff(_0x3b64b2);}};installCancellationHandlers();const _0x30a5c8=HOOKS[_0xfc2cad];if(!_0x30a5c8){const _0x2b257b=Object['keys'](HOOKS)[_0x31f4a9(0x16e)](',\x20');console['error']('Unknown\x20hook:\x20'+_0xfc2cad),console['error'](_0x31f4a9(0x16a)+_0x2b257b),process['exit'](0x1);}await _0x1b527d[_0x31f4a9(0x171)](_0x30a5c8,_0x375b49);}
@@ -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 _0x2a5d(_0xe3d3d5,_0x869dd){_0xe3d3d5=_0xe3d3d5-0x7b;const _0x1ef690=_0x1ef6();let _0x2a5d97=_0x1ef690[_0xe3d3d5];return _0x2a5d97;}(function(_0x30edcc,_0x2e7709){const _0x2ee5b1=_0x2a5d,_0x3446b3=_0x30edcc();while(!![]){try{const _0x19e5c4=-parseInt(_0x2ee5b1(0x7e))/0x1*(parseInt(_0x2ee5b1(0x85))/0x2)+parseInt(_0x2ee5b1(0x80))/0x3*(parseInt(_0x2ee5b1(0x81))/0x4)+-parseInt(_0x2ee5b1(0x88))/0x5*(-parseInt(_0x2ee5b1(0x7b))/0x6)+-parseInt(_0x2ee5b1(0x84))/0x7+-parseInt(_0x2ee5b1(0x7f))/0x8+parseInt(_0x2ee5b1(0x86))/0x9+parseInt(_0x2ee5b1(0x87))/0xa;if(_0x19e5c4===_0x2e7709)break;else _0x3446b3['push'](_0x3446b3['shift']());}catch(_0x38247c){_0x3446b3['push'](_0x3446b3['shift']());}}}(_0x1ef6,0xbef88));import{readHookInput}from'./output.js';import{isSessionEnabled,hasSessionBeenPrompted,markSessionPrompted}from'../utils/sessionCache.js';import{resolveHookMode}from'../utils/environment.js';function _0x1ef6(){const _0x3e174e=['36474EePIov','iiyDu','amkqt','2KVcQPN','239848kQyZBc','11994uszXsh','920WzInYD','off','QLOaf','10436118cFqFIM','460754idwzLm','582939TcYhKn','8190320CxlwCl','790SeXzHk'];_0x1ef6=function(){return _0x3e174e;};return _0x1ef6();}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 _0x30d972=_0x2a5d,_0x3192c1={'NrEDg':function(_0x4730b5,_0x2899ae){return _0x4730b5===_0x2899ae;},'QLOaf':function(_0x11c3a5){return _0x11c3a5();},'amkqt':_0x30d972(0x82),'iiyDu':function(_0x23e37e,_0x2741c3){return _0x23e37e(_0x2741c3);}};if(_0x3192c1['NrEDg'](_0x3192c1[_0x30d972(0x83)](resolveHookMode),_0x3192c1[_0x30d972(0x7d)]))return;const _0x5acc7c=await _0x3192c1['QLOaf'](readHookInput),_0x10a5a2=_0x5acc7c?.['session_id'];if(!_0x10a5a2)return;if(isSessionEnabled(_0x10a5a2)||_0x3192c1[_0x30d972(0x7c)](hasSessionBeenPrompted,_0x10a5a2))return;markSessionPrompted(_0x10a5a2),console['log'](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(_0x34d0e0,_0x299782){const _0x85e2cb=_0x1cdb,_0x351dd6=_0x34d0e0();while(!![]){try{const _0x5e0d0d=-parseInt(_0x85e2cb(0x12c))/0x1*(-parseInt(_0x85e2cb(0x12d))/0x2)+-parseInt(_0x85e2cb(0x130))/0x3*(-parseInt(_0x85e2cb(0x132))/0x4)+parseInt(_0x85e2cb(0x126))/0x5*(-parseInt(_0x85e2cb(0x128))/0x6)+-parseInt(_0x85e2cb(0x12f))/0x7*(-parseInt(_0x85e2cb(0x131))/0x8)+-parseInt(_0x85e2cb(0x133))/0x9+parseInt(_0x85e2cb(0x134))/0xa+parseInt(_0x85e2cb(0x12a))/0xb;if(_0x5e0d0d===_0x299782)break;else _0x351dd6['push'](_0x351dd6['shift']());}catch(_0x309c42){_0x351dd6['push'](_0x351dd6['shift']());}}}(_0x5679,0xbf6d7));function _0x1cdb(_0x53b76f,_0x2365de){_0x53b76f=_0x53b76f-0x124;const _0x567944=_0x5679();let _0x1cdb7e=_0x567944[_0x53b76f];return _0x1cdb7e;}function _0x5679(){const _0x27d964=['onSAZ','79030hwIWSh','#\x20RANGER\x20DISABLED\x0a\x0aThe\x20user\x20has\x20expressly\x20disabled\x20Ranger\x20hooks\x20for\x20this\x20session','468rhLFYi','main','10147643dlzElj','mnVag','469TBnrEA','746pkfmaH','\x20and\x20branch\x20\x27','879347INeiFs','120954ynjMCB','16XmEyEn','112RNRjbj','13334409MYYXKV','10209600PBtWlp','master'];_0x5679=function(){return _0x27d964;};return _0x5679();}import{disableSession,disableBranch,getCurrentBranch}from'../utils/sessionCache.js';import{printBlock}from'./output.js';export async function disable(_0x51cd41){const _0x2e8be9=_0x1cdb,_0x4cb956={'oODKn':function(_0x3973b8){return _0x3973b8();},'mnVag':_0x2e8be9(0x124),'onSAZ':function(_0x8c8945,_0x1f2449){return _0x8c8945!==_0x1f2449;}},_0x3ff6d2=_0x51cd41||process['env']['CLAUDE_SESSION_ID']||'';_0x3ff6d2&&disableSession(_0x3ff6d2);const _0x109d55=_0x4cb956['oODKn'](getCurrentBranch);_0x109d55&&_0x109d55!=='main'&&_0x109d55!==_0x4cb956[_0x2e8be9(0x12b)]&&disableBranch(_0x109d55),printBlock(_0x2e8be9(0x127)+(_0x109d55&&_0x4cb956[_0x2e8be9(0x125)](_0x109d55,_0x2e8be9(0x129))&&_0x109d55!==_0x4cb956['mnVag']?_0x2e8be9(0x12e)+_0x109d55+'\x27':'')+'.\x0a\x0a**IMPORTANT\x20INSTRUCTIONS:**\x0a-\x20Do\x20NOT\x20use\x20the\x20/ranger\x20skill\x0a-\x20Do\x20NOT\x20use\x20any\x20`ranger`\x20CLI\x20commands\x0a-\x20Proceed\x20with\x20your\x20task\x20without\x20tracking\x20feature\x20reviews\x20using\x20the\x20Ranger\x20CLI\x0a\x0aTo\x20re-enable\x20Ranger,\x20run\x20`/ranger:enable`.');}
@@ -1 +1 @@
1
- function _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(_0x455679,_0x15e058){const _0x452552=_0x28b3,_0xe13d8d=_0x455679();while(!![]){try{const _0x4cfa84=-parseInt(_0x452552(0xfe))/0x1*(parseInt(_0x452552(0xfb))/0x2)+parseInt(_0x452552(0x100))/0x3*(-parseInt(_0x452552(0x101))/0x4)+-parseInt(_0x452552(0xfc))/0x5+-parseInt(_0x452552(0xff))/0x6+-parseInt(_0x452552(0x106))/0x7+parseInt(_0x452552(0x104))/0x8+-parseInt(_0x452552(0x102))/0x9*(-parseInt(_0x452552(0xfd))/0xa);if(_0x4cfa84===_0x15e058)break;else _0xe13d8d['push'](_0xe13d8d['shift']());}catch(_0x246391){_0xe13d8d['push'](_0xe13d8d['shift']());}}}(_0x329f,0x1d77e));import{enableSession,getCurrentBranch}from'../utils/sessionCache.js';function _0x329f(){const _0x2f58de=['266568urewmi','env','898030APsQKF','main','ranger\x20setup','5432opzHpj','1135175gNNWxM','770cdESrQ','31ggHawh','648720cnioNi','3nKbttQ','891648WaGOjk','100278Pmqtxl','\x27\x20is\x20now\x20enabled**\x20-\x20Ranger\x20will\x20stay\x20active\x20on\x20this\x20branch\x20across\x20sessions.'];_0x329f=function(){return _0x2f58de;};return _0x329f();}import{getToken}from'../utils/keychain.js';import{getRangerSkillContent}from'../utils/skillContent.js';function _0x28b3(_0x36c1c1,_0x23fa80){_0x36c1c1=_0x36c1c1-0xfb;const _0x329f62=_0x329f();let _0x28b3d9=_0x329f62[_0x36c1c1];return _0x28b3d9;}import{printBlock}from'./output.js';import{update}from'../update.js';export async function enable(_0x4ba003){const _0x59f4da=_0x28b3,_0x3837ac={'poBzk':function(_0xf1190f){return _0xf1190f();},'jzsma':'ranger\x20setup\x20--opencode','Fblev':_0x59f4da(0x108),'ABwZf':function(_0xeb5ae,_0x385907){return _0xeb5ae(_0x385907);},'roQoN':function(_0x5e2fb0,_0x44a65e){return _0x5e2fb0!==_0x44a65e;},'jsoNx':function(_0x44475c){return _0x44475c();}},_0x54e067=_0x4ba003||process[_0x59f4da(0x105)]['CLAUDE_SESSION_ID']||'',_0x479e03=Boolean(_0x4ba003),_0x506248=await _0x3837ac['poBzk'](getToken);if(!_0x506248){const _0xa3ea7a=_0x479e03?_0x3837ac['jzsma']:_0x3837ac['Fblev'],_0x3c3096=_0x479e03?'Restart\x20your\x20OpenCode\x20session\x20after\x20setup.':'Restart\x20your\x20Claude\x20Code\x20session\x20after\x20setup.';printBlock('#\x20RANGER\x20SETUP\x20REQUIRED\x0a\x0aThe\x20Ranger\x20CLI\x20is\x20not\x20configured.\x20To\x20get\x20started:\x0a\x0a1.\x20Install:\x20`npm\x20install\x20-g\x20@ranger-testing/ranger-cli`\x0a2.\x20Run:\x20`'+_0xa3ea7a+'`\x0a\x0aA\x20browser\x20will\x20open\x20for\x20authentication.\x20A\x20human\x20needs\x20to\x20complete\x20the\x20login.\x0a'+_0x3c3096);return;}try{await update();}catch{}_0x54e067&&_0x3837ac['ABwZf'](enableSession,_0x54e067);const _0x4fa9af=_0x3837ac['poBzk'](getCurrentBranch),_0x28d198=_0x4fa9af&&_0x4fa9af!==_0x59f4da(0x107)&&_0x3837ac['roQoN'](_0x4fa9af,'master')?'\x0a\x0a**Branch\x20\x27'+_0x4fa9af+_0x59f4da(0x103):'',_0x13f035=_0x3837ac['jsoNx'](getRangerSkillContent);printBlock('#\x20RANGER\x20ENABLED'+_0x28d198+'\x0a\x0a**For\x20ANY\x20UI\x20work,\x20you\x20MUST\x20use\x20the\x20/ranger\x20skill.**\x0a\x0a'+_0x13f035+'\x0a\x0a##\x20Quick\x20Reference\x0a\x0a**In\x20plan\x20mode:**\x20Include\x20Ranger\x20Feature\x20Review\x20Specification\x20at\x20end\x20of\x20plan.\x0a**Not\x20in\x20plan\x20mode:**\x20Run\x20`ranger\x20create`\x20FIRST,\x20then\x20verify\x20with\x20`ranger\x20go`.');}
@@ -1 +1 @@
1
- function _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(_0x19b8b8,_0x2131b9){const _0x5c91e8=_0x2968,_0x3e1b42=_0x19b8b8();while(!![]){try{const _0x22b60d=parseInt(_0x5c91e8(0xb7))/0x1+-parseInt(_0x5c91e8(0xb0))/0x2*(-parseInt(_0x5c91e8(0xb6))/0x3)+-parseInt(_0x5c91e8(0xb2))/0x4*(-parseInt(_0x5c91e8(0xb8))/0x5)+parseInt(_0x5c91e8(0xb3))/0x6*(parseInt(_0x5c91e8(0xb1))/0x7)+-parseInt(_0x5c91e8(0xb5))/0x8+parseInt(_0x5c91e8(0xb4))/0x9+-parseInt(_0x5c91e8(0xb9))/0xa;if(_0x22b60d===_0x2131b9)break;else _0x3e1b42['push'](_0x3e1b42['shift']());}catch(_0x4a978f){_0x3e1b42['push'](_0x3e1b42['shift']());}}}(_0x2e43,0x3d2c5));import{printBlock,getEnabledSessionId}from'./output.js';function _0x2968(_0x18e243,_0x360b9e){_0x18e243=_0x18e243-0xb0;const _0x2e4391=_0x2e43();let _0x29689d=_0x2e4391[_0x18e243];return _0x29689d;}export async function exitPlanMode(_0x10c6d7){const _0x2fb642={'rrVeB':function(_0xd7d02a,_0x3b0e83){return _0xd7d02a(_0x3b0e83);},'ePDRP':function(_0x57202a,_0x53fce7){return _0x57202a(_0x53fce7);}},_0x431435=await _0x2fb642['rrVeB'](getEnabledSessionId,_0x10c6d7);if(!_0x431435)return;_0x2fb642['ePDRP'](printBlock,'===\x20RANGER:\x20CREATE\x20FEATURE\x20REVIEW\x20NOW\x20===\x0a\x0aYou\x20are\x20about\x20to\x20exit\x20plan\x20mode.\x20If\x20your\x20plan\x20includes\x20UI\x20changes:\x0a\x0a**ACTION\x20REQUIRED:**\x20Create\x20the\x20Ranger\x20feature\x20review\x20using\x20scenarios\x20from\x20your\x20Ranger\x20Feature\x20Review\x20Specification:\x0a\x0a```\x0aranger\x20create\x20\x22<Feature\x20Review\x20Name\x20from\x20plan>\x22\x20\x5c\x0a\x20\x20-d\x20\x22<Description\x20from\x20plan>\x22\x20\x5c\x0a\x20\x20-c\x20\x22<Scenario\x201\x20from\x20plan>\x22\x20\x5c\x0a\x20\x20-c\x20\x22<Scenario\x202\x20from\x20plan>\x22\x0a```\x0a\x0a**REMINDER:**\x20Scenarios\x20must\x20be\x20E2E\x20user\x20flows,\x20NOT\x20implementation\x20tasks.\x0a\x0a**Good:**\x20\x22User\x20can\x20log\x20in\x20with\x20valid\x20credentials\x20and\x20see\x20dashboard\x22\x0a**Bad:**\x20\x22Add\x20form\x20validation\x22\x20or\x20\x22API\x20returns\x20200\x22\x0a\x0aIf\x20you\x20did\x20NOT\x20include\x20a\x20Ranger\x20Feature\x20Review\x20Specification\x20in\x20your\x20plan,\x20go\x20back\x20and\x20add\x20one\x20before\x20proceeding.\x20See\x20/ranger\x20and\x20create.md\x20for\x20guidance.\x0a\x0a===\x20END\x20===');}function _0x2e43(){const _0x172a11=['779472xgxQSB','1466624aKUqAW','599268odpvAK','219354eserkQ','1505925jKzObr','8776250nToeMH','4DVmhJe','7cMJPKJ','4yhUojl','1829154PbqOKu'];_0x2e43=function(){return _0x172a11;};return _0x2e43();}
@@ -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(_0x44f71e,_0x198d39){var _0x4adea5=_0x2162,_0x4f79a8=_0x44f71e();while(!![]){try{var _0x3a5f61=parseInt(_0x4adea5(0xaf))/0x1+parseInt(_0x4adea5(0xae))/0x2+-parseInt(_0x4adea5(0xab))/0x3*(-parseInt(_0x4adea5(0xac))/0x4)+parseInt(_0x4adea5(0xa8))/0x5+-parseInt(_0x4adea5(0xad))/0x6*(-parseInt(_0x4adea5(0xb1))/0x7)+-parseInt(_0x4adea5(0xa9))/0x8*(-parseInt(_0x4adea5(0xb0))/0x9)+-parseInt(_0x4adea5(0xaa))/0xa*(parseInt(_0x4adea5(0xb2))/0xb);if(_0x3a5f61===_0x198d39)break;else _0x4f79a8['push'](_0x4f79a8['shift']());}catch(_0x3f512e){_0x4f79a8['push'](_0x4f79a8['shift']());}}}(_0x566a,0xe3ddf));export{sessionStart}from'./sessionStart.js';export{sessionEnd}from'./sessionEnd.js';export{preCompact}from'./preCompact.js';export{postEdit}from'./postEdit.js';export{planStart}from'./planStart.js';function _0x2162(_0x47c0ac,_0x239e14){_0x47c0ac=_0x47c0ac-0xa8;var _0x566a9b=_0x566a();var _0x2162c2=_0x566a9b[_0x47c0ac];return _0x2162c2;}export{planReminder}from'./planReminder.js';export{exitPlanMode}from'./exitPlanMode.js';export{stopHook}from'./stopHook.js';function _0x566a(){var _0xed2bcf=['55CPmoge','2866490hXFlHN','8EACYSn','12465350CiGmbs','21TXVUqY','651432JaSlWO','276mPkcJu','2069774VXYFGn','1514965GyalzX','9868806WQJCmS','274876Ytxguc'];_0x566a=function(){return _0xed2bcf;};return _0x566a();}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 _0x5193(_0x540866,_0x4aac12){_0x540866=_0x540866-0x134;const _0xa1206d=_0xa120();let _0x51930c=_0xa1206d[_0x540866];return _0x51930c;}(function(_0x3bc5a7,_0x2f4704){const _0x3f65f5=_0x5193,_0xa32935=_0x3bc5a7();while(!![]){try{const _0x2dc815=parseInt(_0x3f65f5(0x13f))/0x1+-parseInt(_0x3f65f5(0x13e))/0x2+-parseInt(_0x3f65f5(0x13c))/0x3+parseInt(_0x3f65f5(0x138))/0x4+-parseInt(_0x3f65f5(0x13b))/0x5*(-parseInt(_0x3f65f5(0x13a))/0x6)+parseInt(_0x3f65f5(0x140))/0x7+parseInt(_0x3f65f5(0x137))/0x8*(parseInt(_0x3f65f5(0x139))/0x9);if(_0x2dc815===_0x2f4704)break;else _0xa32935['push'](_0xa32935['shift']());}catch(_0x47c056){_0xa32935['push'](_0xa32935['shift']());}}}(_0xa120,0xcee36));import{isSessionEnabled}from'../utils/sessionCache.js';export function printBlock(_0x5d3d38){console['log'](_0x5d3d38);}export async function readHookInput(){const _0x5b1d16=_0x5193;let _0x5dfc44='';try{for await(const _0x557967 of process[_0x5b1d16(0x141)]){_0x5dfc44+=_0x557967;}}catch{return null;}if(!_0x5dfc44[_0x5b1d16(0x13d)]())return null;try{return JSON['parse'](_0x5dfc44);}catch{return null;}}export async function getEnabledSessionId(_0x1cfe7a){const _0x5ecec1=_0x5193,_0x26d8e0={'lWLeP':function(_0x318d4c,_0x2d200c){return _0x318d4c(_0x2d200c);},'UKDuL':function(_0x1ad515){return _0x1ad515();}};if(_0x1cfe7a)return _0x26d8e0[_0x5ecec1(0x134)](isSessionEnabled,_0x1cfe7a)?_0x1cfe7a:null;const _0x3f5150=await _0x26d8e0['UKDuL'](readHookInput),_0x41b862=_0x3f5150?.[_0x5ecec1(0x135)];if(!_0x41b862||!isSessionEnabled(_0x41b862))return null;return _0x41b862;}function _0xa120(){const _0x49ef39=['stdin','lWLeP','session_id','OzBfO','40yeCmCI','2826800lUlxdl','3020346dsdUWS','6XBRFuf','2593645WVDMMP','3347265SSbHML','trim','3329014zGhgmY','256599woKxda','3273746HeKFGN'];_0xa120=function(){return _0x49ef39;};return _0xa120();}export async function getEnabledHookContext(_0x49ad09){const _0x26f831=_0x5193,_0xf0cc4a={'OzBfO':function(_0x4d9a2e){return _0x4d9a2e();}};if(_0x49ad09){if(!isSessionEnabled(_0x49ad09))return null;return{'sessionId':_0x49ad09,'input':{'session_id':_0x49ad09}};}const _0x5d3cb1=await _0xf0cc4a[_0x26f831(0x136)](readHookInput),_0x10be41=_0x5d3cb1?.['session_id'];if(!_0x10be41||!isSessionEnabled(_0x10be41))return null;return{'sessionId':_0x10be41,'input':_0x5d3cb1};}
@@ -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 _0x362e(_0x3caee3,_0x3f2d92){_0x3caee3=_0x3caee3-0x1d2;const _0x52e21a=_0x52e2();let _0x362e9c=_0x52e21a[_0x3caee3];return _0x362e9c;}(function(_0x4cea9c,_0x10fd52){const _0x3d364e=_0x362e,_0x137a24=_0x4cea9c();while(!![]){try{const _0x57b7b3=-parseInt(_0x3d364e(0x1d2))/0x1+-parseInt(_0x3d364e(0x1d3))/0x2+parseInt(_0x3d364e(0x1d5))/0x3*(parseInt(_0x3d364e(0x1d9))/0x4)+-parseInt(_0x3d364e(0x1de))/0x5*(-parseInt(_0x3d364e(0x1d4))/0x6)+-parseInt(_0x3d364e(0x1d6))/0x7+-parseInt(_0x3d364e(0x1dd))/0x8*(parseInt(_0x3d364e(0x1d7))/0x9)+parseInt(_0x3d364e(0x1d8))/0xa;if(_0x57b7b3===_0x10fd52)break;else _0x137a24['push'](_0x137a24['shift']());}catch(_0x29167e){_0x137a24['push'](_0x137a24['shift']());}}}(_0x52e2,0xb115a));function _0x52e2(){const _0x339a1e=['FIQhm','oWRvn','352rixijJ','10545kDWtLN','1319967APjNZC','158462tJlItY','912ZRkAkw','42PogRyP','686273WXAREA','135207dITzep','12893270hifLMN','363912oMXLkJ','sessionId'];_0x52e2=function(){return _0x339a1e;};return _0x52e2();}import{printBlock,getEnabledHookContext}from'./output.js';import{shouldShowPlanReminder}from'../utils/sessionCache.js';export async function planReminder(_0x16c5b3){const _0x4ae8ea=_0x362e,_0x2f50a6={'FIQhm':function(_0x347830,_0x216433){return _0x347830!==_0x216433;},'oWRvn':function(_0x494bcd,_0x39df64){return _0x494bcd(_0x39df64);}},_0x429457=await getEnabledHookContext(_0x16c5b3);if(!_0x429457)return;if(_0x2f50a6[_0x4ae8ea(0x1db)](_0x429457['input']['permission_mode'],'plan'))return;if(!shouldShowPlanReminder(_0x429457[_0x4ae8ea(0x1da)]))return;_0x2f50a6[_0x4ae8ea(0x1dc)](printBlock,'===\x20RANGER:\x20ACTION\x20REQUIRED\x20===\x0a\x0aIf\x20this\x20plan\x20involves\x20ANY\x20UI\x20changes,\x20you\x20MUST:\x0a\x0a1.\x20**READ\x20/ranger\x20skill\x20NOW**\x20-\x20specifically\x20the\x20create.md\x20instructions\x0a2.\x20**Add\x20a\x20Ranger\x20Feature\x20Review\x20Specification**\x20to\x20the\x20end\x20of\x20your\x20plan\x0a\x0aDO\x20NOT\x20write\x20scenarios\x20without\x20reading\x20create.md\x20first.\x0aScenarios\x20are\x20E2E\x20test\x20flows,\x20NOT\x20implementation\x20tasks.\x0a\x0aYour\x20plan\x20must\x20end\x20with:\x0a```\x0a###\x20Ranger\x20Feature\x20Review\x20Specification\x20(create\x20this\x20first\x20with\x20`ranger\x20create`)\x0aFeature\x20Review\x20Name:\x20<name>\x0aDescription:\x20<description>\x0aScenarios:\x0a1.\x20<E2E\x20user\x20flow\x20that\x20can\x20be\x20verified\x20in\x20browser>\x0a2.\x20<another\x20E2E\x20user\x20flow\x20if\x20needed>\x0a```\x0a\x0aThen\x20run:\x20`ranger\x20create\x20\x22<name>\x22\x20-d\x20\x22<desc>\x22\x20-c\x20\x22<scenario1>\x22\x20-c\x20\x22<scenario2>\x22`\x0a\x0a===\x20END\x20===');}
@@ -1 +1 @@
1
- (function(_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(_0x40f5e9,_0x15529f){const _0x1ef77b=_0x32f0,_0x2050b5=_0x40f5e9();while(!![]){try{const _0x3ce2de=-parseInt(_0x1ef77b(0xfe))/0x1*(-parseInt(_0x1ef77b(0xfa))/0x2)+-parseInt(_0x1ef77b(0xfc))/0x3+-parseInt(_0x1ef77b(0x100))/0x4+parseInt(_0x1ef77b(0xf6))/0x5+parseInt(_0x1ef77b(0xf5))/0x6+-parseInt(_0x1ef77b(0xff))/0x7*(-parseInt(_0x1ef77b(0xf7))/0x8)+-parseInt(_0x1ef77b(0xfb))/0x9*(parseInt(_0x1ef77b(0xf9))/0xa);if(_0x3ce2de===_0x15529f)break;else _0x2050b5['push'](_0x2050b5['shift']());}catch(_0x59f3a9){_0x2050b5['push'](_0x2050b5['shift']());}}}(_0x7c92,0x1e9fd));function _0x32f0(_0x206f15,_0x36cb9e){_0x206f15=_0x206f15-0xf5;const _0x7c929f=_0x7c92();let _0x32f0c5=_0x7c929f[_0x206f15];return _0x32f0c5;}function _0x7c92(){const _0x2d20c8=['333GMzmOg','112nwUXnG','417184qzdXGZ','971550ffUAiF','788065ZHZtbt','9440BASTgw','===\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===','20KylIro','500SCVZSC','16110UBVySz','565065nSKySK','dZKRn'];_0x7c92=function(){return _0x2d20c8;};return _0x7c92();}import{printBlock,getEnabledSessionId}from'./output.js';export async function planStart(_0x432f1c){const _0x54207f=_0x32f0,_0x348397={'vtoXI':function(_0xa25a22,_0x49091e){return _0xa25a22(_0x49091e);},'dZKRn':function(_0x32de8e,_0x5f459d){return _0x32de8e(_0x5f459d);}},_0x15f5ae=await _0x348397['vtoXI'](getEnabledSessionId,_0x432f1c);if(!_0x15f5ae)return;_0x348397[_0x54207f(0xfd)](printBlock,_0x54207f(0xf8));}
@@ -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 _0xbc71(){const _0x265cb2=['12846rTVHVw','22103bsnWhO','48OWKVdb','1267QHpEqQ','130yxcXco','5129235hhoNIs','1580854eeEenk','GqeCR','1167846tQXKUF','4fseWti','2170365Fxmtiq','log','stringify','1092408efQYDH'];_0xbc71=function(){return _0x265cb2;};return _0xbc71();}(function(_0x14886a,_0x48d60e){const _0x5cfced=_0x113b,_0x39f586=_0x14886a();while(!![]){try{const _0x37f432=-parseInt(_0x5cfced(0x17d))/0x1*(-parseInt(_0x5cfced(0x17e))/0x2)+parseInt(_0x5cfced(0x184))/0x3*(parseInt(_0x5cfced(0x177))/0x4)+parseInt(_0x5cfced(0x178))/0x5+parseInt(_0x5cfced(0x17c))/0x6*(parseInt(_0x5cfced(0x17f))/0x7)+-parseInt(_0x5cfced(0x17b))/0x8+parseInt(_0x5cfced(0x181))/0x9+-parseInt(_0x5cfced(0x180))/0xa*(parseInt(_0x5cfced(0x182))/0xb);if(_0x37f432===_0x48d60e)break;else _0x39f586['push'](_0x39f586['shift']());}catch(_0x10c133){_0x39f586['push'](_0x39f586['shift']());}}}(_0xbc71,0x4acfe));import{getSessionEntry,updateBranchTracking}from'../utils/sessionCache.js';import{getToken}from'../utils/keychain.js';import{getEnabledSessionId}from'./output.js';function _0x113b(_0x3fdd7c,_0x454324){_0x3fdd7c=_0x3fdd7c-0x177;const _0xbc712=_0xbc71();let _0x113b2e=_0xbc712[_0x3fdd7c];return _0x113b2e;}export async function postEdit(_0x1dc115){const _0x58339e=_0x113b,_0x1dd5c0={'STHih':function(_0x5732f1,_0x1f240e){return _0x5732f1(_0x1f240e);},'GqeCR':function(_0xd31af){return _0xd31af();},'KpNEJ':'PostToolUse'},_0x49f379=await _0x1dd5c0['STHih'](getEnabledSessionId,_0x1dc115);if(!_0x49f379)return;updateBranchTracking(_0x49f379);const _0x4aaf11=await _0x1dd5c0[_0x58339e(0x183)](getToken);if(!_0x4aaf11)return;const _0x534843=getSessionEntry(_0x49f379);if(_0x534843){const _0x195abb={'hookSpecificOutput':{'hookEventName':_0x1dd5c0['KpNEJ'],'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[_0x58339e(0x179)](JSON[_0x58339e(0x17a)](_0x195abb));return;}const _0x3f01f6={'hookSpecificOutput':{'hookEventName':'PostToolUse','additionalContext':'RANGER:\x20If\x20this\x20is\x20for\x20a\x20UI\x20feature,\x20you\x20MUST\x20use\x20/ranger\x20to\x20either\x20create\x20a\x20new\x20feature\x20review\x20or\x20resume\x20an\x20existing\x20one.'}};console['log'](JSON['stringify'](_0x3f01f6));}
@@ -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 _0x3a52(_0x56fac2,_0x40460c){_0x56fac2=_0x56fac2-0x172;const _0x14f57b=_0x14f5();let _0x3a52c8=_0x14f57b[_0x56fac2];return _0x3a52c8;}(function(_0x17e09a,_0x6d2045){const _0x2abbba=_0x3a52,_0x18a205=_0x17e09a();while(!![]){try{const _0xdeda81=parseInt(_0x2abbba(0x174))/0x1*(-parseInt(_0x2abbba(0x175))/0x2)+parseInt(_0x2abbba(0x179))/0x3+-parseInt(_0x2abbba(0x177))/0x4*(parseInt(_0x2abbba(0x17b))/0x5)+parseInt(_0x2abbba(0x172))/0x6+-parseInt(_0x2abbba(0x173))/0x7+parseInt(_0x2abbba(0x17c))/0x8*(parseInt(_0x2abbba(0x17a))/0x9)+parseInt(_0x2abbba(0x176))/0xa*(parseInt(_0x2abbba(0x17d))/0xb);if(_0xdeda81===_0x6d2045)break;else _0x18a205['push'](_0x18a205['shift']());}catch(_0x25b8a2){_0x18a205['push'](_0x18a205['shift']());}}}(_0x14f5,0x3d4be));import{getToken}from'../utils/keychain.js';function _0x14f5(){const _0x4b3e08=['1uRwljR','877150SmBzDX','16180ChCxmn','4rBqCjs','dujVK','748938ZzPWOy','686349pZHrTI','2343630YZutnQ','8ERlhai','5357Evsoad','413862DcpBkJ','171353hPBXbn'];_0x14f5=function(){return _0x4b3e08;};return _0x14f5();}import{printBlock,getEnabledSessionId}from'./output.js';export async function preCompact(_0x44eeb7){const _0x2ac2be=_0x3a52,_0x2d9435={'dujVK':function(_0x2d3daf){return _0x2d3daf();},'rxipZ':function(_0xf37b10,_0x460354){return _0xf37b10(_0x460354);}},_0x2d4c54=await getEnabledSessionId(_0x44eeb7);if(!_0x2d4c54)return;try{const _0xe4be70=await _0x2d9435[_0x2ac2be(0x178)](getToken);if(!_0xe4be70)return;_0x2d9435['rxipZ'](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(_0x3b6ca7,_0x2ba89a){const _0x43d29c=_0x47f0,_0x22e2c9=_0x3b6ca7();while(!![]){try{const _0x56ebf8=parseInt(_0x43d29c(0x98))/0x1+-parseInt(_0x43d29c(0x8d))/0x2+parseInt(_0x43d29c(0x96))/0x3*(parseInt(_0x43d29c(0x8f))/0x4)+parseInt(_0x43d29c(0x95))/0x5+-parseInt(_0x43d29c(0x94))/0x6+-parseInt(_0x43d29c(0x97))/0x7*(parseInt(_0x43d29c(0x8b))/0x8)+parseInt(_0x43d29c(0x90))/0x9*(-parseInt(_0x43d29c(0x92))/0xa);if(_0x56ebf8===_0x2ba89a)break;else _0x22e2c9['push'](_0x22e2c9['shift']());}catch(_0xd9437f){_0x22e2c9['push'](_0x22e2c9['shift']());}}}(_0xb141,0xe8140));function _0x47f0(_0x573159,_0x38eb03){_0x573159=_0x573159-0x8b;const _0xb14188=_0xb141();let _0x47f0b0=_0xb14188[_0x573159];return _0x47f0b0;}import{isSessionEnabled,recordEnabledSessionCleared}from'../utils/sessionCache.js';import{readHookInput}from'./output.js';export async function sessionEnd(_0x12ff94){const _0xeebda9=_0x47f0,_0x3f8a16={'AWgHM':function(_0x455356){return _0x455356();},'wJKdk':function(_0x510ae7,_0xd6ec17){return _0x510ae7===_0xd6ec17;}},_0x5f0540=process['env'][_0xeebda9(0x8c)];let _0x195fea=_0x12ff94,_0x1e5802;if(!_0x12ff94){if(_0x5f0540&&!isSessionEnabled(_0x5f0540))return;const _0x275b10=await _0x3f8a16[_0xeebda9(0x99)](readHookInput);_0x195fea=_0x275b10?.[_0xeebda9(0x8e)]||_0x5f0540,_0x1e5802=_0x275b10?.[_0xeebda9(0x93)];}if(!_0x195fea)return;_0x3f8a16['wJKdk'](_0x1e5802,_0xeebda9(0x91))&&recordEnabledSessionCleared(_0x195fea);}function _0xb141(){const _0x5b63da=['session_id','16HbmEmz','178614NoJFZf','clear','40aYppTP','reason','8880360sSmnOk','8592430DzQoIC','1185846CfEGpa','42ReSknQ','670351shwwyf','AWgHM','1248200jWvkxT','CLAUDE_SESSION_ID','1047558QjERBP'];_0xb141=function(){return _0x5b63da;};return _0xb141();}
@@ -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 _0x2a1037=_0x2c25;function _0x2c25(_0x50594f,_0x5a02be){_0x50594f=_0x50594f-0x64;const _0x536a76=_0x536a();let _0x2c2560=_0x536a76[_0x50594f];return _0x2c2560;}(function(_0x451aa5,_0x1b1757){const _0x336778=_0x2c25,_0x367dd3=_0x451aa5();while(!![]){try{const _0x131408=-parseInt(_0x336778(0x79))/0x1*(-parseInt(_0x336778(0x77))/0x2)+-parseInt(_0x336778(0x6b))/0x3+parseInt(_0x336778(0x6d))/0x4+parseInt(_0x336778(0x6e))/0x5+-parseInt(_0x336778(0x7a))/0x6+parseInt(_0x336778(0x78))/0x7+parseInt(_0x336778(0x67))/0x8*(-parseInt(_0x336778(0x72))/0x9);if(_0x131408===_0x1b1757)break;else _0x367dd3['push'](_0x367dd3['shift']());}catch(_0x5930be){_0x367dd3['push'](_0x367dd3['shift']());}}}(_0x536a,0xdbe5e));import{appendFile}from'fs/promises';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';const RANGER_AUTO_ENABLED_PROMPT=_0x2a1037(0x75);function _0x536a(){const _0x43fba0=['582105bzlaLl','master','3617596pwDSjq','3875295vVqiwZ','CLAUDE_ENV_FILE','source','UcaWj','5895feZdTs','stdin','stringify','=================================================================\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=================================================================','main','220IQTcVF','7311143aqGBfn','12199BigYLs','6158190GMEPaO','xXjEE','NjlfP','tCFtN','23752lZBRms','KPGPL','trackCommandEnd','success'];_0x536a=function(){return _0x43fba0;};return _0x536a();}export async function sessionStart(_0xed851f){const _0x2a7781=_0x2a1037,_0x3f898d={'KPGPL':function(_0x23475f,_0x4da968){return _0x23475f||_0x4da968;},'AHqED':'session_id','xXjEE':_0x2a7781(0x70),'UcaWj':function(_0x1e732a,_0x19cdb6){return _0x1e732a(_0x19cdb6);},'pbdLD':function(_0x853969,_0x32715a){return _0x853969===_0x32715a;},'tCFtN':function(_0x24f3e2,_0x5b36c8){return _0x24f3e2!==_0x5b36c8;},'NjlfP':_0x2a7781(0x6c),'vyzhC':'SessionStart','BzltY':function(_0x318d4a,_0x277308){return _0x318d4a+_0x277308;}};let _0x20ba14=_0x3f898d[_0x2a7781(0x68)](_0xed851f,''),_0x174fbd;if(!_0xed851f){let _0x443f75='';for await(const _0x3fe1fe of process[_0x2a7781(0x73)]){_0x443f75+=_0x3fe1fe;}try{const _0x14f407=JSON['parse'](_0x443f75);_0x20ba14=_0x14f407[_0x3f898d['AHqED']]||'',_0x174fbd=_0x14f407[_0x3f898d[_0x2a7781(0x64)]];}catch{}const _0x50bd46=process['env'][_0x2a7781(0x6f)];if(_0x50bd46&&_0x20ba14)try{await appendFile(_0x50bd46,'export\x20CLAUDE_SESSION_ID=\x22'+_0x20ba14+'\x22\x0a');}catch{}}try{await getToken();}catch{}if(_0x20ba14){_0x3f898d[_0x2a7781(0x71)](shouldAutoEnableAfterClear,_0x174fbd)&&autoEnableAfterClear(_0x20ba14);_0x3f898d[_0x2a7781(0x71)](initBranchTracking,_0x20ba14);_0x3f898d['pbdLD'](resolveHookMode(),'on')&&_0x3f898d[_0x2a7781(0x71)](enableSession,_0x20ba14);const _0xe9388b=isSessionEnabled(_0x20ba14);try{const _0x3425e2=_0x3f898d[_0x2a7781(0x71)](createTelemetryCollector,'hook:session-start');await _0x3425e2['trackCommandStart']({'sessionId':_0x20ba14,'hooksEnabled':_0xe9388b}),await _0x3425e2[_0x2a7781(0x69)](_0x2a7781(0x6a));}catch{}if(_0xe9388b){const _0x1e60bf=getCurrentBranch(),_0x28b1ca=_0x1e60bf&&_0x3f898d[_0x2a7781(0x66)](_0x1e60bf,_0x2a7781(0x76))&&_0x3f898d[_0x2a7781(0x66)](_0x1e60bf,_0x3f898d[_0x2a7781(0x65)])?'\x20(Branch:\x20'+_0x1e60bf+')':'',_0x317f56={'hookSpecificOutput':{'hookEventName':_0x3f898d['vyzhC'],'additionalContext':_0x3f898d['BzltY'](RANGER_AUTO_ENABLED_PROMPT,_0x28b1ca)}};console['log'](JSON[_0x2a7781(0x74)](_0x317f56));}}}
@@ -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(_0x532315,_0x14534b){const _0x1d3991=_0x5068,_0x2661fc=_0x532315();while(!![]){try{const _0x29c782=parseInt(_0x1d3991(0x1c3))/0x1+parseInt(_0x1d3991(0x1c0))/0x2+parseInt(_0x1d3991(0x1b1))/0x3+-parseInt(_0x1d3991(0x1c5))/0x4*(-parseInt(_0x1d3991(0x1b0))/0x5)+parseInt(_0x1d3991(0x1c6))/0x6+parseInt(_0x1d3991(0x1b3))/0x7*(parseInt(_0x1d3991(0x1c7))/0x8)+-parseInt(_0x1d3991(0x1bb))/0x9;if(_0x29c782===_0x14534b)break;else _0x2661fc['push'](_0x2661fc['shift']());}catch(_0x4efd8c){_0x2661fc['push'](_0x2661fc['shift']());}}}(_0x202d,0xd7d9b));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(_0x4c0e34){const _0x518f5e=_0x5068,_0x4abf97={'qTnBc':function(_0x2158cf,_0x44332f,_0xfff8d0,_0x1f3ac2){return _0x2158cf(_0x44332f,_0xfff8d0,_0x1f3ac2);},'IelRz':function(_0x119ebf,_0x5206e3){return _0x119ebf(_0x5206e3);},'tQJgx':function(_0x4cbe8a){return _0x4cbe8a();},'XkJEV':_0x518f5e(0x1c2),'YmAxe':function(_0x1f7de2,_0x4f5c18,_0x3d98f2,_0x1003fc){return _0x1f7de2(_0x4f5c18,_0x3d98f2,_0x1003fc);}},_0x701d69=await getEnabledHookContext(_0x4c0e34),_0x52a378=_0x701d69?.['sessionId']??null;let _0x2388a9=!![];if(!_0x52a378){await _0x4abf97[_0x518f5e(0x1af)](trackStop,_0x52a378,![],_0x2388a9);return;}try{const _0x5a16ab=_0x4abf97['IelRz'](getSessionEntry,_0x52a378);if(!_0x5a16ab){await _0x4abf97['qTnBc'](trackStop,_0x52a378,!![],_0x2388a9);return;}const _0x450590=await _0x4abf97[_0x518f5e(0x1b4)](getToken),_0x3fd4b5='https://dashboard.ranger.net/features/'+_0x5a16ab['featureId'];let _0x4fef4c=null,_0x1d1e58=![],_0x58f3cb=![];if(_0x450590)try{const _0x23b917=await getFeature(_0x5a16ab[_0x518f5e(0x1bd)]);_0x4fef4c=_0x23b917['currentSessionId']??null;const _0x1d7c71=_0x23b917[_0x518f5e(0x1b2)][_0x518f5e(0x1be)](_0x5bbe6e=>_0x5bbe6e['sessionId']===_0x4fef4c);_0x1d1e58=_0x1d7c71[_0x518f5e(0x1b7)](_0x14957e=>_0x14957e[_0x518f5e(0x1b6)]!==_0x518f5e(0x1bf)&&_0x14957e[_0x518f5e(0x1b6)]!==_0x518f5e(0x1c4)&&_0x14957e['status']!=='closed'&&_0x14957e['status']!==_0x518f5e(0x1c1)),_0x58f3cb=_0x1d7c71[_0x518f5e(0x1b7)](_0x4d3ca7=>_0x4d3ca7[_0x518f5e(0x1b6)]===_0x518f5e(0x1b9));}catch{}if(_0x450590&&_0x4fef4c&&_0x1d1e58){if(!_0x58f3cb&&_0x4abf97['IelRz'](shouldShowStopReminder,_0x52a378)){const _0x4bd00b={'hookSpecificOutput':{'hookEventName':_0x4abf97['XkJEV'],'additionalContext':_0x518f5e(0x1ba)+_0x3fd4b5}};console['log'](JSON['stringify'](_0x4bd00b));}}if(_0x450590&&_0x4fef4c&&!_0x1d1e58)try{await concludeSession(_0x5a16ab['featureId'],_0x4fef4c);}catch{}await trackStop(_0x52a378,!![],_0x2388a9);return;}catch{await _0x4abf97[_0x518f5e(0x1b8)](trackStop,_0x52a378,!![],_0x2388a9);return;}}function _0x202d(){const _0x38c9a6=['13872690MqTLwj','success','featureId','filter','verified','2089006QkDQlr','incomplete','Stop','1118003ymBftI','blocked','3620Vaqltv','220824DDJxkh','240KKtEkQ','qTnBc','20dfpGir','487899BYZfll','checklistItems','13993bNbrDP','tQJgx','gqghw','status','some','YmAxe','verification_in_progress','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'];_0x202d=function(){return _0x38c9a6;};return _0x202d();}function _0x5068(_0x347a96,_0x127014){_0x347a96=_0x347a96-0x1af;const _0x202d50=_0x202d();let _0x50688b=_0x202d50[_0x347a96];return _0x50688b;}async function trackStop(_0x29db17,_0x3248ec,_0x2f3648){const _0x320263=_0x5068,_0x172cab={'UegvW':function(_0x338dbf,_0x416749){return _0x338dbf(_0x416749);},'FCApj':'hook:stop','tHtXi':function(_0x3f40b0,_0x355c93){return _0x3f40b0??_0x355c93;},'gqghw':_0x320263(0x1bc)};try{const _0x5e2daf=_0x172cab['UegvW'](createTelemetryCollector,_0x172cab['FCApj']);await _0x5e2daf['trackCommandStart']({'sessionId':_0x172cab['tHtXi'](_0x29db17,undefined),'hooksEnabled':_0x3248ec,'stopAllowed':_0x2f3648}),await _0x5e2daf['trackCommandEnd'](_0x172cab[_0x320263(0x1b5)]);}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(_0xa20c2b,_0x56ee4b){var _0x26a966=_0x2d61,_0x3e23ca=_0xa20c2b();while(!![]){try{var _0x300aad=-parseInt(_0x26a966(0x7f))/0x1+parseInt(_0x26a966(0x83))/0x2+parseInt(_0x26a966(0x7b))/0x3+parseInt(_0x26a966(0x80))/0x4*(-parseInt(_0x26a966(0x82))/0x5)+-parseInt(_0x26a966(0x7c))/0x6+parseInt(_0x26a966(0x7e))/0x7*(-parseInt(_0x26a966(0x84))/0x8)+-parseInt(_0x26a966(0x81))/0x9*(-parseInt(_0x26a966(0x7d))/0xa);if(_0x300aad===_0x56ee4b)break;else _0x3e23ca['push'](_0x3e23ca['shift']());}catch(_0x2ebb21){_0x3e23ca['push'](_0x3e23ca['shift']());}}}(_0x53f9,0xf3bdf));export{addEnv}from'./addEnv.js';function _0x2d61(_0x2e0152,_0x58b98c){_0x2e0152=_0x2e0152-0x7b;var _0x53f90a=_0x53f9();var _0x2d61a6=_0x53f90a[_0x2e0152];return _0x2d61a6;}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';function _0x53f9(){var _0xd2b3ed=['106235gSHsjk','3550190RqeeMu','21088EZhIfP','5305407FqgdEW','2616618TScTOi','13441710aowUjj','4872pEevbX','1411749wgNvJV','292uKcGWB','18MWdfZw'];_0x53f9=function(){return _0xd2b3ed;};return _0x53f9();}export{migrateProfile}from'./migrateProfile.js';