@ranger-testing/ranger-cli 3.1.6-alpha.4287155-52 → 3.1.6-alpha.aca5f9c-53

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 (87) 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 -1
  60. package/build/commands/utils/playwrightCli.js +1 -1
  61. package/build/commands/utils/profileMessages.js +1 -1
  62. package/build/commands/utils/profileSetupBanner.js +1 -1
  63. package/build/commands/utils/projectsConfig.js +1 -1
  64. package/build/commands/utils/rangerConfig.js +1 -1
  65. package/build/commands/utils/rangerRoot.js +1 -1
  66. package/build/commands/utils/rangerwrightCli.js +1 -1
  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/scenarioOriginCheck.js +1 -1
  71. package/build/commands/utils/sessionCache.js +1 -1
  72. package/build/commands/utils/settings.js +1 -1
  73. package/build/commands/utils/skillContent.js +1 -1
  74. package/build/commands/utils/skills.js +1 -1
  75. package/build/commands/utils/stitchWebmFiles.js +1 -1
  76. package/build/commands/utils/telemetry.js +1 -1
  77. package/build/commands/utils/tokenRefresh.js +1 -1
  78. package/build/commands/utils/traceSnapshotMapper.js +1 -1
  79. package/build/commands/utils/tunnelClient.js +1 -1
  80. package/build/commands/utils/userApi.js +1 -1
  81. package/build/commands/utils/version.js +1 -1
  82. package/build/commands/verifyFeature.js +1 -1
  83. package/build/commands/verifyFeatureCli.js +1 -1
  84. package/build/commands/verifyFeatureNovaCli.js +1 -1
  85. package/build/commands/verifyFeatureRangerwrightCli.js +1 -1
  86. package/build/skills/ranger/SKILL.md +1 -0
  87. package/package.json +1 -1
@@ -1 +1 @@
1
- const _0x4901ae=_0x11d4;(function(_0x423417,_0x3f71fc){const _0x52310e=_0x11d4,_0x2c9f64=_0x423417();while(!![]){try{const _0x5b73df=-parseInt(_0x52310e(0xfc))/0x1*(parseInt(_0x52310e(0x145))/0x2)+-parseInt(_0x52310e(0xc0))/0x3*(-parseInt(_0x52310e(0x176))/0x4)+-parseInt(_0x52310e(0xfe))/0x5+parseInt(_0x52310e(0xf9))/0x6*(-parseInt(_0x52310e(0xe2))/0x7)+parseInt(_0x52310e(0xeb))/0x8*(parseInt(_0x52310e(0x153))/0x9)+parseInt(_0x52310e(0xba))/0xa*(parseInt(_0x52310e(0x15f))/0xb)+-parseInt(_0x52310e(0xe6))/0xc*(-parseInt(_0x52310e(0xdb))/0xd);if(_0x5b73df===_0x3f71fc)break;else _0x2c9f64['push'](_0x2c9f64['shift']());}catch(_0x5256ad){_0x2c9f64['push'](_0x2c9f64['shift']());}}}(_0x5e02,0x84d56));import{readFile,writeFile,mkdir}from'fs/promises';import{join}from'path';import{existsSync}from'fs';import{execSync}from'child_process';import _0x23c83d 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 _0x5e02(){const _0x54f188=['version','filter','in_progress','gltHU','No\x20active\x20session\x20for\x20this\x20feature\x20review.','xojjC','pwYox','\x1b[0m','toFixed','\x20\x20\x20\x20\x20ID:\x20','AgnnO','dashboardUrl','limit','BBxhQ','\x20\x20\x20ID:\x20','\x0aAvailable\x20scenarios:','\x20\x20\x20','Please\x20finish\x20your\x20review\x20first:','\x20scenarios.','\x20\x20Expected\x20flow:','includeDeleted','ZYvEc','\x20Session\x20','any','map','sgnll','pendingItems','Scenario\x20','MrKYb','location','\x0a✅\x20Report\x20generated:\x20','push','\x20\x20\x20Created:\x20','kdJFW','\x20\x20\x20Description:\x20','toLocaleDateString','storage','/api/v1/mcp/browser-sessions/','\x20>\x20','\x0a❌\x20Invalid\x20scenario\x20number(s):\x20','pipe','RjdHR','wOpoF','totalCount','gitRepoUrl','neSCg','ctpLk','QXMRX','emMYM','WvQtR','OsCYj','incompleteReason','\x20in\x20progress','\x20concluded.','XCJNe','\x1b[1m','ILCaN','GfVWG','MPmnO','unaddressedComments','EZpob','\x20\x20\x20To\x20restore\x20it,\x20run:\x20ranger\x20restore\x20','verification_in_progress','stats','domRef','isTTY','\x20\x20\x20▶️\x20Started\x20session\x20','FxcfM','32yopUHN','VinMJ','exit','yYzUa','xLPRb','Bclno','incomplete','PsEgJ','round','fKeUr','canceledReason','GWItq',':\x20\x22','assetUrl','9POLTok','No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','selector','textContent','ZQXdo','incompleteItems','\x0a❌\x20All\x20scenarios\x20were\x20excluded.','\x20blocked','log','/artifacts/','iDLpn','.md','9193492fMXMXz','HSHAc','arrayBuffer','write','canonicalFlow','ikpWV','scenarios','createdAt','stringify','ZlOhd','latestReview','\x20\x20\x20Completed:\x20','\x0a🗑️\x20\x20Deleted\x20feature\x20review:\x20','screenshot','xCPZb','completed','excludeScenarios','status','split','tFnIO','jvkff','ElQbc','wQRQd','5756UwUjYj','trim','aTPCj','feedback-images','XylBz','ready','MnvWU','\x20at\x20[','WrBly','timing','submittedAt','\x20\x20\x20\x20\x20📷\x20Screenshot:\x20','length','DrAvF','spatial','CLAUDE_SESSION_ID','completedAt','authorName','blockedItems','PCCdL','notes','RANGER_TEST_USERNAME','wcLBJ','gitBranch','github.com/','\x20scenario(s).','EALvP','blockedReason','ISNLh','sessionId','10kisTYi','Tdibg','rjBec','verified','AVtLJ','error','225cFLtPz','verificationInProgressItems','env','assetType','\x0aCreating\x20feature\x20review...','active-feature.txt','short','...','\x0a✅\x20Session\x20is\x20already\x20completed.','replace','approved','\x20/\x20','Next\x20page:\x20ranger\x20list\x20--offset\x20','prompt','toLocaleString','\x20(v','Step\x20','\x20\x20\x20Updated\x20branch\x20to:\x20','join','currentBranch','Run:\x20ranger\x20create\x20\x22<name>\x22\x20to\x20create\x20a\x20new\x20feature\x20review','closed','Lzord','browserSessionId','\x20\x20\x20\x20\x20📍\x20Annotation:\x20point\x20at\x20(','dzkNo','Ubgem','3159338PCYFIU','WtBsW','ahwVJ','terminalReason','pSFMj','\x0a\x20\x20\x20Scenarios:','checklistItems','18151sKgLsQ','\x0a❌\x20Cannot\x20edit\x20scenario:\x20feature\x20review\x20has\x20an\x20active\x20review.','reports','\x0a✅\x20Restored\x20feature\x20review:\x20','48FmUzHR','clFco','name','srDPG','assets','1957800KJkWJg','nKDHa','.\x20Feature\x20review\x20has\x20','KDHVw','has','repeat','\x0a✅\x20Feature\x20review\x20created:\x20','\x20—\x20no\x20comments','description','No\x20scenarios\x20found.','No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.','scenario','\x20\x20\x20The\x20feature\x20review\x20is\x20now\x20ready\x20for\x20human\x20review\x20on\x20the\x20Ranger\x20dashboard.','items','1356FiIYzg','):\x20\x22','emjpk','44936KSNPCV','stdout','1557230KBjBVA','pop','find'];_0x5e02=function(){return _0x54f188;};return _0x5e02();}import{getEnvNames}from'./env.js';import{formatProfileRequiredMessage}from'./utils/profileMessages.js';import{listCloudProfiles}from'./utils/cloudProfile.js';const ACTIVE_FEATURE_FILE=_0x4901ae(0xc5),bold=_0x730cb0=>_0x4901ae(0x138)+_0x730cb0+_0x4901ae(0x108);function getGitRepoUrl(){const _0x179023=_0x4901ae,_0x5893c0={'AVtLJ':_0x179023(0x129)};try{const _0x18bb7c=execSync('git\x20remote\x20get-url\x20origin',{'encoding':'utf-8','stdio':[_0x5893c0['AVtLJ'],_0x5893c0['AVtLJ'],_0x5893c0[_0x179023(0xbe)]]})[_0x179023(0x177)]();return _0x18bb7c[_0x179023(0xc9)](/\.git$/,'')[_0x179023(0xc9)](/^git@github\.com:/,_0x179023(0xb4))['replace'](/^https?:\/\//,'');}catch{return undefined;}}function getGitBranch(){const _0x2ecd27=_0x4901ae,_0x133554={'FxcfM':function(_0x1bb690,_0x3231b4,_0x3cd96f){return _0x1bb690(_0x3231b4,_0x3cd96f);},'aTPCj':'git\x20rev-parse\x20--abbrev-ref\x20HEAD','emMYM':_0x2ecd27(0x129)};try{return _0x133554[_0x2ecd27(0x144)](execSync,_0x133554[_0x2ecd27(0x178)],{'encoding':'utf-8','stdio':[_0x133554[_0x2ecd27(0x131)],_0x133554['emMYM'],'pipe']})[_0x2ecd27(0x177)]();}catch{return undefined;}}export async function getActiveFeatureId(){const _0x496ea5=_0x4901ae,_0x1fc231={'PsEgJ':function(_0x50179e,_0x130ed7){return _0x50179e(_0x130ed7);},'bwzXe':function(_0x1d97e6,_0x3f16b0,_0x4a1a73){return _0x1d97e6(_0x3f16b0,_0x4a1a73);}},_0x3a5b44=join(getRangerDir(),ACTIVE_FEATURE_FILE);if(!_0x1fc231[_0x496ea5(0x14c)](existsSync,_0x3a5b44))return null;try{const _0x4f3ac4=await _0x1fc231['bwzXe'](readFile,_0x3a5b44,'utf-8');return _0x4f3ac4[_0x496ea5(0x177)]()||null;}catch{return null;}}async function setActiveFeatureId(_0x2edf34){const _0x3a3ce9=_0x4901ae,_0x13aeb5={'MPmnO':function(_0x504afd,_0x452cc9,_0x2c8a1c){return _0x504afd(_0x452cc9,_0x2c8a1c);},'RZIrH':'utf-8'},_0x5196cc=getRangerDir(),_0x3e512e=_0x13aeb5[_0x3a3ce9(0x13b)](join,_0x5196cc,ACTIVE_FEATURE_FILE);!existsSync(_0x5196cc)&&await mkdir(_0x5196cc,{'recursive':!![]}),await writeFile(_0x3e512e,_0x2edf34,_0x13aeb5['RZIrH']);}function getProgressDisplay(_0xf8e34b){const _0x27e402=_0x4901ae,_0x2065d5={'WazEm':function(_0x395d02,_0x3f7811){return _0x395d02-_0x3f7811;},'EALvP':function(_0x14e10c,_0x599b49){return _0x14e10c>_0x599b49;},'rjBec':function(_0x4840a9,_0x1db7cb){return _0x4840a9>_0x1db7cb;},'ahwVJ':function(_0x490010,_0x2bbe85){return _0x490010>_0x2bbe85;}},_0x3d8e49=_0xf8e34b['verifiedItems']||0x0,_0x423564=_0xf8e34b[_0x27e402(0xc1)]||0x0,_0x2ec7bb=_0xf8e34b[_0x27e402(0xae)]||0x0,_0x318e62=_0xf8e34b[_0x27e402(0x158)]||0x0,_0xf87932=_0xf8e34b[_0x27e402(0x11b)]||0x0,_0x36fc93=_0x3d8e49+_0x423564+_0x2ec7bb+_0x318e62+_0xf87932;if(_0x36fc93===0x0)return'-';const _0x17cbfe=0xa,_0x2f5073=Math[_0x27e402(0x14d)](_0x3d8e49/_0x36fc93*_0x17cbfe),_0x908b3='█'[_0x27e402(0xf0)](_0x2f5073)+'░'['repeat'](_0x2065d5['WazEm'](_0x17cbfe,_0x2f5073)),_0x6484cd=[];if(_0x2065d5[_0x27e402(0xb6)](_0x2ec7bb,0x0))_0x6484cd['push'](_0x2ec7bb+_0x27e402(0x15a));if(_0x2065d5[_0x27e402(0xbc)](_0x318e62,0x0))_0x6484cd[_0x27e402(0x120)](_0x318e62+'\x20incomplete');if(_0x423564>0x0)_0x6484cd['push'](_0x423564+_0x27e402(0x135));const _0x404663=_0x2065d5[_0x27e402(0xdd)](_0x6484cd[_0x27e402(0xa8)],0x0)?'\x20('+_0x6484cd[_0x27e402(0xd2)](',\x20')+')':'';return _0x908b3+'\x20'+_0x3d8e49+'/'+_0x36fc93+'\x20verified'+_0x404663;}function getCurrentSessionItems(_0x44213b,_0x3d099c){const _0x383df2=_0x4901ae;if(!_0x44213b['currentSessionId'])return _0x3d099c['filter'](_0x50afa5=>!_0x50afa5[_0x383df2(0xb9)]);return _0x3d099c[_0x383df2(0x102)](_0x3c9005=>_0x3c9005['sessionId']===_0x44213b['currentSessionId']||!_0x3c9005[_0x383df2(0xb9)]);}function displayFeature(_0x3f0f31,_0x18a7b4){const _0x320220=_0x4901ae,_0x5410da={'QXMRX':function(_0x315141,_0x13ffa6){return _0x315141>_0x13ffa6;},'ztnYF':_0x320220(0xe0),'emjpk':_0x320220(0xd5),'gEXBm':function(_0x594548,_0x10e9b9){return _0x594548===_0x10e9b9;},'AgnnO':_0x320220(0xbd),'wQRQd':function(_0x40face,_0x56dbac){return _0x40face===_0x56dbac;},'pwYox':_0x320220(0x13f),'WtBsW':function(_0x447bd7,_0x11ad35){return _0x447bd7>_0x11ad35;},'HSHAc':function(_0x42b026,_0x2094b5){return _0x42b026!==_0x2094b5;},'MIncW':'blocked','OsCYj':_0x320220(0x14b),'eodWA':_0x320220(0xca)};console[_0x320220(0x15b)]('\x0a'+_0x3f0f31['name']+'\x20('+_0x3f0f31[_0x320220(0x10c)]+')');_0x3f0f31[_0x320220(0x140)]&&console['log']('\x20\x20\x20Progress:\x20'+getProgressDisplay(_0x3f0f31[_0x320220(0x140)]));_0x3f0f31['description']&&console[_0x320220(0x15b)](_0x320220(0x123)+_0x3f0f31['description']);_0x3f0f31['gitRepoUrl']&&console[_0x320220(0x15b)]('\x20\x20\x20Repository:\x20'+_0x3f0f31['gitRepoUrl']);_0x3f0f31[_0x320220(0xb3)]&&console['log']('\x20\x20\x20Branch:\x20'+_0x3f0f31[_0x320220(0xb3)]);console['log']('\x20\x20\x20Created:\x20'+new Date(_0x3f0f31['createdAt'])['toLocaleString']());_0x3f0f31[_0x320220(0xac)]&&console[_0x320220(0x15b)](_0x320220(0x16a)+new Date(_0x3f0f31[_0x320220(0xac)])['toLocaleString']());if(_0x18a7b4&&_0x5410da['QXMRX'](_0x18a7b4[_0x320220(0xa8)],0x0)){console[_0x320220(0x15b)](_0x5410da['ztnYF']);for(let _0x4343b0=0x0;_0x4343b0<_0x18a7b4['length'];_0x4343b0++){const _0x1e3c56=_0x18a7b4[_0x4343b0];let _0x57838f;if(_0x1e3c56[_0x320220(0x170)]===_0x5410da['emjpk']&&_0x5410da['gEXBm'](_0x1e3c56[_0x320220(0xde)],_0x320220(0xca)))_0x57838f='✅';else{if(_0x1e3c56[_0x320220(0x170)]===_0x5410da[_0x320220(0x10b)])_0x57838f='🟢';else{if(_0x5410da['gEXBm'](_0x1e3c56['status'],'incomplete'))_0x57838f='🟠';else{if(_0x1e3c56['status']==='blocked')_0x57838f='🛑';else{if(_0x1e3c56['status']===_0x5410da[_0x320220(0xfb)])_0x57838f='⛔';else _0x5410da['wQRQd'](_0x1e3c56[_0x320220(0x170)],_0x5410da[_0x320220(0x107)])?_0x57838f='⏳':_0x57838f='⬜';}}}}const _0x44ca39=_0x5410da[_0x320220(0x130)](_0x1e3c56['version'],0x1)?'\x20(v'+_0x1e3c56[_0x320220(0x101)]+')':'',_0x48905d=_0x5410da[_0x320220(0xdc)](_0x1e3c56['version'],0x1)&&_0x1e3c56['parentItemId']&&_0x1e3c56[_0x320220(0x170)]!=='closed'&&_0x5410da[_0x320220(0x160)](_0x1e3c56['status'],_0x5410da['AgnnO'])?'\x20[has\x20reviewer\x20feedback]':'';console['log'](_0x320220(0x111)+(_0x4343b0+0x1)+'.\x20'+_0x57838f+'\x20'+_0x1e3c56['description']+_0x44ca39+_0x48905d);_0x1e3c56[_0x320220(0x170)]===_0x5410da['MIncW']&&_0x1e3c56[_0x320220(0xb7)]&&console[_0x320220(0x15b)]('\x20\x20\x20\x20\x20\x20Blocked:\x20'+_0x1e3c56[_0x320220(0xb7)]);_0x5410da[_0x320220(0x175)](_0x1e3c56['status'],_0x5410da[_0x320220(0x133)])&&_0x1e3c56['incompleteReason']&&console[_0x320220(0x15b)]('\x20\x20\x20\x20\x20\x20Incomplete:\x20'+_0x1e3c56[_0x320220(0x134)]);if(_0x5410da['gEXBm'](_0x1e3c56[_0x320220(0x170)],_0x320220(0xd5))&&_0x1e3c56[_0x320220(0xde)]===_0x5410da['eodWA'])console[_0x320220(0x15b)]('\x20\x20\x20\x20\x20\x20Approved');else _0x1e3c56['status']===_0x320220(0xd5)&&_0x1e3c56[_0x320220(0x14f)]&&console['log']('\x20\x20\x20\x20\x20\x20Cancelled:\x20'+_0x1e3c56[_0x320220(0x14f)]);}}}export async function featureCreate(_0x168f30,_0x75fb48){const _0x27031f=_0x4901ae,_0x509530={'VinMJ':function(_0x41c5aa){return _0x41c5aa();},'GWItq':function(_0x25dca3,_0x3bed99,_0x2198c0){return _0x25dca3(_0x3bed99,_0x2198c0);}},{envNames:_0x424217}=await getEnvNames();if(_0x424217['length']===0x0&&!process['env'][_0x27031f(0xb1)]){let _0x15ea2c=0x0;try{_0x15ea2c=(await listCloudProfiles())['length'];}catch{_0x15ea2c=0x1;}_0x15ea2c===0x0&&console['warn']('\x0a'+formatProfileRequiredMessage(_0x3f4ed8=>bold(_0x3f4ed8)));}const _0x8bbf47=_0x75fb48[_0x27031f(0x165)]?_0x75fb48['scenarios'][_0x27031f(0x119)](_0x43427d=>_0x43427d['trim']()):[],_0x1eae66=_0x509530[_0x27031f(0x146)](getGitRepoUrl),_0x368506=getGitBranch();console[_0x27031f(0x15b)](_0x27031f(0xc4));const _0x394d63=await createFeature({'name':_0x168f30,'description':_0x75fb48[_0x27031f(0xf3)],'checklist':_0x8bbf47,'gitRepoUrl':_0x1eae66,'gitBranch':_0x368506});await setActiveFeatureId(_0x394d63['id']),await tryStartCurrentSession(_0x394d63['id']);const _0x34436c=process[_0x27031f(0xc2)]['CLAUDE_SESSION_ID'];_0x34436c&&_0x509530[_0x27031f(0x150)](registerSession,_0x34436c,_0x394d63['id']),console['log'](_0x27031f(0xf1)+_0x394d63['id']),displayFeature(_0x394d63,_0x394d63[_0x27031f(0xe1)]),console[_0x27031f(0x15b)]('\x0a➡️\x20\x20Set\x20as\x20active\x20feature\x20review');}export async function featureList(_0x5abf7d){const _0x2aa7b1=_0x4901ae,_0x1ceac8={'TDZNR':function(_0x33f21f){return _0x33f21f();},'wOpoF':function(_0x446b7e,_0x24a9c2){return _0x446b7e(_0x24a9c2);},'dzkNo':function(_0x5a9a66,_0x4c8ead){return _0x5a9a66===_0x4c8ead;},'eSKWK':'\x0aNo\x20feature\x20reviews\x20found.','RjdHR':function(_0x45b21e,_0x52d91f){return _0x45b21e>_0x52d91f;},'EZqhd':function(_0x1a1b82,_0x6fc142){return _0x1a1b82<_0x6fc142;},'pzoHG':function(_0x3c5858,_0x5ad8ca){return _0x3c5858!==_0x5ad8ca;},'XylBz':'\x20--include-deleted'},_0x509312={'limit':_0x5abf7d['limit']??0xa,'offset':_0x5abf7d['offset']??0x0,'includeDeleted':_0x5abf7d[_0x2aa7b1(0x115)]};_0x5abf7d[_0x2aa7b1(0xd3)]&&(_0x509312[_0x2aa7b1(0x12d)]=getGitRepoUrl(),_0x509312[_0x2aa7b1(0xb3)]=_0x1ceac8['TDZNR'](getGitBranch));const _0x41bcf3=await _0x1ceac8[_0x2aa7b1(0x12b)](listFeatures,_0x509312);if(_0x1ceac8[_0x2aa7b1(0xd9)](_0x41bcf3['items'][_0x2aa7b1(0xa8)],0x0)){console['log'](_0x1ceac8['eSKWK']);return;}const _0x8f1cbf=_0x1ceac8[_0x2aa7b1(0x12a)](_0x41bcf3[_0x2aa7b1(0x12c)],_0x41bcf3['items']['length'])?'Showing\x20'+_0x41bcf3['items'][_0x2aa7b1(0xa8)]+'\x20of\x20'+_0x41bcf3[_0x2aa7b1(0x12c)]:_0x41bcf3['totalCount']+'\x20feature\x20review(s)\x20found';console[_0x2aa7b1(0x15b)]('\x0a'+_0x8f1cbf+':\x0a');for(const _0x2747c9 of _0x41bcf3[_0x2aa7b1(0xf8)]){const _0x374c7d='5|1|2|4|3|0'['split']('|');let _0x24e596=0x0;while(!![]){switch(_0x374c7d[_0x24e596++]){case'0':console[_0x2aa7b1(0x15b)]('');continue;case'1':console[_0x2aa7b1(0x15b)](_0x2aa7b1(0x10f)+_0x2747c9['id']);continue;case'2':_0x2747c9['stats']&&console['log']('\x20\x20\x20Progress:\x20'+_0x1ceac8[_0x2aa7b1(0x12b)](getProgressDisplay,_0x2747c9[_0x2aa7b1(0x140)]));continue;case'3':console['log'](_0x2aa7b1(0x121)+new Date(_0x2747c9[_0x2aa7b1(0x166)])[_0x2aa7b1(0x124)]());continue;case'4':_0x2747c9[_0x2aa7b1(0xb3)]&&console['log']('\x20\x20\x20Branch:\x20'+_0x2747c9[_0x2aa7b1(0xb3)]);continue;case'5':console[_0x2aa7b1(0x15b)](''+_0x2747c9['name']);continue;}break;}}const _0x1ab1ee=_0x509312[_0x2aa7b1(0x10d)]??0xa,_0x599745=(_0x509312['offset']??0x0)+_0x41bcf3['items'][_0x2aa7b1(0xa8)];if(_0x1ceac8['EZqhd'](_0x599745,_0x41bcf3[_0x2aa7b1(0x12c)])){const _0x51de00=_0x1ceac8['pzoHG'](_0x1ab1ee,0xa)?'\x20--limit\x20'+_0x1ab1ee:'',_0x24599d=_0x5abf7d[_0x2aa7b1(0xd3)]?'\x20--current-branch':'',_0xb6bd8f=_0x5abf7d['includeDeleted']?_0x1ceac8[_0x2aa7b1(0x17a)]:'';console['log'](_0x2aa7b1(0xcc)+_0x599745+_0x51de00+_0x24599d+_0xb6bd8f);}}export async function featureShow(_0x3cac1e){const _0xd50a28=_0x4901ae,_0x279703={'lwljK':function(_0x320778){return _0x320778();},'Tdibg':_0xd50a28(0x154),'BkCYC':function(_0x42b90b,_0x1a151d){return _0x42b90b(_0x1a151d);}},_0x21ff7d=_0x3cac1e||await _0x279703['lwljK'](getActiveFeatureId);if(!_0x21ff7d)throw new Error(_0x279703[_0xd50a28(0xbb)]);const _0x139eea=await _0x279703['BkCYC'](getFeature,_0x21ff7d);displayFeature(_0x139eea,_0x139eea['checklistItems']);}function _0x11d4(_0x43403a,_0x11a0f2){_0x43403a=_0x43403a-0xa8;const _0x5e0233=_0x5e02();let _0x11d448=_0x5e0233[_0x43403a];return _0x11d448;}export async function featureResume(_0x100c45){const _0x454e8d=_0x4901ae,_0x292fd5={'Ubgem':function(_0x4d365a,_0x3c6c5e){return _0x4d365a(_0x3c6c5e);},'uuCIH':function(_0x2115ae,_0x37e380,_0x569d79){return _0x2115ae(_0x37e380,_0x569d79);},'ZlOhd':function(_0x3cb722,_0xa03f90,_0x4c52b9){return _0x3cb722(_0xa03f90,_0x4c52b9);},'hRUOu':function(_0x5eb599){return _0x5eb599();},'BzHzt':function(_0xe07c73,_0x3d96c2){return _0xe07c73||_0x3d96c2;},'qsLPu':_0x454e8d(0x118),'jvkff':function(_0x29d5a2,_0x1626ec){return _0x29d5a2===_0x1626ec;},'yXHLM':'selected','clFco':'Multiple\x20feature\x20reviews\x20found.\x20Select\x20one:','EZpob':function(_0x270e90,_0x58541f,_0x5856e1){return _0x270e90(_0x58541f,_0x5856e1);}};if(_0x100c45){const _0x3c830a=await _0x292fd5['Ubgem'](getFeature,_0x100c45);await _0x292fd5[_0x454e8d(0xda)](setActiveFeatureId,_0x3c830a['id']);const _0x25c8c6=getGitBranch();_0x25c8c6&&_0x25c8c6!==_0x3c830a[_0x454e8d(0xb3)]&&(await _0x292fd5['uuCIH'](updateFeature,_0x3c830a['id'],{'gitBranch':_0x25c8c6}),console[_0x454e8d(0x15b)](_0x454e8d(0xd1)+_0x25c8c6));console[_0x454e8d(0x15b)]('\x0a✅\x20Resumed\x20feature\x20review:\x20'+_0x3c830a[_0x454e8d(0xe8)]+'\x20('+_0x3c830a['id']+')'),await tryStartCurrentSession(_0x3c830a['id']);const _0x1ac6af=process[_0x454e8d(0xc2)][_0x454e8d(0xab)];_0x1ac6af&&_0x292fd5['uuCIH'](registerSession,_0x1ac6af,_0x3c830a['id']);_0x292fd5[_0x454e8d(0x168)](displayFeature,_0x3c830a,_0x3c830a['checklistItems']),await _0x292fd5['Ubgem'](printFeedbackNudge,_0x3c830a['id']);return;}const _0x597826=_0x292fd5['hRUOu'](getGitRepoUrl),_0x2458ca=getGitBranch();if(!_0x597826&&!_0x2458ca)throw new Error('Not\x20in\x20a\x20git\x20repository.');console[_0x454e8d(0x15b)]('\x0aSearching\x20for\x20feature\x20reviews\x20matching:\x20'+_0x292fd5['BzHzt'](_0x597826,'any')+_0x454e8d(0xcb)+(_0x2458ca||_0x292fd5['qsLPu'])+_0x454e8d(0xc7));const _0x4c2e51=await _0x292fd5[_0x454e8d(0xda)](listFeatures,{'gitRepoUrl':_0x597826,'gitBranch':_0x2458ca}),_0x3e18c6=_0x4c2e51['items']['filter'](_0x2aca89=>_0x2aca89['status']?_0x2aca89[_0x454e8d(0x170)]!==_0x454e8d(0xbd):!_0x2aca89['completedAt']);if(_0x292fd5[_0x454e8d(0x173)](_0x3e18c6['length'],0x0)){console[_0x454e8d(0x15b)]('\x0aNo\x20matching\x20active\x20feature\x20reviews\x20found.'),console[_0x454e8d(0x15b)](_0x454e8d(0xd4));return;}let _0x380f65;if(_0x3e18c6['length']===0x1)_0x380f65=_0x3e18c6[0x0];else{const _0x21b007=process['stdin']['isTTY']&&process['stdout'][_0x454e8d(0x142)];if(!_0x21b007){console['log']('\x0aNon-interactive\x20mode\x20detected.\x20Multiple\x20feature\x20reviews\x20found:');for(const _0xbc0879 of _0x3e18c6){console['log']('\x20\x20'+_0xbc0879[_0x454e8d(0xe8)]),console['log'](_0x454e8d(0x10a)+_0xbc0879['id']),_0xbc0879['stats']&&console['log']('\x20\x20\x20\x20\x20Progress:\x20'+_0x292fd5[_0x454e8d(0xda)](getProgressDisplay,_0xbc0879['stats'])),_0xbc0879[_0x454e8d(0xb3)]&&console['log']('\x20\x20\x20\x20\x20Branch:\x20'+_0xbc0879[_0x454e8d(0xb3)]);}throw new Error('Please\x20specify\x20the\x20feature\x20review\x20ID:\x20ranger\x20resume\x20<id>');}const {selected:_0x57982a}=await _0x23c83d[_0x454e8d(0xcd)]([{'type':'list','name':_0x292fd5['yXHLM'],'message':_0x292fd5[_0x454e8d(0xe7)],'choices':_0x3e18c6['map'](_0x155daa=>({'name':_0x155daa[_0x454e8d(0xe8)]+'\x20('+_0x155daa['id']+')','value':_0x155daa['id']}))}]);_0x380f65=_0x3e18c6[_0x454e8d(0x100)](_0xe7a79f=>_0xe7a79f['id']===_0x57982a);}await setActiveFeatureId(_0x380f65['id']);_0x2458ca&&_0x2458ca!==_0x380f65['gitBranch']&&(await updateFeature(_0x380f65['id'],{'gitBranch':_0x2458ca}),console[_0x454e8d(0x15b)]('\x20\x20\x20Updated\x20branch\x20to:\x20'+_0x2458ca));console['log']('\x0a✅\x20Resumed\x20feature\x20review:\x20'+_0x380f65[_0x454e8d(0xe8)]+'\x20('+_0x380f65['id']+')'),await tryStartCurrentSession(_0x380f65['id']);const _0x4ff5b5=await _0x292fd5['Ubgem'](getFeature,_0x380f65['id']),_0x248577=process['env'][_0x454e8d(0xab)];_0x248577&&_0x292fd5[_0x454e8d(0x13d)](registerSession,_0x248577,_0x4ff5b5['id']),displayFeature(_0x4ff5b5,_0x4ff5b5['checklistItems']),await _0x292fd5['Ubgem'](printFeedbackNudge,_0x4ff5b5['id']);}async function printFeedbackNudge(_0x5d4674){const _0x335ba5=_0x4901ae,_0xf8e3a2={'ISNLh':function(_0xc938d3,_0x13e6c5){return _0xc938d3(_0x13e6c5);},'nKDHa':function(_0x134cd7,_0x500cb3,_0x3a2c28){return _0x134cd7(_0x500cb3,_0x3a2c28);},'jfoTX':function(_0x4a54c0,_0x3a99a8){return _0x4a54c0>_0x3a99a8;}};try{const {items:_0x3280d4}=await _0xf8e3a2[_0x335ba5(0xb8)](getActionItems,_0x5d4674);let _0x2fbe8c=0x0,_0x5c6e76=0x0;for(const _0x4132d7 of _0x3280d4){const _0x2f4e7f=await _0xf8e3a2[_0x335ba5(0xec)](getItemFeedback,_0x5d4674,_0x4132d7['id']);_0x2f4e7f[_0x335ba5(0x13c)][_0x335ba5(0xa8)]>0x0&&(_0x2fbe8c+=_0x2f4e7f['unaddressedComments'][_0x335ba5(0xa8)],_0x5c6e76++);}_0xf8e3a2['jfoTX'](_0x2fbe8c,0x0)&&(console['log']('\x0a⚠️\x20\x20'+_0x2fbe8c+'\x20unaddressed\x20reviewer\x20comment(s)\x20across\x20'+_0x5c6e76+_0x335ba5(0xb5)),console['log']('\x20\x20\x20Run\x20`ranger\x20get-review`\x20to\x20see\x20what\x20needs\x20to\x20be\x20fixed.'));}catch{}}async function tryStartCurrentSession(_0x2a9f59){const _0x12a8cf=_0x4901ae;try{const {sessions:_0x5e7b0a}=await listFeatureSessions(_0x2a9f59),_0x2b20b8=_0x5e7b0a['find'](_0x5caade=>_0x5caade['status']===_0x12a8cf(0x17b));_0x2b20b8&&(await startSession(_0x2a9f59,_0x2b20b8['id']),console['log'](_0x12a8cf(0x143)+_0x2b20b8['iteration']));}catch{}}export async function featureReport(_0x44bb25,_0x4a197f){const _0x1133c7=_0x4901ae,_0x37bc8a={'MrKYb':'\x0aGenerating\x20report...','nsXeE':function(_0x5341da,_0x303160,_0x2a9527){return _0x5341da(_0x303160,_0x2a9527);},'DrAvF':function(_0x4b04bf,_0x2ede3d,_0x37be3f,_0xd1254){return _0x4b04bf(_0x2ede3d,_0x37be3f,_0xd1254);},'YqTlS':_0x1133c7(0xe4),'xCPZb':function(_0x59c3e2,_0x12c28e){return _0x59c3e2(_0x12c28e);},'Lzord':'utf-8'},_0x32cfe1=_0x44bb25||await getActiveFeatureId();if(!_0x32cfe1)throw new Error(_0x1133c7(0xf5));console['log'](_0x37bc8a[_0x1133c7(0x11d)]);const _0x3c0dd1=await _0x37bc8a['nsXeE'](getFeatureReportMarkdown,_0x32cfe1,{'style':_0x4a197f['style']}),_0x3846f5=_0x4a197f['output']||_0x37bc8a['DrAvF'](join,getRangerDir(),_0x37bc8a['YqTlS'],_0x32cfe1+_0x1133c7(0x15e)),_0x9d852f=_0x37bc8a['nsXeE'](join,_0x3846f5,'..');!_0x37bc8a[_0x1133c7(0x16d)](existsSync,_0x9d852f)&&await _0x37bc8a['nsXeE'](mkdir,_0x9d852f,{'recursive':!![]}),await _0x37bc8a[_0x1133c7(0xa9)](writeFile,_0x3846f5,_0x3c0dd1,_0x37bc8a[_0x1133c7(0xd6)]),console['log'](_0x1133c7(0x11f)+_0x3846f5);}function getScenarioResult(_0x16a5fe){const _0x31e4df=_0x4901ae,_0x36f7ed={'UNNOW':function(_0x5e58f3,_0x22ba96){return _0x5e58f3===_0x22ba96;},'gkdWl':_0x31e4df(0x13f)};if(_0x36f7ed['UNNOW'](_0x16a5fe[_0x31e4df(0x170)],_0x31e4df(0xd5)))return _0x16a5fe['terminalReason']??'closed';if(_0x16a5fe[_0x31e4df(0x170)]===_0x36f7ed['gkdWl'])return'in_progress';return _0x16a5fe['status'];}function getScenarioRationale(_0x4b3ec0,_0x2a6015){const _0x25850c=_0x4901ae;if(_0x2a6015)return _0x2a6015;if(_0x4b3ec0['blockedReason'])return _0x4b3ec0[_0x25850c(0xb7)];if(_0x4b3ec0[_0x25850c(0x134)])return _0x4b3ec0['incompleteReason'];if(_0x4b3ec0['canceledReason'])return _0x4b3ec0['canceledReason'];if(_0x4b3ec0['notes'])return _0x4b3ec0[_0x25850c(0xb0)];return null;}export async function featureReportPrDescription(_0x408557,_0xee1db2){const _0x38b44f=_0x4901ae,_0x59b065={'CekOn':function(_0x54c8c9){return _0x54c8c9();},'MTCEH':function(_0x2a5fce,_0x46f1d9,_0x30dfe5){return _0x2a5fce(_0x46f1d9,_0x30dfe5);},'PnKrp':'\x0a❌\x20No\x20scenarios\x20found\x20to\x20include.','tFnIO':function(_0x588057,_0x525842){return _0x588057>_0x525842;},'xojjC':function(_0x4a186e,_0x3615b5){return _0x4a186e+_0x3615b5;},'iDLpn':function(_0x30c36b,_0x576f30){return _0x30c36b===_0x576f30;},'PCCdL':_0x38b44f(0x159),'CPKvw':function(_0xe736f9,_0x3e5d66,_0x49fe81,_0x50ac3f){return _0xe736f9(_0x3e5d66,_0x49fe81,_0x50ac3f);}},_0x3001ee=_0x408557||await _0x59b065['CekOn'](getActiveFeatureId);if(!_0x3001ee)throw new Error(_0x38b44f(0xf5));const _0x37cc43=await getFeature(_0x3001ee),_0x55caf2=_0x37cc43['checklistItems']||[],_0x1661de=_0x59b065['MTCEH'](getCurrentSessionItems,_0x37cc43,_0x55caf2);_0x1661de[_0x38b44f(0xa8)]===0x0&&(console[_0x38b44f(0xbf)](_0x59b065['PnKrp']),process['exit'](0x1));const _0x559910=_0xee1db2[_0x38b44f(0x16f)]??[],_0x29421f=_0x559910[_0x38b44f(0x102)](_0x264c5d=>!Number['isInteger'](_0x264c5d)||_0x264c5d<0x1||_0x264c5d>_0x1661de['length']);if(_0x59b065[_0x38b44f(0x172)](_0x29421f['length'],0x0)){console[_0x38b44f(0xbf)](_0x38b44f(0x128)+_0x29421f['join'](',\x20')),console[_0x38b44f(0x15b)]('\x0aAvailable\x20scenarios:');for(let _0x5380c8=0x0;_0x5380c8<_0x1661de[_0x38b44f(0xa8)];_0x5380c8++){console['log']('\x20\x20'+_0x59b065[_0x38b44f(0x106)](_0x5380c8,0x1)+'.\x20'+_0x1661de[_0x5380c8][_0x38b44f(0xf3)]);}process['exit'](0x1);}const _0x5a5e78=new Set(_0x559910[_0x38b44f(0x119)](_0x22cc96=>_0x22cc96-0x1)),_0x5655e8=_0x1661de[_0x38b44f(0x102)]((_0x3e876d,_0x161d7a)=>!_0x5a5e78[_0x38b44f(0xef)](_0x161d7a));_0x59b065[_0x38b44f(0x15d)](_0x5655e8[_0x38b44f(0xa8)],0x0)&&(console[_0x38b44f(0xbf)](_0x59b065[_0x38b44f(0xaf)]),process['exit'](0x1));if(_0xee1db2['json'])await _0x59b065['CPKvw'](outputJsonReport,_0x3001ee,_0x37cc43,_0x5655e8);else{const _0x236672=await getFeatureReportMarkdown(_0x3001ee,{'itemIds':_0x5655e8['map'](_0x4f25d1=>_0x4f25d1['id'])});process[_0x38b44f(0xfd)][_0x38b44f(0x162)](_0x236672['trimEnd']()+'\x0a');}}async function outputJsonReport(_0x5bf704,_0x51677c,_0x59a80d){const _0x56a380=_0x4901ae,_0x3e7e1b={'kdJFW':function(_0x7725be,_0x5f1321){return _0x7725be(_0x5f1321);},'srDPG':function(_0x507942,_0x2ec73e){return _0x507942>_0x2ec73e;},'ZYvEc':function(_0x23d493,_0xea3530,_0x39dfba){return _0x23d493(_0xea3530,_0x39dfba);},'lWokK':function(_0x108fbe,_0x21e6da){return _0x108fbe+_0x21e6da;}},_0x536b22=getApiBaseUrl(),_0x649504=await getFeatureReport(_0x5bf704),_0x101f75=new Map(_0x649504[_0x56a380(0xe1)]['map'](_0x296c8c=>[_0x296c8c['id'],_0x296c8c])),_0x1f38a9=await Promise['all'](_0x59a80d['map'](async _0x3cf74c=>{const _0x384f17=_0x56a380,_0x488e25=_0x101f75['get'](_0x3cf74c['id']),_0x4397cf=_0x488e25?.['linkedSession']??null;let _0x48d908=[];if(_0x3cf74c['browserSessionId'])try{const {steps:_0x198244}=await _0x3e7e1b[_0x384f17(0x122)](getBrowserSessionSteps,_0x3cf74c[_0x384f17(0xd7)]);_0x3e7e1b[_0x384f17(0xe9)](_0x198244['length'],0x0)&&(_0x48d908=_0x198244['map'](_0x298cef=>{const _0x45492b=_0x384f17,_0x3a104d=_0x298cef['assets']['find'](_0x3c4faf=>_0x3c4faf[_0x45492b(0xc3)]===_0x45492b(0x16c)&&_0x3c4faf[_0x45492b(0x17f)]==='after')??_0x298cef[_0x45492b(0xea)][_0x45492b(0x100)](_0x44f636=>_0x44f636['assetType']==='screenshot');let _0x48209a=null,_0x556a20=null;if(_0x3a104d){const _0x35bb5d=_0x3a104d[_0x45492b(0x125)][_0x45492b(0x11e)][_0x45492b(0x171)]('/')[_0x45492b(0xff)]();_0x48209a=_0x536b22+_0x45492b(0x126)+_0x3cf74c['browserSessionId']+_0x45492b(0x15c)+_0x35bb5d,_0x35bb5d&&(_0x556a20=_0x35bb5d['replace'](/\.\w+$/,'')['replace'](/^(key_)?\d+_/,'')[_0x45492b(0xc9)](/[-_]/g,'\x20'));}return{'description':_0x556a20||_0x298cef['description']||_0x298cef['stepName']||_0x45492b(0xd0)+_0x298cef['position'],'screenshot':_0x48209a,'is_key_step':_0x298cef['isKeyStep']};}));}catch{}return _0x48d908['length']===0x0&&_0x4397cf?.['screenshotUrls']&&(_0x48d908=_0x4397cf['screenshotUrls']['map']((_0x37f015,_0x3d5163)=>({'description':'Screenshot\x20'+(_0x3d5163+0x1),'screenshot':_0x37f015,'is_key_step':![]}))),{'description':_0x3cf74c[_0x384f17(0xf3)],'result':getScenarioResult(_0x3cf74c),'rationale':_0x3e7e1b[_0x384f17(0x116)](getScenarioRationale,_0x3cf74c,_0x4397cf?.['agentResponse']),'steps':_0x48d908};})),_0x5d825f={'url':_0x51677c[_0x56a380(0x10c)],'scenarios':_0x1f38a9};process[_0x56a380(0xfd)]['write'](_0x3e7e1b['lWokK'](JSON[_0x56a380(0x167)](_0x5d825f,null,0x2),'\x0a'));}export async function featureConcludeSession(_0x267e44){const _0x5e600c=_0x4901ae,_0x15dfa5={'kSREg':function(_0x4506b7){return _0x4506b7();},'mdMAb':_0x5e600c(0x154),'BATyT':_0x5e600c(0x105),'GfVWG':function(_0x57d6af,_0x537fce){return _0x57d6af===_0x537fce;},'asSUU':_0x5e600c(0x16e),'TpHOk':'in_progress','sgnll':'\x0aConcluding\x20session...'},_0xce9bc8=_0x267e44||await _0x15dfa5['kSREg'](getActiveFeatureId);if(!_0xce9bc8)throw new Error(_0x15dfa5['mdMAb']);const _0x5c4d95=await getFeature(_0xce9bc8);if(!_0x5c4d95['currentSessionId'])throw new Error(_0x15dfa5['BATyT']);const {sessions:_0x3c5be7}=await listFeatureSessions(_0xce9bc8),_0x31990a=_0x3c5be7['find'](_0x443644=>_0x443644['id']===_0x5c4d95['currentSessionId']);if(!_0x31990a)throw new Error('Current\x20session\x20not\x20found.');if(_0x15dfa5[_0x5e600c(0x13a)](_0x31990a[_0x5e600c(0x170)],_0x15dfa5['asSUU'])){console[_0x5e600c(0x15b)](_0x5e600c(0xc8));return;}if(_0x31990a['status']!==_0x15dfa5['TpHOk'])throw new Error('Cannot\x20conclude\x20session\x20with\x20status:\x20'+_0x31990a['status']);console[_0x5e600c(0x15b)](_0x15dfa5[_0x5e600c(0x11a)]),await concludeSession(_0xce9bc8,_0x5c4d95['currentSessionId']),console['log']('\x0a✅\x20Session\x20'+_0x31990a['iteration']+_0x5e600c(0x136)),console['log'](_0x5e600c(0xf7));}export async function featureSessions(_0x172bb1){const _0x3ff000=_0x4901ae,_0x245e16={'nEBFV':function(_0x58574f){return _0x58574f();},'xLPRb':'No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.','BBxhQ':function(_0xb39192,_0x3daf8a){return _0xb39192===_0x3daf8a;},'SZFuZ':'No\x20sessions\x20found.','MnvWU':_0x3ff000(0x103)},_0x22c392=_0x172bb1||await _0x245e16['nEBFV'](getActiveFeatureId);if(!_0x22c392)throw new Error(_0x245e16[_0x3ff000(0x149)]);const _0x3066f1=await getFeature(_0x22c392);console['log']('\x0a📁\x20Sessions\x20for\x20feature\x20review:\x20'+_0x3066f1['name']+'\x0a');const {sessions:_0x32d808}=await listFeatureSessions(_0x22c392);if(_0x245e16[_0x3ff000(0x10e)](_0x32d808['length'],0x0)){console[_0x3ff000(0x15b)](_0x245e16['SZFuZ']);return;}for(const _0x415475 of _0x32d808){const _0x37ea47=_0x415475['status']===_0x3ff000(0x16e)?'✅':_0x415475[_0x3ff000(0x170)]===_0x245e16[_0x3ff000(0x17c)]?'🔄':'▶️';console[_0x3ff000(0x15b)](_0x37ea47+_0x3ff000(0x117)+_0x415475['iteration']+'\x20('+_0x415475['id']+')'),console[_0x3ff000(0x15b)]('\x20\x20\x20Status:\x20'+_0x415475[_0x3ff000(0x170)]),console['log'](_0x3ff000(0x121)+new Date(_0x415475[_0x3ff000(0x166)])[_0x3ff000(0xce)]()),_0x415475['completedAt']&&console['log'](_0x3ff000(0x16a)+new Date(_0x415475['completedAt'])['toLocaleString']()),console[_0x3ff000(0x15b)]('');}}export async function featureAddScenario(_0x3ee6b7,_0x38c40d){const _0x39b2c1=_0x4901ae,_0x6898b0={'DuxPR':function(_0xbc0ebf){return _0xbc0ebf();},'mUIQX':_0x39b2c1(0x154),'uwAdo':function(_0x4d68fe,_0x9ff727){return _0x4d68fe(_0x9ff727);},'aVFdY':function(_0x8a724f,_0x5198f2,_0x7e48b9){return _0x8a724f(_0x5198f2,_0x7e48b9);}},_0x385ba5=_0x38c40d||await _0x6898b0['DuxPR'](getActiveFeatureId);if(!_0x385ba5)throw new Error(_0x6898b0['mUIQX']);const _0x108aa5=await _0x6898b0['uwAdo'](getFeature,_0x385ba5);if(_0x108aa5['latestReview']&&!_0x108aa5[_0x39b2c1(0x169)]['submittedAt'])throw new Error('Cannot\x20add\x20scenario:\x20feature\x20review\x20has\x20an\x20active\x20review.\x20Please\x20finish\x20your\x20review\x20first:\x20'+_0x108aa5['dashboardUrl']);await _0x6898b0['aVFdY'](createChecklistItem,_0x385ba5,_0x3ee6b7);const _0x33447b=await getFeature(_0x385ba5);console['log']('\x0a✅\x20Scenario\x20added'),displayFeature(_0x33447b,_0x33447b['checklistItems']);}export async function featureEditScenario(_0x321657,_0x2bbafa){const _0xb6ae72=_0x4901ae,_0x462bf6={'yYzUa':'Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','ctpLk':function(_0x1a65ea,_0x412e53){return _0x1a65ea(_0x412e53);},'VOhfI':_0xb6ae72(0x112),'zjmmB':function(_0x451bfa,_0x36f247){return _0x451bfa===_0x36f247;},'XCJNe':function(_0x224e70,_0x3e4ead){return _0x224e70===_0x3e4ead;},'gltHU':'\x0a❌\x20No\x20scenario\x20number\x20provided.\x20Use\x20--scenario\x20<number>.','aVBZf':function(_0x51b4e5,_0x3b17d4){return _0x51b4e5-_0x3b17d4;},'ElQbc':function(_0x31197d,_0x5d2e65){return _0x31197d<_0x5d2e65;},'ZQXdo':function(_0x4f9519,_0x35edc8){return _0x4f9519>=_0x35edc8;},'gYviv':_0xb6ae72(0x110)},_0x203d33=_0x2bbafa['id']||await getActiveFeatureId();!_0x203d33&&(console[_0xb6ae72(0xbf)]('\x0a❌\x20No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.'),console['error'](_0x462bf6[_0xb6ae72(0x148)]),process['exit'](0x1));const _0xc2ad5c=await _0x462bf6[_0xb6ae72(0x12f)](getFeature,_0x203d33);_0xc2ad5c[_0xb6ae72(0x169)]&&!_0xc2ad5c[_0xb6ae72(0x169)][_0xb6ae72(0x180)]&&(console['error'](_0xb6ae72(0xe3)),console[_0xb6ae72(0xbf)](_0x462bf6['VOhfI']),console[_0xb6ae72(0xbf)]('\x20\x20'+_0xc2ad5c[_0xb6ae72(0x10c)]),process[_0xb6ae72(0x147)](0x1));const _0x370342=_0xc2ad5c['checklistItems']||[];_0x462bf6['zjmmB'](_0x370342[_0xb6ae72(0xa8)],0x0)&&(console['error']('\x0a❌\x20No\x20scenarios\x20found\x20to\x20edit.'),process['exit'](0x1));if(_0x462bf6[_0xb6ae72(0x137)](_0x2bbafa[_0xb6ae72(0xf6)],undefined)){console['error'](_0x462bf6[_0xb6ae72(0x104)]),console[_0xb6ae72(0x15b)]('\x0aAvailable\x20scenarios:');for(let _0x498c07=0x0;_0x498c07<_0x370342['length'];_0x498c07++){console['log']('\x20\x20'+(_0x498c07+0x1)+'.\x20'+_0x370342[_0x498c07][_0xb6ae72(0xf3)]);}process['exit'](0x1);}const _0x5054c6=_0x462bf6['aVBZf'](_0x2bbafa[_0xb6ae72(0xf6)],0x1);if(_0x462bf6[_0xb6ae72(0x174)](_0x5054c6,0x0)||_0x462bf6[_0xb6ae72(0x157)](_0x5054c6,_0x370342[_0xb6ae72(0xa8)])){console[_0xb6ae72(0xbf)]('\x0a❌\x20Invalid\x20scenario\x20index:\x20'+_0x2bbafa['scenario']+_0xb6ae72(0xed)+_0x370342['length']+_0xb6ae72(0x113)),console['log'](_0x462bf6['gYviv']);for(let _0x4488cd=0x0;_0x462bf6[_0xb6ae72(0x174)](_0x4488cd,_0x370342['length']);_0x4488cd++){console[_0xb6ae72(0x15b)]('\x20\x20'+(_0x4488cd+0x1)+'.\x20'+_0x370342[_0x4488cd]['description']);}process[_0xb6ae72(0x147)](0x1);}const _0x12ae03=_0x370342[_0x5054c6];await updateChecklistItem(_0x203d33,_0x12ae03['id'],{'description':_0x321657});const _0x95a476=await getFeature(_0x203d33);console['log']('\x0a✅\x20Scenario\x20updated'),displayFeature(_0x95a476,_0x95a476['checklistItems']);}async function downloadFeedbackImage(_0x472353,_0x2779ee){const _0x2f16ac=_0x4901ae,_0x5c0c64={'pSFMj':function(_0x3f3a0d,_0x46b922,_0x146431){return _0x3f3a0d(_0x46b922,_0x146431);},'pRuPt':_0x2f16ac(0x179),'vhPMb':function(_0x5e2402,_0x1ea7ab,_0xebd762){return _0x5e2402(_0x1ea7ab,_0xebd762);}};try{const _0x3e6d6b=_0x5c0c64[_0x2f16ac(0xdf)](join,getRangerDir(),_0x5c0c64['pRuPt']);await _0x5c0c64['vhPMb'](mkdir,_0x3e6d6b,{'recursive':!![]});const _0x1a2605=_0x5c0c64[_0x2f16ac(0xdf)](join,_0x3e6d6b,'comment_'+_0x2779ee+'.png'),_0x251bda=await fetch(_0x472353);if(!_0x251bda['ok'])return null;const _0x4bc387=Buffer['from'](await _0x251bda[_0x2f16ac(0x161)]());return await writeFile(_0x1a2605,_0x4bc387),_0x1a2605;}catch{return null;}}export async function featureGetReview(_0x5ce0d5){const _0x32807f=_0x4901ae,_0xd62190={'zwGMO':function(_0x108326){return _0x108326();},'WrBly':function(_0x225558,_0x406bab){return _0x225558(_0x406bab);},'JESjr':function(_0x427d42,_0xf16782){return _0x427d42(_0xf16782);},'QLRdy':_0x32807f(0xf4),'Bclno':function(_0x1354f9,_0x8aaf6b){return _0x1354f9<_0x8aaf6b;},'xaUhz':function(_0x5ebb69,_0x3fee35,_0x196e8a){return _0x5ebb69(_0x3fee35,_0x196e8a);},'neSCg':function(_0xb7d5bc,_0x555261){return _0xb7d5bc+_0x555261;},'WvQtR':_0x32807f(0xc6),'ILCaN':'numeric','zJdPk':'Unknown','fKeUr':function(_0x4d1531,_0x270bc0,_0xf088e5){return _0x4d1531(_0x270bc0,_0xf088e5);},'KDHVw':_0x32807f(0x127),'ikpWV':function(_0x8f6a3a,_0x433b51){return _0x8f6a3a===_0x433b51;},'wcLBJ':function(_0x1bf4c0,_0x4a5d70){return _0x1bf4c0>=_0x4a5d70;}},_0x34be41=_0x5ce0d5||await _0xd62190['zwGMO'](getActiveFeatureId);if(!_0x34be41)throw new Error(_0x32807f(0x154));const _0x43bdd2=await _0xd62190[_0x32807f(0x17e)](getFeature,_0x34be41),{items:_0x59af4b}=await _0xd62190['JESjr'](getActionItems,_0x34be41);console[_0x32807f(0x15b)]('\x0a📋\x20Feedback\x20for:\x20'+_0x43bdd2['name']+'\x20('+_0x43bdd2['id']+')\x0a');if(_0x59af4b['length']===0x0){console['log'](_0xd62190['QLRdy']);return;}for(let _0xf76204=0x0;_0xd62190[_0x32807f(0x14a)](_0xf76204,_0x59af4b['length']);_0xf76204++){const _0x1685af=_0x59af4b[_0xf76204],_0x2d8cfb=_0x1685af[_0x32807f(0x101)]>0x1?_0x32807f(0xcf)+_0x1685af[_0x32807f(0x101)]+')':'',_0x3c696=await _0xd62190['xaUhz'](getItemFeedback,_0x34be41,_0x1685af['id']);if(_0x3c696['unaddressedComments'][_0x32807f(0xa8)]>0x0){console['log'](_0x32807f(0x11c)+_0xd62190[_0x32807f(0x12e)](_0xf76204,0x1)+':\x20\x22'+_0x1685af['description']+'\x22'+_0x2d8cfb+'\x20—\x20'+_0x3c696[_0x32807f(0x13c)]['length']+'\x20unaddressed\x20comment(s)');for(const _0x5c71cc of _0x3c696[_0x32807f(0x13c)]){const _0x3d170f=new Date(_0x5c71cc['createdAt'])[_0x32807f(0x124)]('en-US',{'month':_0xd62190[_0x32807f(0x132)],'day':_0xd62190[_0x32807f(0x139)]}),_0x58c95e=_0x5c71cc[_0x32807f(0xad)]||_0x5c71cc['authorEmail']||_0xd62190['zJdPk'];console[_0x32807f(0x15b)]('\x20\x20💬\x20'+_0x58c95e+'\x20('+_0x3d170f+_0x32807f(0xfa)+_0x5c71cc['content']+'\x22');if(_0x5c71cc[_0x32807f(0x152)]){const _0x4f4899=await _0xd62190[_0x32807f(0x14e)](downloadFeedbackImage,_0x5c71cc[_0x32807f(0x152)],_0x5c71cc['id']);_0x4f4899&&console[_0x32807f(0x15b)](_0x32807f(0x181)+_0x4f4899);}if(_0x5c71cc[_0x32807f(0x141)]){const _0x769d56=_0x5c71cc[_0x32807f(0x141)][_0x32807f(0x155)][_0x32807f(0x171)](_0xd62190[_0x32807f(0xee)])[_0x32807f(0xff)]()?.[_0x32807f(0x171)](':')[0x0]||'element',_0x5002e8=_0x5c71cc['domRef']['textContent']?'\x20\x22'+_0x5c71cc[_0x32807f(0x141)][_0x32807f(0x156)]['slice'](0x0,0x3c)+'\x22':'';console['log']('\x20\x20\x20\x20\x20🎯\x20Element:\x20<'+_0x769d56+'>'+_0x5002e8),console[_0x32807f(0x15b)]('\x20\x20\x20\x20\x20📋\x20Selector:\x20'+_0x5c71cc[_0x32807f(0x141)]['selector']);}else{if(_0x5c71cc['spatial']){const _0x41bf21=_0x5c71cc[_0x32807f(0xaa)]['coordinates'];_0xd62190[_0x32807f(0x164)](_0x5c71cc['spatial']['type'],'point')&&_0xd62190[_0x32807f(0xb2)](_0x41bf21['length'],0x2)?console[_0x32807f(0x15b)](_0x32807f(0xd8)+_0x41bf21[0x0]['toFixed'](0x2)+',\x20'+_0x41bf21[0x1][_0x32807f(0x109)](0x2)+')'):console['log']('\x20\x20\x20\x20\x20📍\x20Annotation:\x20'+_0x5c71cc['spatial']['type']+_0x32807f(0x17d)+_0x41bf21['map'](_0x556af2=>_0x556af2[_0x32807f(0x109)](0x2))[_0x32807f(0xd2)](',\x20')+']');}}}if(_0x3c696[_0x32807f(0x163)]){console['log'](_0x32807f(0x114));for(const _0x27116e of _0x3c696[_0x32807f(0x163)][_0x32807f(0x171)]('\x0a')){console[_0x32807f(0x15b)]('\x20\x20\x20\x20'+_0x27116e);}}}else console['log']('Scenario\x20'+(_0xf76204+0x1)+_0x32807f(0x151)+_0x1685af[_0x32807f(0xf3)]+'\x22'+_0x2d8cfb+_0x32807f(0xf2)),console[_0x32807f(0x15b)]('\x20\x20✅\x20No\x20feedback\x20to\x20address');console[_0x32807f(0x15b)]('');}}export async function featureDelete(_0x82bb8f){const _0x30b236=_0x4901ae,_0x4a9853={'cSpjT':'No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','KzdeF':_0x30b236(0x13e)},_0x538516=_0x82bb8f||await getActiveFeatureId();if(!_0x538516)throw new Error(_0x4a9853['cSpjT']);const _0x2abdf6=await getFeature(_0x538516);await softDeleteFeature(_0x538516),console['log'](_0x30b236(0x16b)+_0x2abdf6[_0x30b236(0xe8)]+'\x20('+_0x538516+')'),console['log'](_0x4a9853['KzdeF']+_0x538516);}export async function featureRestore(_0x476ee1){const _0x2b2f01=_0x4901ae;await restoreFeature(_0x476ee1);const _0x58f7ee=await getFeature(_0x476ee1);console[_0x2b2f01(0x15b)](_0x2b2f01(0xe5)+_0x58f7ee[_0x2b2f01(0xe8)]+'\x20('+_0x476ee1+')'),displayFeature(_0x58f7ee,_0x58f7ee['checklistItems']);}
1
+ const _0x17361c=_0xa5d3;(function(_0x25a98b,_0x3acd01){const _0x22a390=_0xa5d3,_0x47ac55=_0x25a98b();while(!![]){try{const _0x23becd=parseInt(_0x22a390(0x139))/0x1*(-parseInt(_0x22a390(0x141))/0x2)+parseInt(_0x22a390(0xd5))/0x3*(parseInt(_0x22a390(0xce))/0x4)+parseInt(_0x22a390(0x124))/0x5*(-parseInt(_0x22a390(0xd6))/0x6)+-parseInt(_0x22a390(0xbf))/0x7*(parseInt(_0x22a390(0x118))/0x8)+parseInt(_0x22a390(0x131))/0x9+-parseInt(_0x22a390(0x101))/0xa+parseInt(_0x22a390(0x117))/0xb;if(_0x23becd===_0x3acd01)break;else _0x47ac55['push'](_0x47ac55['shift']());}catch(_0x52c13c){_0x47ac55['push'](_0x47ac55['shift']());}}}(_0x4ce9,0x260cc));function _0xa5d3(_0x565ce6,_0x5e80b6){_0x565ce6=_0x565ce6-0xa9;const _0x4ce99b=_0x4ce9();let _0xa5d393=_0x4ce99b[_0x565ce6];return _0xa5d393;}import{readFile,writeFile,mkdir}from'fs/promises';import{join}from'path';import{existsSync}from'fs';import{execSync}from'child_process';import _0x3ea057 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='active-feature.txt',bold=_0x16a36c=>_0x17361c(0x133)+_0x16a36c+'\x1b[0m';function getGitRepoUrl(){const _0x5b928e=_0x17361c,_0x10f081={'SgKAw':'git\x20remote\x20get-url\x20origin','pYWiJ':_0x5b928e(0xfc),'ByDZp':'github.com/'};try{const _0x443f1d=execSync(_0x10f081[_0x5b928e(0x128)],{'encoding':_0x10f081[_0x5b928e(0xf4)],'stdio':[_0x5b928e(0xae),_0x5b928e(0xae),'pipe']})[_0x5b928e(0x108)]();return _0x443f1d[_0x5b928e(0x17b)](/\.git$/,'')['replace'](/^git@github\.com:/,_0x10f081['ByDZp'])[_0x5b928e(0x17b)](/^https?:\/\//,'');}catch{return undefined;}}function getGitBranch(){const _0x1af5ba=_0x17361c,_0x5bdd2d={'jXEqr':function(_0x31c56b,_0x5ff175,_0x279908){return _0x31c56b(_0x5ff175,_0x279908);},'xBPsf':_0x1af5ba(0xfc),'UtjtS':_0x1af5ba(0xae)};try{return _0x5bdd2d[_0x1af5ba(0x114)](execSync,_0x1af5ba(0x16f),{'encoding':_0x5bdd2d['xBPsf'],'stdio':[_0x5bdd2d[_0x1af5ba(0x10f)],_0x5bdd2d['UtjtS'],_0x1af5ba(0xae)]})[_0x1af5ba(0x108)]();}catch{return undefined;}}export async function getActiveFeatureId(){const _0x492719=_0x17361c,_0x3f9571={'lkoeh':function(_0x32706d,_0x494fcb,_0x5c0dda){return _0x32706d(_0x494fcb,_0x5c0dda);},'afLAu':_0x492719(0xfc)},_0xcca7fc=join(getRangerDir(),ACTIVE_FEATURE_FILE);if(!existsSync(_0xcca7fc))return null;try{const _0x4e533a=await _0x3f9571['lkoeh'](readFile,_0xcca7fc,_0x3f9571['afLAu']);return _0x4e533a['trim']()||null;}catch{return null;}}async function setActiveFeatureId(_0xe14dba){const _0x1ddf05=getRangerDir(),_0x100a17=join(_0x1ddf05,ACTIVE_FEATURE_FILE);!existsSync(_0x1ddf05)&&await mkdir(_0x1ddf05,{'recursive':!![]}),await writeFile(_0x100a17,_0xe14dba,'utf-8');}function getProgressDisplay(_0x24b225){const _0x99c606=_0x17361c,_0xa0e579={'fecln':function(_0x4f2c37,_0x2b252a){return _0x4f2c37+_0x2b252a;},'BCLRU':function(_0x16ad46,_0xdd5806){return _0x16ad46*_0xdd5806;},'gASVK':function(_0x297d5d,_0x1e6401){return _0x297d5d-_0x1e6401;},'ZcEZK':function(_0x14849c,_0x3149e4){return _0x14849c>_0x3149e4;}},_0x55e752=_0x24b225['verifiedItems']||0x0,_0x942f65=_0x24b225[_0x99c606(0xe1)]||0x0,_0x5420d9=_0x24b225[_0x99c606(0x13a)]||0x0,_0x2e90d5=_0x24b225['incompleteItems']||0x0,_0x3a4a43=_0x24b225[_0x99c606(0xc4)]||0x0,_0x4940f6=_0xa0e579[_0x99c606(0x151)](_0x55e752+_0x942f65,_0x5420d9)+_0x2e90d5+_0x3a4a43;if(_0x4940f6===0x0)return'-';const _0x42fe04=0xa,_0x4a19fc=Math['round'](_0xa0e579[_0x99c606(0x162)](_0x55e752/_0x4940f6,_0x42fe04)),_0x1c1f46='█'[_0x99c606(0xee)](_0x4a19fc)+'░'['repeat'](_0xa0e579[_0x99c606(0xb3)](_0x42fe04,_0x4a19fc)),_0x2f979d=[];if(_0xa0e579[_0x99c606(0xda)](_0x5420d9,0x0))_0x2f979d[_0x99c606(0xbe)](_0x5420d9+'\x20blocked');if(_0x2e90d5>0x0)_0x2f979d['push'](_0x2e90d5+_0x99c606(0xcd));if(_0x942f65>0x0)_0x2f979d[_0x99c606(0xbe)](_0x942f65+_0x99c606(0x188));const _0x163b13=_0xa0e579['ZcEZK'](_0x2f979d['length'],0x0)?'\x20('+_0x2f979d[_0x99c606(0xab)](',\x20')+')':'';return _0x1c1f46+'\x20'+_0x55e752+'/'+_0x4940f6+_0x99c606(0x158)+_0x163b13;}function getCurrentSessionItems(_0xfac0d0,_0x270368){const _0x6ca77a=_0x17361c;if(!_0xfac0d0[_0x6ca77a(0x15c)])return _0x270368['filter'](_0x16f098=>!_0x16f098['sessionId']);return _0x270368[_0x6ca77a(0xf8)](_0x4dc206=>_0x4dc206[_0x6ca77a(0xd7)]===_0xfac0d0[_0x6ca77a(0x15c)]||!_0x4dc206['sessionId']);}function displayFeature(_0x232bcd,_0x46bddd){const _0x34b553=_0x17361c,_0x1789b1={'xefqu':function(_0x55575,_0x14d18f){return _0x55575<_0x14d18f;},'ukQfy':function(_0x5214d3,_0x3e7814){return _0x5214d3===_0x3e7814;},'FKxfB':function(_0x105a45,_0x2ff4fd){return _0x105a45===_0x2ff4fd;},'ipfEa':'blocked','CBJqt':_0x34b553(0xfb),'vEFJC':function(_0xee6e16,_0x50ce1b){return _0xee6e16===_0x50ce1b;},'Ybukc':_0x34b553(0xb6),'pthZt':function(_0x244c2b,_0x50d5b9){return _0x244c2b>_0x50d5b9;},'iGHLt':function(_0x183644,_0xa49b2f){return _0x183644!==_0xa49b2f;},'eTwBT':_0x34b553(0xbc),'ixDtS':function(_0xe6f2e9,_0x4865e1){return _0xe6f2e9+_0x4865e1;},'tRgQp':function(_0x271630,_0x3e9b0b){return _0x271630===_0x3e9b0b;},'ZrroR':_0x34b553(0x150),'NSCEF':_0x34b553(0xec),'iiJlW':function(_0x1163d6,_0x44cda8){return _0x1163d6===_0x44cda8;}};console['log']('\x0a'+_0x232bcd['name']+'\x20('+_0x232bcd[_0x34b553(0x121)]+')');_0x232bcd[_0x34b553(0x125)]&&console['log']('\x20\x20\x20Progress:\x20'+getProgressDisplay(_0x232bcd[_0x34b553(0x125)]));_0x232bcd[_0x34b553(0x12d)]&&console['log'](_0x34b553(0xde)+_0x232bcd[_0x34b553(0x12d)]);_0x232bcd['gitRepoUrl']&&console['log']('\x20\x20\x20Repository:\x20'+_0x232bcd[_0x34b553(0x12a)]);_0x232bcd[_0x34b553(0x119)]&&console['log'](_0x34b553(0x11a)+_0x232bcd['gitBranch']);console[_0x34b553(0x16c)](_0x34b553(0xeb)+new Date(_0x232bcd['createdAt'])['toLocaleString']());_0x232bcd['completedAt']&&console[_0x34b553(0x16c)](_0x34b553(0x14b)+new Date(_0x232bcd['completedAt'])[_0x34b553(0xfe)]());if(_0x46bddd&&_0x46bddd[_0x34b553(0x140)]>0x0){console[_0x34b553(0x16c)](_0x34b553(0x122));for(let _0x3dd1fa=0x0;_0x1789b1['xefqu'](_0x3dd1fa,_0x46bddd['length']);_0x3dd1fa++){const _0x13ad6a=_0x46bddd[_0x3dd1fa];let _0x1ee845;if(_0x13ad6a[_0x34b553(0xaa)]===_0x34b553(0xfb)&&_0x1789b1['ukQfy'](_0x13ad6a['terminalReason'],'approved'))_0x1ee845='✅';else{if(_0x1789b1['FKxfB'](_0x13ad6a[_0x34b553(0xaa)],_0x34b553(0x129)))_0x1ee845='🟢';else{if(_0x1789b1[_0x34b553(0x10e)](_0x13ad6a[_0x34b553(0xaa)],_0x34b553(0x150)))_0x1ee845='🟠';else{if(_0x13ad6a['status']===_0x1789b1[_0x34b553(0x175)])_0x1ee845='🛑';else{if(_0x13ad6a[_0x34b553(0xaa)]===_0x1789b1[_0x34b553(0x11c)])_0x1ee845='⛔';else _0x1789b1[_0x34b553(0x15f)](_0x13ad6a[_0x34b553(0xaa)],_0x1789b1[_0x34b553(0x11d)])?_0x1ee845='⏳':_0x1ee845='⬜';}}}}const _0x91d3c6=_0x13ad6a[_0x34b553(0x12b)]>0x1?'\x20(v'+_0x13ad6a[_0x34b553(0x12b)]+')':'',_0x3eaf19=_0x1789b1['pthZt'](_0x13ad6a['version'],0x1)&&_0x13ad6a['parentItemId']&&_0x1789b1[_0x34b553(0xe2)](_0x13ad6a[_0x34b553(0xaa)],_0x1789b1[_0x34b553(0x11c)])&&_0x13ad6a[_0x34b553(0xaa)]!=='verified'?_0x1789b1['eTwBT']:'';console[_0x34b553(0x16c)]('\x20\x20\x20'+_0x1789b1['ixDtS'](_0x3dd1fa,0x1)+'.\x20'+_0x1ee845+'\x20'+_0x13ad6a[_0x34b553(0x12d)]+_0x91d3c6+_0x3eaf19);_0x13ad6a['status']==='blocked'&&_0x13ad6a['blockedReason']&&console['log']('\x20\x20\x20\x20\x20\x20Blocked:\x20'+_0x13ad6a[_0x34b553(0xf3)]);_0x1789b1[_0x34b553(0x17f)](_0x13ad6a[_0x34b553(0xaa)],_0x1789b1['ZrroR'])&&_0x13ad6a[_0x34b553(0x156)]&&console['log']('\x20\x20\x20\x20\x20\x20Incomplete:\x20'+_0x13ad6a[_0x34b553(0x156)]);if(_0x13ad6a[_0x34b553(0xaa)]==='closed'&&_0x1789b1['vEFJC'](_0x13ad6a[_0x34b553(0x170)],_0x1789b1['NSCEF']))console['log'](_0x34b553(0x15a));else _0x1789b1[_0x34b553(0xe0)](_0x13ad6a[_0x34b553(0xaa)],'closed')&&_0x13ad6a['canceledReason']&&console['log']('\x20\x20\x20\x20\x20\x20Cancelled:\x20'+_0x13ad6a[_0x34b553(0x12f)]);}}}export async function featureCreate(_0x4e6789,_0x58b31d){const _0x509a7c=_0x17361c,_0x625fe2={'kcYpi':function(_0x36e09c){return _0x36e09c();},'HXgRE':function(_0x5c653a,_0x3544f4){return _0x5c653a===_0x3544f4;},'aiiJr':function(_0x146090,_0x434406){return _0x146090(_0x434406);},'zPqIV':function(_0x3a2b99,_0x10de4d,_0x5bbaf1){return _0x3a2b99(_0x10de4d,_0x5bbaf1);},'fTRIV':function(_0x3fb2e7,_0x196c26,_0x1f0256){return _0x3fb2e7(_0x196c26,_0x1f0256);}},{envNames:_0x75e01e}=await _0x625fe2['kcYpi'](getEnvNames);if(_0x625fe2[_0x509a7c(0x168)](_0x75e01e['length'],0x0)&&!process['env']['RANGER_TEST_USERNAME']){let _0x3f0245=0x0;try{_0x3f0245=(await _0x625fe2[_0x509a7c(0x111)](listCloudProfiles))['length'];}catch{_0x3f0245=0x1;}_0x3f0245===0x0&&console['warn']('\x0a'+_0x625fe2['aiiJr'](formatProfileRequiredMessage,_0x50b69d=>bold(_0x50b69d)));}const _0x3a1270=_0x58b31d['scenarios']?_0x58b31d[_0x509a7c(0x187)][_0x509a7c(0x143)](_0x795446=>_0x795446[_0x509a7c(0x108)]()):[],_0x19ecb1=_0x625fe2[_0x509a7c(0x111)](getGitRepoUrl),_0x492a7d=_0x625fe2['kcYpi'](getGitBranch);console[_0x509a7c(0x16c)]('\x0aCreating\x20feature\x20review...');const _0x564d29=await _0x625fe2['aiiJr'](createFeature,{'name':_0x4e6789,'description':_0x58b31d[_0x509a7c(0x12d)],'checklist':_0x3a1270,'gitRepoUrl':_0x19ecb1,'gitBranch':_0x492a7d});await _0x625fe2[_0x509a7c(0x11b)](setActiveFeatureId,_0x564d29['id']),await tryStartCurrentSession(_0x564d29['id']);const _0x57bf0d=process['env']['CLAUDE_SESSION_ID'];_0x57bf0d&&_0x625fe2[_0x509a7c(0x138)](registerSession,_0x57bf0d,_0x564d29['id']),console['log']('\x0a✅\x20Feature\x20review\x20created:\x20'+_0x564d29['id']),_0x625fe2['fTRIV'](displayFeature,_0x564d29,_0x564d29['checklistItems']),console['log'](_0x509a7c(0x159));}export async function featureList(_0x78afff){const _0x33a8d4=_0x17361c,_0x5cc9c5={'SjWhm':function(_0x1813f1,_0x177200){return _0x1813f1>_0x177200;},'gVGCc':function(_0x5b4d57,_0x4a3ccf){return _0x5b4d57(_0x4a3ccf);}},_0x1a6233={'limit':_0x78afff[_0x33a8d4(0xc2)]??0xa,'offset':_0x78afff[_0x33a8d4(0xb9)]??0x0,'includeDeleted':_0x78afff[_0x33a8d4(0xd8)]};_0x78afff['currentBranch']&&(_0x1a6233['gitRepoUrl']=getGitRepoUrl(),_0x1a6233[_0x33a8d4(0x119)]=getGitBranch());const _0x3aee20=await listFeatures(_0x1a6233);if(_0x3aee20[_0x33a8d4(0x126)]['length']===0x0){console['log'](_0x33a8d4(0x181));return;}const _0x3c06f1=_0x5cc9c5['SjWhm'](_0x3aee20[_0x33a8d4(0xe8)],_0x3aee20['items'][_0x33a8d4(0x140)])?'Showing\x20'+_0x3aee20[_0x33a8d4(0x126)]['length']+_0x33a8d4(0x165)+_0x3aee20[_0x33a8d4(0xe8)]:_0x3aee20['totalCount']+'\x20feature\x20review(s)\x20found';console[_0x33a8d4(0x16c)]('\x0a'+_0x3c06f1+':\x0a');for(const _0xecf95c of _0x3aee20['items']){console[_0x33a8d4(0x16c)](''+_0xecf95c[_0x33a8d4(0xcb)]),console[_0x33a8d4(0x16c)](_0x33a8d4(0x103)+_0xecf95c['id']),_0xecf95c[_0x33a8d4(0x125)]&&console['log'](_0x33a8d4(0xc6)+_0x5cc9c5[_0x33a8d4(0x107)](getProgressDisplay,_0xecf95c['stats'])),_0xecf95c[_0x33a8d4(0x119)]&&console[_0x33a8d4(0x16c)](_0x33a8d4(0x11a)+_0xecf95c[_0x33a8d4(0x119)]),console[_0x33a8d4(0x16c)](_0x33a8d4(0xeb)+new Date(_0xecf95c['createdAt'])[_0x33a8d4(0xb5)]()),console['log']('');}const _0x3bc7d3=_0x1a6233[_0x33a8d4(0xc2)]??0xa,_0x49ef16=(_0x1a6233['offset']??0x0)+_0x3aee20['items'][_0x33a8d4(0x140)];if(_0x49ef16<_0x3aee20[_0x33a8d4(0xe8)]){const _0x10b341=_0x3bc7d3!==0xa?'\x20--limit\x20'+_0x3bc7d3:'',_0x55e93d=_0x78afff[_0x33a8d4(0x120)]?_0x33a8d4(0xd0):'',_0x773c75=_0x78afff[_0x33a8d4(0xd8)]?_0x33a8d4(0x10c):'';console[_0x33a8d4(0x16c)](_0x33a8d4(0x176)+_0x49ef16+_0x10b341+_0x55e93d+_0x773c75);}}export async function featureShow(_0x379dcb){const _0x20be30=_0x17361c,_0x3a3ccb={'MaGwx':_0x20be30(0x157),'RvPdT':function(_0x233bd3,_0x57588a,_0x566fb9){return _0x233bd3(_0x57588a,_0x566fb9);}},_0x5574e0=_0x379dcb||await getActiveFeatureId();if(!_0x5574e0)throw new Error(_0x3a3ccb['MaGwx']);const _0x5c311d=await getFeature(_0x5574e0);_0x3a3ccb['RvPdT'](displayFeature,_0x5c311d,_0x5c311d['checklistItems']);}export async function featureResume(_0x31fc3d){const _0x27d38e=_0x17361c,_0x2b256f={'fyRpo':function(_0x33f2c5,_0x34832f){return _0x33f2c5(_0x34832f);},'MDuLu':function(_0x55423d){return _0x55423d();},'UrQLQ':function(_0x4faa90,_0x1439e5,_0x302202){return _0x4faa90(_0x1439e5,_0x302202);},'AOEOc':function(_0x3cdb96,_0x55c9eb){return _0x3cdb96(_0x55c9eb);},'iEpxU':function(_0x282bcd,_0x375e1b,_0x4246ce){return _0x282bcd(_0x375e1b,_0x4246ce);},'XmdDN':function(_0x33152a){return _0x33152a();},'QRlIZ':'Not\x20in\x20a\x20git\x20repository.','cRnzS':function(_0x176b0c,_0x5c91df){return _0x176b0c||_0x5c91df;},'GnCBH':'any','OYLbM':function(_0x347cb0,_0x23139c){return _0x347cb0===_0x23139c;},'ElYYc':_0x27d38e(0xf9),'bccLn':'\x0aNon-interactive\x20mode\x20detected.\x20Multiple\x20feature\x20reviews\x20found:','nZqFK':_0x27d38e(0x12e),'laisT':'Multiple\x20feature\x20reviews\x20found.\x20Select\x20one:','AmcOj':function(_0x184a14,_0x2ac0d3){return _0x184a14(_0x2ac0d3);},'qtyvV':function(_0x49aa53,_0x922962){return _0x49aa53(_0x922962);},'YZuXS':function(_0x12882a,_0x3727dd,_0x24399c){return _0x12882a(_0x3727dd,_0x24399c);}};if(_0x31fc3d){const _0x3d461e=await getFeature(_0x31fc3d);await _0x2b256f['fyRpo'](setActiveFeatureId,_0x3d461e['id']);const _0x41c992=_0x2b256f['MDuLu'](getGitBranch);_0x41c992&&_0x41c992!==_0x3d461e['gitBranch']&&(await _0x2b256f[_0x27d38e(0x177)](updateFeature,_0x3d461e['id'],{'gitBranch':_0x41c992}),console[_0x27d38e(0x16c)]('\x20\x20\x20Updated\x20branch\x20to:\x20'+_0x41c992));console['log']('\x0a✅\x20Resumed\x20feature\x20review:\x20'+_0x3d461e[_0x27d38e(0xcb)]+'\x20('+_0x3d461e['id']+')'),await _0x2b256f[_0x27d38e(0x148)](tryStartCurrentSession,_0x3d461e['id']);const _0x3ceadd=process[_0x27d38e(0xbb)]['CLAUDE_SESSION_ID'];_0x3ceadd&&registerSession(_0x3ceadd,_0x3d461e['id']);_0x2b256f[_0x27d38e(0x183)](displayFeature,_0x3d461e,_0x3d461e['checklistItems']),await _0x2b256f['fyRpo'](printFeedbackNudge,_0x3d461e['id']);return;}const _0x3a281f=_0x2b256f['MDuLu'](getGitRepoUrl),_0x1a9553=_0x2b256f['XmdDN'](getGitBranch);if(!_0x3a281f&&!_0x1a9553)throw new Error(_0x2b256f['QRlIZ']);console['log']('\x0aSearching\x20for\x20feature\x20reviews\x20matching:\x20'+_0x2b256f[_0x27d38e(0xaf)](_0x3a281f,_0x2b256f[_0x27d38e(0x14d)])+_0x27d38e(0x173)+(_0x1a9553||_0x27d38e(0xa9))+_0x27d38e(0x152));const _0x12e199=await _0x2b256f['AOEOc'](listFeatures,{'gitRepoUrl':_0x3a281f,'gitBranch':_0x1a9553}),_0x26a3bc=_0x12e199[_0x27d38e(0x126)]['filter'](_0x58dcfb=>_0x58dcfb['status']?_0x58dcfb['status']!==_0x27d38e(0x129):!_0x58dcfb['completedAt']);if(_0x2b256f[_0x27d38e(0xf5)](_0x26a3bc['length'],0x0)){console['log']('\x0aNo\x20matching\x20active\x20feature\x20reviews\x20found.'),console[_0x27d38e(0x16c)](_0x2b256f['ElYYc']);return;}let _0x32d97f;if(_0x2b256f[_0x27d38e(0xf5)](_0x26a3bc[_0x27d38e(0x140)],0x1))_0x32d97f=_0x26a3bc[0x0];else{const _0x1227e3=process[_0x27d38e(0xb0)]['isTTY']&&process['stdout']['isTTY'];if(!_0x1227e3){console[_0x27d38e(0x16c)](_0x2b256f[_0x27d38e(0x102)]);for(const _0x3b6fab of _0x26a3bc){console['log']('\x20\x20'+_0x3b6fab['name']),console[_0x27d38e(0x16c)]('\x20\x20\x20\x20\x20ID:\x20'+_0x3b6fab['id']),_0x3b6fab['stats']&&console[_0x27d38e(0x16c)]('\x20\x20\x20\x20\x20Progress:\x20'+_0x2b256f[_0x27d38e(0x149)](getProgressDisplay,_0x3b6fab['stats'])),_0x3b6fab[_0x27d38e(0x119)]&&console['log'](_0x27d38e(0xad)+_0x3b6fab['gitBranch']);}throw new Error('Please\x20specify\x20the\x20feature\x20review\x20ID:\x20ranger\x20resume\x20<id>');}const {selected:_0x56a86b}=await _0x3ea057['prompt']([{'type':_0x2b256f[_0x27d38e(0xdd)],'name':'selected','message':_0x2b256f['laisT'],'choices':_0x26a3bc[_0x27d38e(0x143)](_0x16a9f4=>({'name':_0x16a9f4['name']+'\x20('+_0x16a9f4['id']+')','value':_0x16a9f4['id']}))}]);_0x32d97f=_0x26a3bc['find'](_0x37157d=>_0x37157d['id']===_0x56a86b);}await _0x2b256f['AmcOj'](setActiveFeatureId,_0x32d97f['id']);_0x1a9553&&_0x1a9553!==_0x32d97f['gitBranch']&&(await _0x2b256f['UrQLQ'](updateFeature,_0x32d97f['id'],{'gitBranch':_0x1a9553}),console['log'](_0x27d38e(0xfa)+_0x1a9553));console['log'](_0x27d38e(0xf6)+_0x32d97f[_0x27d38e(0xcb)]+'\x20('+_0x32d97f['id']+')'),await tryStartCurrentSession(_0x32d97f['id']);const _0x4e6360=await _0x2b256f[_0x27d38e(0x186)](getFeature,_0x32d97f['id']),_0x15bc37=process[_0x27d38e(0xbb)]['CLAUDE_SESSION_ID'];_0x15bc37&&_0x2b256f['YZuXS'](registerSession,_0x15bc37,_0x4e6360['id']),_0x2b256f['UrQLQ'](displayFeature,_0x4e6360,_0x4e6360[_0x27d38e(0x16d)]),await printFeedbackNudge(_0x4e6360['id']);}async function printFeedbackNudge(_0x580a15){const _0x5b1f26=_0x17361c,_0x1f6468={'vvADo':function(_0x917270,_0x42f970){return _0x917270>_0x42f970;},'HGEgM':_0x5b1f26(0x135)};try{const {items:_0x32bbc5}=await getActionItems(_0x580a15);let _0x2c8508=0x0,_0x18aab1=0x0;for(const _0x5b14a9 of _0x32bbc5){const _0x408e76=await getItemFeedback(_0x580a15,_0x5b14a9['id']);_0x408e76['unaddressedComments'][_0x5b1f26(0x140)]>0x0&&(_0x2c8508+=_0x408e76['unaddressedComments']['length'],_0x18aab1++);}_0x1f6468[_0x5b1f26(0x144)](_0x2c8508,0x0)&&(console['log']('\x0a⚠️\x20\x20'+_0x2c8508+_0x5b1f26(0x14f)+_0x18aab1+'\x20scenario(s).'),console[_0x5b1f26(0x16c)](_0x1f6468[_0x5b1f26(0x164)]));}catch{}}async function tryStartCurrentSession(_0x59908f){const _0x2724f7=_0x17361c,_0x509cae={'TDZeV':function(_0x3d98d3,_0xd1bd67){return _0x3d98d3(_0xd1bd67);}};try{const {sessions:_0x13cbe2}=await _0x509cae[_0x2724f7(0x110)](listFeatureSessions,_0x59908f),_0x3aecd6=_0x13cbe2['find'](_0x30b53c=>_0x30b53c['status']===_0x2724f7(0xe3));_0x3aecd6&&(await startSession(_0x59908f,_0x3aecd6['id']),console['log']('\x20\x20\x20▶️\x20Started\x20session\x20'+_0x3aecd6[_0x2724f7(0x146)]));}catch{}}export async function featureReport(_0x3a1df2,_0x1ad8f8){const _0x52a94b=_0x17361c,_0x97e0e5={'Libsi':_0x52a94b(0x136),'IBzHP':function(_0x2c7547,_0x332579,_0x140adc,_0xc4b8e0){return _0x2c7547(_0x332579,_0x140adc,_0xc4b8e0);},'fdtaH':function(_0x2dec7d){return _0x2dec7d();},'KjvZE':_0x52a94b(0x132),'yvSTY':function(_0x34ceec,_0x5ad612,_0x2dd59e){return _0x34ceec(_0x5ad612,_0x2dd59e);},'QHFeM':function(_0x117880,_0x6254ab,_0x348deb,_0x4e7b9f){return _0x117880(_0x6254ab,_0x348deb,_0x4e7b9f);}},_0x28fa41=_0x3a1df2||await getActiveFeatureId();if(!_0x28fa41)throw new Error(_0x97e0e5['Libsi']);console[_0x52a94b(0x16c)]('\x0aGenerating\x20report...');const _0x52815a=await getFeatureReportMarkdown(_0x28fa41,{'style':_0x1ad8f8['style']}),_0x16a047=_0x1ad8f8['output']||_0x97e0e5[_0x52a94b(0x166)](join,_0x97e0e5[_0x52a94b(0x174)](getRangerDir),_0x97e0e5['KjvZE'],_0x28fa41+_0x52a94b(0xdc)),_0x1d9e6d=_0x97e0e5['yvSTY'](join,_0x16a047,'..');!existsSync(_0x1d9e6d)&&await mkdir(_0x1d9e6d,{'recursive':!![]}),await _0x97e0e5[_0x52a94b(0x172)](writeFile,_0x16a047,_0x52815a,_0x52a94b(0xfc)),console[_0x52a94b(0x16c)]('\x0a✅\x20Report\x20generated:\x20'+_0x16a047);}function getScenarioResult(_0x2230bb){const _0x4ee103=_0x17361c,_0x5e3d2f={'ZkYlU':function(_0x3b689b,_0x5930f9){return _0x3b689b===_0x5930f9;},'XsxVy':'closed'};if(_0x5e3d2f[_0x4ee103(0xba)](_0x2230bb['status'],_0x5e3d2f[_0x4ee103(0x147)]))return _0x2230bb[_0x4ee103(0x170)]??_0x4ee103(0xfb);if(_0x5e3d2f[_0x4ee103(0xba)](_0x2230bb['status'],_0x4ee103(0xb6)))return _0x4ee103(0xc7);return _0x2230bb[_0x4ee103(0xaa)];}function getScenarioRationale(_0x3fdf04,_0x13cc01){const _0x185efd=_0x17361c;if(_0x13cc01)return _0x13cc01;if(_0x3fdf04['blockedReason'])return _0x3fdf04[_0x185efd(0xf3)];if(_0x3fdf04['incompleteReason'])return _0x3fdf04['incompleteReason'];if(_0x3fdf04['canceledReason'])return _0x3fdf04[_0x185efd(0x12f)];if(_0x3fdf04[_0x185efd(0x16b)])return _0x3fdf04['notes'];return null;}export async function featureReportPrDescription(_0x21cd7a,_0x16165b){const _0x415704=_0x17361c,_0x3dff2c={'QxhFM':function(_0x1dd6a2){return _0x1dd6a2();},'sKBxC':function(_0x54a9ef,_0x7cd0dc){return _0x54a9ef(_0x7cd0dc);},'FxEuc':function(_0x1bb825,_0x4e080f,_0x4751ca){return _0x1bb825(_0x4e080f,_0x4751ca);},'yGkUx':'\x0aAvailable\x20scenarios:','ZmSOz':function(_0x44df67,_0x1b4f0b){return _0x44df67===_0x1b4f0b;},'lBhXJ':'\x0a❌\x20All\x20scenarios\x20were\x20excluded.','Wzgqa':function(_0x551499,_0x380749,_0x5d54c3,_0x29cc01){return _0x551499(_0x380749,_0x5d54c3,_0x29cc01);}},_0x2d2d66=_0x21cd7a||await _0x3dff2c[_0x415704(0xc9)](getActiveFeatureId);if(!_0x2d2d66)throw new Error(_0x415704(0x136));const _0x4cbc14=await _0x3dff2c[_0x415704(0xd1)](getFeature,_0x2d2d66),_0x2e5d2f=_0x4cbc14['checklistItems']||[],_0x24305f=_0x3dff2c[_0x415704(0xb1)](getCurrentSessionItems,_0x4cbc14,_0x2e5d2f);_0x24305f['length']===0x0&&(console[_0x415704(0x14e)]('\x0a❌\x20No\x20scenarios\x20found\x20to\x20include.'),process[_0x415704(0xf7)](0x1));const _0x4d2d04=_0x16165b['excludeScenarios']??[],_0x168106=_0x4d2d04['filter'](_0x74bd6e=>!Number[_0x415704(0x10d)](_0x74bd6e)||_0x74bd6e<0x1||_0x74bd6e>_0x24305f['length']);if(_0x168106['length']>0x0){console['error']('\x0a❌\x20Invalid\x20scenario\x20number(s):\x20'+_0x168106['join'](',\x20')),console[_0x415704(0x16c)](_0x3dff2c[_0x415704(0x13b)]);for(let _0x420100=0x0;_0x420100<_0x24305f['length'];_0x420100++){console[_0x415704(0x16c)]('\x20\x20'+(_0x420100+0x1)+'.\x20'+_0x24305f[_0x420100]['description']);}process['exit'](0x1);}const _0x2fed91=new Set(_0x4d2d04[_0x415704(0x143)](_0x1eaba7=>_0x1eaba7-0x1)),_0xf84273=_0x24305f['filter']((_0x4a773e,_0x39ab65)=>!_0x2fed91['has'](_0x39ab65));_0x3dff2c[_0x415704(0x105)](_0xf84273['length'],0x0)&&(console[_0x415704(0x14e)](_0x3dff2c['lBhXJ']),process['exit'](0x1));if(_0x16165b[_0x415704(0x130)])await _0x3dff2c[_0x415704(0x137)](outputJsonReport,_0x2d2d66,_0x4cbc14,_0xf84273);else{const _0xf46ce=await _0x3dff2c[_0x415704(0xb1)](getFeatureReportMarkdown,_0x2d2d66,{'itemIds':_0xf84273[_0x415704(0x143)](_0x1baa34=>_0x1baa34['id'])});process['stdout']['write'](_0xf46ce['trimEnd']()+'\x0a');}}async function outputJsonReport(_0x18bb41,_0x2dfade,_0x466b6f){const _0x420dbe=_0x17361c,_0x52f2ca={'fKnRX':function(_0x3cc931,_0x24b787){return _0x3cc931(_0x24b787);},'pxFrV':function(_0x4a99d4,_0x1f8562,_0x2277d2){return _0x4a99d4(_0x1f8562,_0x2277d2);},'OHHkZ':function(_0x119fda){return _0x119fda();},'UFxNO':function(_0x593c30,_0x1c6e35){return _0x593c30+_0x1c6e35;}},_0x434d6c=_0x52f2ca[_0x420dbe(0xe7)](getApiBaseUrl),_0x5e8ec7=await getFeatureReport(_0x18bb41),_0x5b652e=new Map(_0x5e8ec7['checklistItems']['map'](_0x424ec2=>[_0x424ec2['id'],_0x424ec2])),_0x4547a5=await Promise[_0x420dbe(0x12c)](_0x466b6f['map'](async _0x393089=>{const _0x38585b=_0x420dbe,_0x31754e=_0x5b652e[_0x38585b(0x15e)](_0x393089['id']),_0x1d986a=_0x31754e?.[_0x38585b(0xe4)]??null;let _0x655c42=[];if(_0x393089['browserSessionId'])try{const {steps:_0x581239}=await getBrowserSessionSteps(_0x393089[_0x38585b(0x10a)]);_0x581239[_0x38585b(0x140)]>0x0&&(_0x655c42=_0x581239[_0x38585b(0x143)](_0x13202d=>{const _0x4df584=_0x38585b,_0xb93ac0=_0x13202d[_0x4df584(0xd2)]['find'](_0x5dee1b=>_0x5dee1b[_0x4df584(0x178)]===_0x4df584(0x11e)&&_0x5dee1b[_0x4df584(0xdb)]===_0x4df584(0x161))??_0x13202d['assets']['find'](_0x792d2a=>_0x792d2a[_0x4df584(0x178)]===_0x4df584(0x11e));let _0x84afed=null,_0x17e08b=null;if(_0xb93ac0){const _0x29dab3=_0xb93ac0[_0x4df584(0x180)][_0x4df584(0xc3)][_0x4df584(0x17a)]('/')[_0x4df584(0x106)]();_0x84afed=_0x434d6c+_0x4df584(0xfd)+_0x393089[_0x4df584(0x10a)]+_0x4df584(0x112)+_0x29dab3,_0x29dab3&&(_0x17e08b=_0x29dab3['replace'](/\.\w+$/,'')[_0x4df584(0x17b)](/^(key_)?\d+_/,'')[_0x4df584(0x17b)](/[-_]/g,'\x20'));}return{'description':_0x17e08b||_0x13202d[_0x4df584(0x12d)]||_0x13202d[_0x4df584(0xca)]||_0x4df584(0x14c)+_0x13202d[_0x4df584(0x17e)],'screenshot':_0x84afed,'is_key_step':_0x13202d['isKeyStep']};}));}catch{}return _0x655c42['length']===0x0&&_0x1d986a?.['screenshotUrls']&&(_0x655c42=_0x1d986a[_0x38585b(0x17c)][_0x38585b(0x143)]((_0x580650,_0x49b26f)=>({'description':_0x38585b(0x13e)+(_0x49b26f+0x1),'screenshot':_0x580650,'is_key_step':![]}))),{'description':_0x393089['description'],'result':_0x52f2ca['fKnRX'](getScenarioResult,_0x393089),'rationale':_0x52f2ca[_0x38585b(0x13f)](getScenarioRationale,_0x393089,_0x1d986a?.['agentResponse']),'steps':_0x655c42};})),_0x105c5a={'url':_0x2dfade['dashboardUrl'],'scenarios':_0x4547a5};process['stdout']['write'](_0x52f2ca[_0x420dbe(0xf0)](JSON['stringify'](_0x105c5a,null,0x2),'\x0a'));}export async function featureConcludeSession(_0x30490b){const _0x4cfd9a=_0x17361c,_0x24ee3b={'BEVEQ':'No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','lIsnD':function(_0x45a800,_0x52d459){return _0x45a800(_0x52d459);},'uRsrW':function(_0x884e35,_0x49f95b){return _0x884e35(_0x49f95b);},'vjfvO':_0x4cfd9a(0xc5),'oNzkj':'completed','oPnOC':function(_0x58adb9,_0xbf53e7){return _0x58adb9!==_0xbf53e7;},'IFnCk':function(_0x222742,_0x7bfed5,_0x65fcab){return _0x222742(_0x7bfed5,_0x65fcab);}},_0x164073=_0x30490b||await getActiveFeatureId();if(!_0x164073)throw new Error(_0x24ee3b[_0x4cfd9a(0xb8)]);const _0x543635=await _0x24ee3b['lIsnD'](getFeature,_0x164073);if(!_0x543635[_0x4cfd9a(0x15c)])throw new Error('No\x20active\x20session\x20for\x20this\x20feature\x20review.');const {sessions:_0x218202}=await _0x24ee3b['uRsrW'](listFeatureSessions,_0x164073),_0x527d13=_0x218202[_0x4cfd9a(0x13d)](_0x2efd91=>_0x2efd91['id']===_0x543635['currentSessionId']);if(!_0x527d13)throw new Error(_0x24ee3b['vjfvO']);if(_0x527d13[_0x4cfd9a(0xaa)]===_0x24ee3b[_0x4cfd9a(0x17d)]){console[_0x4cfd9a(0x16c)]('\x0a✅\x20Session\x20is\x20already\x20completed.');return;}if(_0x24ee3b['oPnOC'](_0x527d13[_0x4cfd9a(0xaa)],_0x4cfd9a(0xc7)))throw new Error('Cannot\x20conclude\x20session\x20with\x20status:\x20'+_0x527d13['status']);console['log']('\x0aConcluding\x20session...'),await _0x24ee3b['IFnCk'](concludeSession,_0x164073,_0x543635[_0x4cfd9a(0x15c)]),console['log']('\x0a✅\x20Session\x20'+_0x527d13['iteration']+'\x20concluded.'),console[_0x4cfd9a(0x16c)]('\x20\x20\x20The\x20feature\x20review\x20is\x20now\x20ready\x20for\x20human\x20review\x20on\x20the\x20Ranger\x20dashboard.');}function _0x4ce9(){const _0x56726a=['\x20\x20\x20Progress:\x20','in_progress','\x20—\x20no\x20comments','QxhFM','stepName','name','point','\x20incomplete','31144oafOEz','oACCv','\x20--current-branch','sKBxC','assets','unaddressedComments','authorName','3vyiYHm','189102QfpEFx','sessionId','includeDeleted','No\x20scenarios\x20found.','ZcEZK','timing','.md','nZqFK','\x20\x20\x20Description:\x20','content','iiJlW','verificationInProgressItems','iGHLt','ready','linkedSession','domRef','WMmBO','OHHkZ','totalCount','.png','NzCKF','\x20\x20\x20Created:\x20','approved','\x20scenarios.','repeat','scenario','UFxNO','coordinates','\x0a📁\x20Sessions\x20for\x20feature\x20review:\x20','blockedReason','pYWiJ','OYLbM','\x0a✅\x20Resumed\x20feature\x20review:\x20','exit','filter','Run:\x20ranger\x20create\x20\x22<name>\x22\x20to\x20create\x20a\x20new\x20feature\x20review','\x20\x20\x20Updated\x20branch\x20to:\x20','closed','utf-8','/api/v1/mcp/browser-sessions/','toLocaleString','qeOCB','latestReview','2904820wYntnq','bccLn','\x20\x20\x20ID:\x20','lxvEG','ZmSOz','pop','gVGCc','trim','):\x20\x22','browserSessionId','\x20\x20✅\x20No\x20feedback\x20to\x20address','\x20--include-deleted','isInteger','ukQfy','UtjtS','TDZeV','kcYpi','/artifacts/','submittedAt','jXEqr','\x20(v','selector','8949325LNfWXE','456nZYjDU','gitBranch','\x20\x20\x20Branch:\x20','aiiJr','CBJqt','Ybukc','screenshot','\x0a❌\x20No\x20scenarios\x20found\x20to\x20edit.','currentBranch','dashboardUrl','\x0a\x20\x20\x20Scenarios:','toFixed','10qOAnIn','stats','items','TGikW','SgKAw','verified','gitRepoUrl','version','all','description','list','canceledReason','json','1485981HGUcMx','reports','\x1b[1m','.\x20Feature\x20review\x20has\x20','\x20\x20\x20Run\x20`ranger\x20get-review`\x20to\x20see\x20what\x20needs\x20to\x20be\x20fixed.','No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.','Wzgqa','zPqIV','8692mhLQCo','blockedItems','yGkUx','comment_','find','Screenshot\x20','pxFrV','length','66QHaqGp','atTnm','map','vvADo','Please\x20finish\x20your\x20review\x20first:','iteration','XsxVy','AOEOc','fyRpo','UCHKd','\x20\x20\x20Completed:\x20','Step\x20','GnCBH','error','\x20unaddressed\x20reviewer\x20comment(s)\x20across\x20','incomplete','fecln','...','Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','type','feedback-images','incompleteReason','No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','\x20verified','\x0a➡️\x20\x20Set\x20as\x20active\x20feature\x20review','\x20\x20\x20\x20\x20\x20Approved','WLOqH','currentSessionId','completedAt','get','vEFJC','\x20Session\x20','after','BCLRU','\x20\x20💬\x20','HGEgM','\x20of\x20','IBzHP','\x20\x20Expected\x20flow:','HXgRE','slice','WYuZW','notes','log','checklistItems','BEFDi','git\x20rev-parse\x20--abbrev-ref\x20HEAD','terminalReason','createdAt','QHFeM','\x20/\x20','fdtaH','ipfEa','Next\x20page:\x20ranger\x20list\x20--offset\x20','UrQLQ','assetType','\x0a❌\x20No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.','split','replace','screenshotUrls','oNzkj','position','tRgQp','storage','\x0aNo\x20feature\x20reviews\x20found.','\x0a❌\x20Invalid\x20scenario\x20index:\x20','iEpxU','eDYjT','haPUs','qtyvV','scenarios','\x20in\x20progress','any','status','join','element','\x20\x20\x20\x20\x20Branch:\x20','pipe','cRnzS','stdin','FxEuc','completed','gASVK',':\x20\x22','toLocaleDateString','verification_in_progress','DGKHT','BEVEQ','offset','ZkYlU','env','\x20[has\x20reviewer\x20feedback]','HsceL','push','23366BsqRvm','spatial','assetUrl','limit','location','pendingItems','Current\x20session\x20not\x20found.'];_0x4ce9=function(){return _0x56726a;};return _0x4ce9();}export async function featureSessions(_0x36929e){const _0x1e5f19=_0x17361c,_0x338567={'TGikW':function(_0x33c861){return _0x33c861();},'WMmBO':_0x1e5f19(0x136),'HKDPQ':function(_0xa3bbd3,_0xc8a557){return _0xa3bbd3===_0xc8a557;},'BEFDi':'No\x20sessions\x20found.','oACCv':_0x1e5f19(0xc7)},_0x6986d4=_0x36929e||await _0x338567[_0x1e5f19(0x127)](getActiveFeatureId);if(!_0x6986d4)throw new Error(_0x338567[_0x1e5f19(0xe6)]);const _0x4bdddd=await getFeature(_0x6986d4);console['log'](_0x1e5f19(0xf2)+_0x4bdddd['name']+'\x0a');const {sessions:_0x5e05f8}=await listFeatureSessions(_0x6986d4);if(_0x338567['HKDPQ'](_0x5e05f8['length'],0x0)){console[_0x1e5f19(0x16c)](_0x338567[_0x1e5f19(0x16e)]);return;}for(const _0xff6871 of _0x5e05f8){const _0x10b321=_0xff6871[_0x1e5f19(0xaa)]===_0x1e5f19(0xb2)?'✅':_0xff6871['status']===_0x338567[_0x1e5f19(0xcf)]?'🔄':'▶️';console['log'](_0x10b321+_0x1e5f19(0x160)+_0xff6871[_0x1e5f19(0x146)]+'\x20('+_0xff6871['id']+')'),console['log']('\x20\x20\x20Status:\x20'+_0xff6871[_0x1e5f19(0xaa)]),console['log'](_0x1e5f19(0xeb)+new Date(_0xff6871[_0x1e5f19(0x171)])[_0x1e5f19(0xfe)]()),_0xff6871[_0x1e5f19(0x15d)]&&console['log'](_0x1e5f19(0x14b)+new Date(_0xff6871['completedAt'])['toLocaleString']()),console[_0x1e5f19(0x16c)]('');}}export async function featureAddScenario(_0x1ccd48,_0x2daf4c){const _0x3c6d81=_0x17361c,_0x5edd67={'EMzdp':function(_0x22b4fe){return _0x22b4fe();},'lhMiN':'No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','gbeue':function(_0xfec47,_0x538b6e,_0x40c464){return _0xfec47(_0x538b6e,_0x40c464);},'lxvEG':function(_0x50da55,_0x569e18,_0x1498bf){return _0x50da55(_0x569e18,_0x1498bf);}},_0x1b1117=_0x2daf4c||await _0x5edd67['EMzdp'](getActiveFeatureId);if(!_0x1b1117)throw new Error(_0x5edd67['lhMiN']);const _0xea61e6=await getFeature(_0x1b1117);if(_0xea61e6['latestReview']&&!_0xea61e6[_0x3c6d81(0x100)][_0x3c6d81(0x113)])throw new Error('Cannot\x20add\x20scenario:\x20feature\x20review\x20has\x20an\x20active\x20review.\x20Please\x20finish\x20your\x20review\x20first:\x20'+_0xea61e6['dashboardUrl']);await _0x5edd67['gbeue'](createChecklistItem,_0x1b1117,_0x1ccd48);const _0x2a25cb=await getFeature(_0x1b1117);console['log']('\x0a✅\x20Scenario\x20added'),_0x5edd67[_0x3c6d81(0x104)](displayFeature,_0x2a25cb,_0x2a25cb[_0x3c6d81(0x16d)]);}export async function featureEditScenario(_0x4e4742,_0x2e1629){const _0x38b05b=_0x17361c,_0x56be7c={'aVhsG':_0x38b05b(0x153),'uccEH':function(_0x2316fe,_0x4e4859){return _0x2316fe(_0x4e4859);},'eDYjT':'\x0a❌\x20Cannot\x20edit\x20scenario:\x20feature\x20review\x20has\x20an\x20active\x20review.','wOPkB':_0x38b05b(0x145),'WLOqH':function(_0x14b92a,_0x1a8c08){return _0x14b92a===_0x1a8c08;},'vdaav':_0x38b05b(0x11f),'QYVih':'\x0a❌\x20No\x20scenario\x20number\x20provided.\x20Use\x20--scenario\x20<number>.','Qbavt':function(_0x1df2af,_0x5c4370){return _0x1df2af<_0x5c4370;},'HrYyi':function(_0x5688b4,_0x2925e1){return _0x5688b4<_0x2925e1;},'ruBMZ':function(_0x5c0c20,_0x3b664e){return _0x5c0c20+_0x3b664e;},'qTXdx':function(_0x304392,_0x5947c1){return _0x304392(_0x5947c1);}},_0xbf531b=_0x2e1629['id']||await getActiveFeatureId();!_0xbf531b&&(console['error'](_0x38b05b(0x179)),console['error'](_0x56be7c['aVhsG']),process['exit'](0x1));const _0x136bbb=await _0x56be7c['uccEH'](getFeature,_0xbf531b);_0x136bbb[_0x38b05b(0x100)]&&!_0x136bbb[_0x38b05b(0x100)][_0x38b05b(0x113)]&&(console[_0x38b05b(0x14e)](_0x56be7c[_0x38b05b(0x184)]),console['error'](_0x56be7c['wOPkB']),console[_0x38b05b(0x14e)]('\x20\x20'+_0x136bbb[_0x38b05b(0x121)]),process[_0x38b05b(0xf7)](0x1));const _0x4c6bdf=_0x136bbb[_0x38b05b(0x16d)]||[];_0x56be7c[_0x38b05b(0x15b)](_0x4c6bdf[_0x38b05b(0x140)],0x0)&&(console['error'](_0x56be7c['vdaav']),process[_0x38b05b(0xf7)](0x1));if(_0x2e1629[_0x38b05b(0xef)]===undefined){console[_0x38b05b(0x14e)](_0x56be7c['QYVih']),console[_0x38b05b(0x16c)]('\x0aAvailable\x20scenarios:');for(let _0x4cc497=0x0;_0x56be7c['Qbavt'](_0x4cc497,_0x4c6bdf[_0x38b05b(0x140)]);_0x4cc497++){console['log']('\x20\x20'+(_0x4cc497+0x1)+'.\x20'+_0x4c6bdf[_0x4cc497]['description']);}process[_0x38b05b(0xf7)](0x1);}const _0x23c010=_0x2e1629['scenario']-0x1;if(_0x56be7c['HrYyi'](_0x23c010,0x0)||_0x23c010>=_0x4c6bdf['length']){console[_0x38b05b(0x14e)](_0x38b05b(0x182)+_0x2e1629[_0x38b05b(0xef)]+_0x38b05b(0x134)+_0x4c6bdf['length']+_0x38b05b(0xed)),console['log']('\x0aAvailable\x20scenarios:');for(let _0x1c70fe=0x0;_0x56be7c['HrYyi'](_0x1c70fe,_0x4c6bdf[_0x38b05b(0x140)]);_0x1c70fe++){console['log']('\x20\x20'+_0x56be7c['ruBMZ'](_0x1c70fe,0x1)+'.\x20'+_0x4c6bdf[_0x1c70fe]['description']);}process['exit'](0x1);}const _0x178fd6=_0x4c6bdf[_0x23c010];await updateChecklistItem(_0xbf531b,_0x178fd6['id'],{'description':_0x4e4742});const _0x3224f6=await _0x56be7c['qTXdx'](getFeature,_0xbf531b);console['log']('\x0a✅\x20Scenario\x20updated'),displayFeature(_0x3224f6,_0x3224f6[_0x38b05b(0x16d)]);}async function downloadFeedbackImage(_0x3eb193,_0x2e6640){const _0x531de6=_0x17361c,_0x4c8866={'lAboo':function(_0x557ae8){return _0x557ae8();},'LThaF':_0x531de6(0x155),'qeOCB':function(_0x47d952,_0x196fbd,_0x4cd8f6){return _0x47d952(_0x196fbd,_0x4cd8f6);}};try{const _0x685fe=join(_0x4c8866['lAboo'](getRangerDir),_0x4c8866['LThaF']);await _0x4c8866[_0x531de6(0xff)](mkdir,_0x685fe,{'recursive':!![]});const _0x273824=join(_0x685fe,_0x531de6(0x13c)+_0x2e6640+_0x531de6(0xe9)),_0x15317f=await fetch(_0x3eb193);if(!_0x15317f['ok'])return null;const _0x3b2796=Buffer['from'](await _0x15317f['arrayBuffer']());return await _0x4c8866['qeOCB'](writeFile,_0x273824,_0x3b2796),_0x273824;}catch{return null;}}export async function featureGetReview(_0x5819b3){const _0x5f3f2e=_0x17361c,_0x457842={'haPUs':function(_0x47f8fc){return _0x47f8fc();},'KFBHA':'No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','HsceL':function(_0x3a8753,_0x2a2464){return _0x3a8753===_0x2a2464;},'aKgOG':_0x5f3f2e(0xd9),'raFJy':function(_0x433e4a,_0x13bdae){return _0x433e4a>_0x13bdae;},'DGKHT':'en-US','fsngP':'short','UCHKd':'\x20>\x20','UFqqb':_0x5f3f2e(0xac),'atTnm':function(_0x41f386,_0x2ec6b5){return _0x41f386>=_0x2ec6b5;}},_0xa3f7c9=_0x5819b3||await _0x457842[_0x5f3f2e(0x185)](getActiveFeatureId);if(!_0xa3f7c9)throw new Error(_0x457842['KFBHA']);const _0x4b672c=await getFeature(_0xa3f7c9),{items:_0x48441b}=await getActionItems(_0xa3f7c9);console[_0x5f3f2e(0x16c)]('\x0a📋\x20Feedback\x20for:\x20'+_0x4b672c['name']+'\x20('+_0x4b672c['id']+')\x0a');if(_0x457842[_0x5f3f2e(0xbd)](_0x48441b['length'],0x0)){console['log'](_0x457842['aKgOG']);return;}for(let _0x51d9ae=0x0;_0x51d9ae<_0x48441b['length'];_0x51d9ae++){const _0x1e4039=_0x48441b[_0x51d9ae],_0x2ccfe6=_0x1e4039[_0x5f3f2e(0x12b)]>0x1?_0x5f3f2e(0x115)+_0x1e4039[_0x5f3f2e(0x12b)]+')':'',_0xd556a8=await getItemFeedback(_0xa3f7c9,_0x1e4039['id']);if(_0x457842['raFJy'](_0xd556a8['unaddressedComments'][_0x5f3f2e(0x140)],0x0)){console['log']('Scenario\x20'+(_0x51d9ae+0x1)+_0x5f3f2e(0xb4)+_0x1e4039['description']+'\x22'+_0x2ccfe6+'\x20—\x20'+_0xd556a8['unaddressedComments']['length']+'\x20unaddressed\x20comment(s)');for(const _0xbfa419 of _0xd556a8[_0x5f3f2e(0xd3)]){const _0x42cff0=new Date(_0xbfa419['createdAt'])['toLocaleDateString'](_0x457842[_0x5f3f2e(0xb7)],{'month':_0x457842['fsngP'],'day':'numeric'}),_0x582565=_0xbfa419[_0x5f3f2e(0xd4)]||_0xbfa419['authorEmail']||'Unknown';console[_0x5f3f2e(0x16c)](_0x5f3f2e(0x163)+_0x582565+'\x20('+_0x42cff0+_0x5f3f2e(0x109)+_0xbfa419[_0x5f3f2e(0xdf)]+'\x22');if(_0xbfa419['assetUrl']){const _0x2f9031=await downloadFeedbackImage(_0xbfa419[_0x5f3f2e(0xc1)],_0xbfa419['id']);_0x2f9031&&console['log']('\x20\x20\x20\x20\x20📷\x20Screenshot:\x20'+_0x2f9031);}if(_0xbfa419['domRef']){const _0x48da60=_0xbfa419[_0x5f3f2e(0xe5)][_0x5f3f2e(0x116)][_0x5f3f2e(0x17a)](_0x457842[_0x5f3f2e(0x14a)])[_0x5f3f2e(0x106)]()?.[_0x5f3f2e(0x17a)](':')[0x0]||_0x457842['UFqqb'],_0x33a916=_0xbfa419[_0x5f3f2e(0xe5)]['textContent']?'\x20\x22'+_0xbfa419[_0x5f3f2e(0xe5)]['textContent'][_0x5f3f2e(0x169)](0x0,0x3c)+'\x22':'';console['log']('\x20\x20\x20\x20\x20🎯\x20Element:\x20<'+_0x48da60+'>'+_0x33a916),console['log']('\x20\x20\x20\x20\x20📋\x20Selector:\x20'+_0xbfa419['domRef'][_0x5f3f2e(0x116)]);}else{if(_0xbfa419['spatial']){const _0x3b112b=_0xbfa419[_0x5f3f2e(0xc0)][_0x5f3f2e(0xf1)];_0xbfa419['spatial'][_0x5f3f2e(0x154)]===_0x5f3f2e(0xcc)&&_0x457842[_0x5f3f2e(0x142)](_0x3b112b['length'],0x2)?console[_0x5f3f2e(0x16c)]('\x20\x20\x20\x20\x20📍\x20Annotation:\x20point\x20at\x20('+_0x3b112b[0x0][_0x5f3f2e(0x123)](0x2)+',\x20'+_0x3b112b[0x1][_0x5f3f2e(0x123)](0x2)+')'):console['log']('\x20\x20\x20\x20\x20📍\x20Annotation:\x20'+_0xbfa419['spatial']['type']+'\x20at\x20['+_0x3b112b['map'](_0x37b1e2=>_0x37b1e2['toFixed'](0x2))['join'](',\x20')+']');}}}if(_0xd556a8['canonicalFlow']){console[_0x5f3f2e(0x16c)](_0x5f3f2e(0x167));for(const _0x5e8b9c of _0xd556a8['canonicalFlow']['split']('\x0a')){console[_0x5f3f2e(0x16c)]('\x20\x20\x20\x20'+_0x5e8b9c);}}}else console['log']('Scenario\x20'+(_0x51d9ae+0x1)+':\x20\x22'+_0x1e4039[_0x5f3f2e(0x12d)]+'\x22'+_0x2ccfe6+_0x5f3f2e(0xc8)),console[_0x5f3f2e(0x16c)](_0x5f3f2e(0x10b));console[_0x5f3f2e(0x16c)]('');}}export async function featureDelete(_0x4e5c51){const _0x28fe11=_0x17361c,_0x3ce234={'UVfwI':function(_0x19b6f3){return _0x19b6f3();},'cdgYW':'No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','HTGID':function(_0x4e5750,_0x2f0236){return _0x4e5750(_0x2f0236);},'hKaPp':function(_0x17bae6,_0x22b35a){return _0x17bae6+_0x22b35a;},'WYuZW':'\x20\x20\x20To\x20restore\x20it,\x20run:\x20ranger\x20restore\x20'},_0xc2c5b7=_0x4e5c51||await _0x3ce234['UVfwI'](getActiveFeatureId);if(!_0xc2c5b7)throw new Error(_0x3ce234['cdgYW']);const _0x1360ba=await getFeature(_0xc2c5b7);await _0x3ce234['HTGID'](softDeleteFeature,_0xc2c5b7),console['log']('\x0a🗑️\x20\x20Deleted\x20feature\x20review:\x20'+_0x1360ba[_0x28fe11(0xcb)]+'\x20('+_0xc2c5b7+')'),console[_0x28fe11(0x16c)](_0x3ce234['hKaPp'](_0x3ce234[_0x28fe11(0x16a)],_0xc2c5b7));}export async function featureRestore(_0x288b3f){const _0x3712b7=_0x17361c,_0xb9fcd3={'NzCKF':function(_0x1d834c,_0x499c88){return _0x1d834c(_0x499c88);}};await _0xb9fcd3[_0x3712b7(0xea)](restoreFeature,_0x288b3f);const _0x4d562b=await _0xb9fcd3['NzCKF'](getFeature,_0x288b3f);console[_0x3712b7(0x16c)]('\x0a✅\x20Restored\x20feature\x20review:\x20'+_0x4d562b['name']+'\x20('+_0x288b3f+')'),displayFeature(_0x4d562b,_0x4d562b[_0x3712b7(0x16d)]);}
@@ -1 +1 @@
1
- (function(_0x231ea5,_0x55f1ba){const _0x1dcde7=_0xcd9c,_0x3c3c75=_0x231ea5();while(!![]){try{const _0x48eb2b=parseInt(_0x1dcde7(0xbe))/0x1*(parseInt(_0x1dcde7(0xc9))/0x2)+-parseInt(_0x1dcde7(0xc1))/0x3*(-parseInt(_0x1dcde7(0xbd))/0x4)+-parseInt(_0x1dcde7(0xc0))/0x5*(-parseInt(_0x1dcde7(0xba))/0x6)+parseInt(_0x1dcde7(0xb8))/0x7*(parseInt(_0x1dcde7(0xb9))/0x8)+parseInt(_0x1dcde7(0xc3))/0x9*(parseInt(_0x1dcde7(0xbc))/0xa)+parseInt(_0x1dcde7(0xc6))/0xb+-parseInt(_0x1dcde7(0xc4))/0xc*(parseInt(_0x1dcde7(0xbf))/0xd);if(_0x48eb2b===_0x55f1ba)break;else _0x3c3c75['push'](_0x3c3c75['shift']());}catch(_0x2a75d4){_0x3c3c75['push'](_0x3c3c75['shift']());}}}(_0x460c,0x4e033));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 _0x460c(){const _0x25d003=['172675uwhKHN','363177aSKcOM','SIGINT','56601yzDPWD','10670472SrejdR','Unknown\x20hook:\x20','4939869NwIiMy','once','Valid\x20hooks:\x20','69412KhjIvI','error','7CQRxOh','895952MwwNth','48ghlfaF','exit','40McLwxx','8vWilgJ','3XyRThG','13mzXuMM'];_0x460c=function(){return _0x25d003;};return _0x460c();}function _0xcd9c(_0x3a161d,_0x5f8b98){_0x3a161d=_0x3a161d-0xb7;const _0x460cf1=_0x460c();let _0xcd9c88=_0x460cf1[_0x3a161d];return _0xcd9c88;}function installCancellationHandlers(){const _0x21cd16=_0xcd9c;if(cancellationHandlersInstalled)return;const _0x4f1d41=()=>{process['exit'](0x0);};process[_0x21cd16(0xc7)](_0x21cd16(0xc2),_0x4f1d41),process['once']('SIGTERM',_0x4f1d41),process[_0x21cd16(0xc7)]('SIGHUP',_0x4f1d41),cancellationHandlersInstalled=!![];}export async function hook(_0x5997c9,_0x39af45){const _0x5cd1bf=_0xcd9c;installCancellationHandlers();const _0x41b453=HOOKS[_0x5997c9];if(!_0x41b453){const _0x2dc3f7=Object['keys'](HOOKS)['join'](',\x20');console[_0x5cd1bf(0xb7)](_0x5cd1bf(0xc5)+_0x5997c9),console['error'](_0x5cd1bf(0xc8)+_0x2dc3f7),process[_0x5cd1bf(0xbb)](0x1);}await _0x41b453(_0x39af45);}
1
+ (function(_0x218a43,_0x3849a2){const _0x575b7e=_0x7e85,_0x4feb78=_0x218a43();while(!![]){try{const _0xa32cf0=parseInt(_0x575b7e(0x15e))/0x1+parseInt(_0x575b7e(0x15f))/0x2+parseInt(_0x575b7e(0x168))/0x3+parseInt(_0x575b7e(0x169))/0x4*(-parseInt(_0x575b7e(0x164))/0x5)+-parseInt(_0x575b7e(0x160))/0x6*(-parseInt(_0x575b7e(0x166))/0x7)+parseInt(_0x575b7e(0x163))/0x8*(parseInt(_0x575b7e(0x15b))/0x9)+-parseInt(_0x575b7e(0x15c))/0xa;if(_0xa32cf0===_0x3849a2)break;else _0x4feb78['push'](_0x4feb78['shift']());}catch(_0x1420b7){_0x4feb78['push'](_0x4feb78['shift']());}}}(_0x4b53,0x1ffb2));import{sessionStart,sessionEnd,preCompact,postEdit,planStart,planReminder,exitPlanMode,stopHook,enable,disable,autoPrompt}from'./hooks/index.js';const HOOKS={'session-start':sessionStart,'session-end':sessionEnd,'pre-compact':preCompact,'post-edit':postEdit,'plan-start':planStart,'plan-reminder':planReminder,'exit-plan-mode':exitPlanMode,'stop':stopHook,'enable':enable,'disable':disable,'auto-prompt':autoPrompt};function _0x7e85(_0x39325d,_0x486184){_0x39325d=_0x39325d-0x15a;const _0x4b53ed=_0x4b53();let _0x7e8555=_0x4b53ed[_0x39325d];return _0x7e8555;}let cancellationHandlersInstalled=![];function installCancellationHandlers(){const _0xe902db=_0x7e85,_0x298f39={'cprJd':'SIGTERM'};if(cancellationHandlersInstalled)return;const _0x260a2d=()=>{const _0x3d5e5b=_0x7e85;process[_0x3d5e5b(0x162)](0x0);};process['once']('SIGINT',_0x260a2d),process['once'](_0x298f39['cprJd'],_0x260a2d),process['once'](_0xe902db(0x15a),_0x260a2d),cancellationHandlersInstalled=!![];}export async function hook(_0x240e79,_0x5231bc){const _0x5e005a=_0x7e85,_0x4f0841={'WHCmp':function(_0x5480bb){return _0x5480bb();},'irysJ':function(_0x62289f,_0xe8ea19){return _0x62289f(_0xe8ea19);}};_0x4f0841[_0x5e005a(0x165)](installCancellationHandlers);const _0x3959a6=HOOKS[_0x240e79];if(!_0x3959a6){const _0x8c73b7=Object['keys'](HOOKS)[_0x5e005a(0x161)](',\x20');console['error']('Unknown\x20hook:\x20'+_0x240e79),console[_0x5e005a(0x167)](_0x5e005a(0x15d)+_0x8c73b7),process[_0x5e005a(0x162)](0x1);}await _0x4f0841['irysJ'](_0x3959a6,_0x5231bc);}function _0x4b53(){const _0xa5ac0=['492318aDfFtb','4OMzoJy','SIGHUP','2178YPoTZL','2839240TRghKQ','Valid\x20hooks:\x20','24746YGhOCV','156120ceUiAZ','6sbSXoK','join','exit','8312lfFhTg','566155DCouRZ','WHCmp','68593HaTwrf','error'];_0x4b53=function(){return _0xa5ac0;};return _0x4b53();}
@@ -1 +1 @@
1
- function _0x5447(_0x475d4b,_0x231bf4){_0x475d4b=_0x475d4b-0xdf;const _0x1da71e=_0x1da7();let _0x5447e6=_0x1da71e[_0x475d4b];return _0x5447e6;}const _0x35e6c5=_0x5447;(function(_0x482383,_0x150834){const _0x2891f9=_0x5447,_0x2895ae=_0x482383();while(!![]){try{const _0x164a19=-parseInt(_0x2891f9(0xe4))/0x1*(-parseInt(_0x2891f9(0xec))/0x2)+parseInt(_0x2891f9(0xe7))/0x3*(parseInt(_0x2891f9(0xe8))/0x4)+-parseInt(_0x2891f9(0xe3))/0x5*(parseInt(_0x2891f9(0xe9))/0x6)+-parseInt(_0x2891f9(0xe5))/0x7*(-parseInt(_0x2891f9(0xee))/0x8)+parseInt(_0x2891f9(0xe0))/0x9*(-parseInt(_0x2891f9(0xe2))/0xa)+-parseInt(_0x2891f9(0xed))/0xb*(parseInt(_0x2891f9(0xdf))/0xc)+-parseInt(_0x2891f9(0xea))/0xd*(-parseInt(_0x2891f9(0xeb))/0xe);if(_0x164a19===_0x150834)break;else _0x2895ae['push'](_0x2895ae['shift']());}catch(_0xad07aa){_0x2895ae['push'](_0x2895ae['shift']());}}}(_0x1da7,0x869be));import{readHookInput}from'./output.js';import{isSessionEnabled,hasSessionBeenPrompted,markSessionPrompted}from'../utils/sessionCache.js';import{resolveHookMode}from'../utils/environment.js';const AUTO_PROMPT_TEXT=_0x35e6c5(0xe1);function _0x1da7(){const _0x3d291a=['2636293Xylvvg','40Saizph','36twKakA','90xOyMQr','\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.','1028170JgGasw','518845XZmUAK','118TVZgKc','774893EkBSbJ','session_id','147171dFraYx','16LYuBLn','48jsEDfH','2939690ehakbP','140uhRqUW','1994sblKqd'];_0x1da7=function(){return _0x3d291a;};return _0x1da7();}export async function autoPrompt(){const _0x968688=_0x35e6c5,_0x652e85={'mrzdh':function(_0x126fb2){return _0x126fb2();},'bfFDD':function(_0x206ba3,_0x57ead9){return _0x206ba3(_0x57ead9);}};if(resolveHookMode()==='off')return;const _0x1eacf5=await _0x652e85['mrzdh'](readHookInput),_0x1d0712=_0x1eacf5?.[_0x968688(0xe6)];if(!_0x1d0712)return;if(isSessionEnabled(_0x1d0712)||_0x652e85['bfFDD'](hasSessionBeenPrompted,_0x1d0712))return;markSessionPrompted(_0x1d0712),console['log'](AUTO_PROMPT_TEXT);}
1
+ (function(_0x18a337,_0x4a7f3c){const _0x2199cd=_0x5aa9,_0x679b29=_0x18a337();while(!![]){try{const _0x40d7f3=-parseInt(_0x2199cd(0x149))/0x1+parseInt(_0x2199cd(0x151))/0x2*(-parseInt(_0x2199cd(0x14d))/0x3)+parseInt(_0x2199cd(0x152))/0x4*(-parseInt(_0x2199cd(0x150))/0x5)+-parseInt(_0x2199cd(0x14b))/0x6+parseInt(_0x2199cd(0x154))/0x7+parseInt(_0x2199cd(0x14a))/0x8*(parseInt(_0x2199cd(0x14c))/0x9)+parseInt(_0x2199cd(0x14f))/0xa;if(_0x40d7f3===_0x4a7f3c)break;else _0x679b29['push'](_0x679b29['shift']());}catch(_0x51ef47){_0x679b29['push'](_0x679b29['shift']());}}}(_0x1cf0,0xcdf3a));function _0x5aa9(_0x5d4b84,_0x309f34){_0x5d4b84=_0x5d4b84-0x149;const _0x1cf09d=_0x1cf0();let _0x5aa9e2=_0x1cf09d[_0x5d4b84];return _0x5aa9e2;}import{readHookInput}from'./output.js';function _0x1cf0(){const _0x1248ca=['6742834QjUArj','1093945cjMdTQ','6406056qegFet','4147926hRpCjP','9aeKyMv','15195boCKIO','log','23935680kmmRck','40uHfIQt','302fLriRV','381964aupLwr','session_id'];_0x1cf0=function(){return _0x1248ca;};return _0x1cf0();}import{isSessionEnabled,hasSessionBeenPrompted,markSessionPrompted}from'../utils/sessionCache.js';import{resolveHookMode}from'../utils/environment.js';const AUTO_PROMPT_TEXT='\x0a[Ranger]\x20Before\x20responding,\x20assess\x20whether\x20this\x20task\x20involves\x20frontend,\x20UI,\x20or\x20browser-facing\x20work.\x0a\x0a-\x20If\x20it\x20does:\x20enable\x20Ranger\x20Feature\x20Review\x20yourself\x20by\x20running\x20`ranger\x20hook\x20enable`\x20(Bash\x20tool),\x20tell\x20the\x20user\x20in\x20one\x20short\x20line\x20that\x20you\x27re\x20doing\x20so\x20(e.g.\x20\x22Enabling\x20Ranger\x20feature\x20review\x20—\x20I\x27ll\x20verify\x20this\x20in\x20a\x20real\x20browser\x20as\x20I\x20work.\x22),\x20then\x20continue\x20with\x20their\x20request.\x0a-\x20If\x20it\x20does\x20not:\x20just\x20continue\x20with\x20the\x20request\x20and\x20say\x20nothing\x20about\x20Ranger.\x0a\x0aDecide\x20and\x20act\x20on\x20your\x20own.\x20Do\x20NOT\x20ask\x20the\x20user\x20whether\x20to\x20enable\x20Ranger,\x20and\x20do\x20NOT\x20wait\x20for\x20confirmation\x20—\x20that\x20blocks\x20autonomous\x20and\x20one-shot\x20agents.\x20The\x20user\x20can\x20toggle\x20Ranger\x20anytime\x20with\x20/ranger:enable\x20or\x20/ranger:disable.';export async function autoPrompt(){const _0x30fef1=_0x5aa9,_0x12f3c1={'YQXBQ':function(_0x378eba,_0x108362){return _0x378eba(_0x108362);}};if(resolveHookMode()==='off')return;const _0x3c8ac7=await readHookInput(),_0x2c2a58=_0x3c8ac7?.[_0x30fef1(0x153)];if(!_0x2c2a58)return;if(_0x12f3c1['YQXBQ'](isSessionEnabled,_0x2c2a58)||hasSessionBeenPrompted(_0x2c2a58))return;_0x12f3c1['YQXBQ'](markSessionPrompted,_0x2c2a58),console[_0x30fef1(0x14e)](AUTO_PROMPT_TEXT);}
@@ -1 +1 @@
1
- (function(_0x54f64a,_0xbb1bbe){const _0xb0936c=_0x3d22,_0x26a93e=_0x54f64a();while(!![]){try{const _0x4786b6=-parseInt(_0xb0936c(0x16a))/0x1+-parseInt(_0xb0936c(0x15c))/0x2+-parseInt(_0xb0936c(0x15b))/0x3*(parseInt(_0xb0936c(0x15d))/0x4)+parseInt(_0xb0936c(0x162))/0x5+-parseInt(_0xb0936c(0x158))/0x6*(-parseInt(_0xb0936c(0x161))/0x7)+-parseInt(_0xb0936c(0x167))/0x8*(parseInt(_0xb0936c(0x169))/0x9)+parseInt(_0xb0936c(0x163))/0xa*(parseInt(_0xb0936c(0x160))/0xb);if(_0x4786b6===_0xbb1bbe)break;else _0x26a93e['push'](_0x26a93e['shift']());}catch(_0xc5dd9b){_0x26a93e['push'](_0x26a93e['shift']());}}}(_0x20b4,0x5e63e));function _0x3d22(_0x1a8bb3,_0x34022b){_0x1a8bb3=_0x1a8bb3-0x158;const _0x20b4b6=_0x20b4();let _0x3d2253=_0x20b4b6[_0x1a8bb3];return _0x3d2253;}function _0x20b4(){const _0x50f208=['fPnhT','#\x20RANGER\x20DISABLED\x0a\x0aThe\x20user\x20has\x20expressly\x20disabled\x20Ranger\x20hooks\x20for\x20this\x20session','ZdYdH','8rjozok','env','5906997xTFrrL','92968knDPHW','330txDKmT','CLAUDE_SESSION_ID','yJYbB','6NrICyp','581868RCbJxU','1297192DQwCpv','rPzfr','master','10797193dHLkqw','76846mneXVU','2450500JjRkAq','10baoNMY'];_0x20b4=function(){return _0x50f208;};return _0x20b4();}import{disableSession,disableBranch,getCurrentBranch}from'../utils/sessionCache.js';import{printBlock}from'./output.js';export async function disable(_0x4d8519){const _0x308709=_0x3d22,_0x436433={'rPzfr':function(_0x20984e,_0x50c8c1){return _0x20984e(_0x50c8c1);},'fPnhT':function(_0x388689,_0x55f10b){return _0x388689!==_0x55f10b;},'ZdYdH':function(_0x1b5216,_0xd5cb4f){return _0x1b5216(_0xd5cb4f);},'NJLmx':function(_0x31915a,_0x5f5760){return _0x31915a!==_0x5f5760;},'yJYbB':function(_0x4a509a,_0x7ee68f){return _0x4a509a!==_0x7ee68f;}},_0x188e6b=_0x4d8519||process[_0x308709(0x168)][_0x308709(0x159)]||'';_0x188e6b&&_0x436433[_0x308709(0x15e)](disableSession,_0x188e6b);const _0xc43736=getCurrentBranch();_0xc43736&&_0xc43736!=='main'&&_0x436433[_0x308709(0x164)](_0xc43736,'master')&&disableBranch(_0xc43736),_0x436433[_0x308709(0x166)](printBlock,_0x308709(0x165)+(_0xc43736&&_0x436433['NJLmx'](_0xc43736,'main')&&_0x436433[_0x308709(0x15a)](_0xc43736,_0x308709(0x15f))?'\x20and\x20branch\x20\x27'+_0xc43736+'\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 _0x1669(_0x3b4960,_0x529734){_0x3b4960=_0x3b4960-0xc1;const _0x1543f9=_0x1543();let _0x166977=_0x1543f9[_0x3b4960];return _0x166977;}(function(_0x489f18,_0x101d52){const _0x27f64b=_0x1669,_0x1ad923=_0x489f18();while(!![]){try{const _0x40b5ee=parseInt(_0x27f64b(0xc4))/0x1*(-parseInt(_0x27f64b(0xd0))/0x2)+-parseInt(_0x27f64b(0xc9))/0x3+parseInt(_0x27f64b(0xc5))/0x4+-parseInt(_0x27f64b(0xd1))/0x5*(parseInt(_0x27f64b(0xce))/0x6)+-parseInt(_0x27f64b(0xcc))/0x7+-parseInt(_0x27f64b(0xc1))/0x8*(-parseInt(_0x27f64b(0xcb))/0x9)+parseInt(_0x27f64b(0xc2))/0xa;if(_0x40b5ee===_0x101d52)break;else _0x1ad923['push'](_0x1ad923['shift']());}catch(_0x45a8c1){_0x1ad923['push'](_0x1ad923['shift']());}}}(_0x1543,0x7a792));import{disableSession,disableBranch,getCurrentBranch}from'../utils/sessionCache.js';import{printBlock}from'./output.js';export async function disable(_0xbba00f){const _0x3b568e=_0x1669,_0x2cea91={'GfspV':function(_0x134658,_0x393b55){return _0x134658(_0x393b55);},'CtYrP':function(_0x41aec4){return _0x41aec4();},'IogVJ':function(_0xc65835,_0x301a72){return _0xc65835!==_0x301a72;},'ULNZl':function(_0x104e6c,_0x2dcab7){return _0x104e6c(_0x2dcab7);},'Svere':function(_0x5ebcf3,_0x2e90a0){return _0x5ebcf3!==_0x2e90a0;}},_0x347882=_0xbba00f||process[_0x3b568e(0xd2)]['CLAUDE_SESSION_ID']||'';_0x347882&&_0x2cea91['GfspV'](disableSession,_0x347882);const _0x86b34d=_0x2cea91['CtYrP'](getCurrentBranch);_0x86b34d&&_0x86b34d!=='main'&&_0x2cea91[_0x3b568e(0xc6)](_0x86b34d,_0x3b568e(0xca))&&_0x2cea91[_0x3b568e(0xc8)](disableBranch,_0x86b34d),printBlock(_0x3b568e(0xc7)+(_0x86b34d&&_0x86b34d!=='main'&&_0x2cea91[_0x3b568e(0xcf)](_0x86b34d,'master')?_0x3b568e(0xcd)+_0x86b34d+'\x27':'')+_0x3b568e(0xc3));}function _0x1543(){const _0xf1efc0=['.\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`.','5909VxRcQw','1027532IOCpMq','IogVJ','#\x20RANGER\x20DISABLED\x0a\x0aThe\x20user\x20has\x20expressly\x20disabled\x20Ranger\x20hooks\x20for\x20this\x20session','ULNZl','508704fMrCig','master','27GuOzqy','3860997cNrYON','\x20and\x20branch\x20\x27','1260564VNSetf','Svere','158HMdwSx','5YZjesc','env','88216PMSuYz','16097300QdFuJx'];_0x1543=function(){return _0xf1efc0;};return _0x1543();}
@@ -1 +1 @@
1
- (function(_0x35129f,_0x46439d){const _0x313bcb=_0x833b,_0x718acc=_0x35129f();while(!![]){try{const _0x456fbf=-parseInt(_0x313bcb(0xfa))/0x1*(-parseInt(_0x313bcb(0x10d))/0x2)+-parseInt(_0x313bcb(0x110))/0x3*(-parseInt(_0x313bcb(0xfd))/0x4)+parseInt(_0x313bcb(0x106))/0x5*(-parseInt(_0x313bcb(0x10c))/0x6)+-parseInt(_0x313bcb(0x102))/0x7*(parseInt(_0x313bcb(0xfe))/0x8)+parseInt(_0x313bcb(0x100))/0x9+parseInt(_0x313bcb(0xf9))/0xa*(parseInt(_0x313bcb(0x10b))/0xb)+parseInt(_0x313bcb(0x108))/0xc;if(_0x456fbf===_0x46439d)break;else _0x718acc['push'](_0x718acc['shift']());}catch(_0x6b9bfd){_0x718acc['push'](_0x718acc['shift']());}}}(_0x2b69,0xc0fea));function _0x833b(_0x1f9447,_0x412907){_0x1f9447=_0x1f9447-0xf8;const _0x2b69ac=_0x2b69();let _0x833b65=_0x2b69ac[_0x1f9447];return _0x833b65;}import{enableSession,getCurrentBranch}from'../utils/sessionCache.js';import{getToken}from'../utils/keychain.js';import{getRangerSkillContent}from'../utils/skillContent.js';import{printBlock}from'./output.js';import{update}from'../update.js';export async function enable(_0x452b23){const _0x234841=_0x833b,_0x332989={'sIhMt':function(_0x83ccaf,_0x522912){return _0x83ccaf(_0x522912);},'WJHdi':function(_0x7c4d52){return _0x7c4d52();},'wDgfE':function(_0x14f00a,_0x551d74){return _0x14f00a(_0x551d74);},'RXhvf':'main','OBGdK':function(_0x38ccaf,_0x462e37){return _0x38ccaf!==_0x462e37;},'uepLM':'master','EjyeI':function(_0x4584b5,_0x29d447){return _0x4584b5(_0x29d447);}},_0x194462=_0x452b23||process[_0x234841(0x104)]['CLAUDE_SESSION_ID']||'',_0x568049=_0x332989['sIhMt'](Boolean,_0x452b23),_0x85ab31=await getToken();if(!_0x85ab31){const _0x14094c=_0x568049?_0x234841(0x103):_0x234841(0x105),_0x438ae9=_0x568049?'Restart\x20your\x20OpenCode\x20session\x20after\x20setup.':_0x234841(0x10f);printBlock(_0x234841(0x10e)+_0x14094c+'`\x0a\x0aA\x20browser\x20will\x20open\x20for\x20authentication.\x20A\x20human\x20needs\x20to\x20complete\x20the\x20login.\x0a'+_0x438ae9);return;}try{await _0x332989[_0x234841(0xff)](update);}catch{}_0x194462&&_0x332989[_0x234841(0xf8)](enableSession,_0x194462);const _0x37b3e8=getCurrentBranch(),_0x11f6de=_0x37b3e8&&_0x37b3e8!==_0x332989['RXhvf']&&_0x332989[_0x234841(0xfb)](_0x37b3e8,_0x332989[_0x234841(0x107)])?_0x234841(0x10a)+_0x37b3e8+_0x234841(0x109):'',_0x2af709=getRangerSkillContent();_0x332989[_0x234841(0xfc)](printBlock,'#\x20RANGER\x20ENABLED'+_0x11f6de+_0x234841(0x101)+_0x2af709+'\x0a\x0a##\x20Quick\x20Reference\x0a\x0a**In\x20plan\x20mode:**\x20Include\x20Ranger\x20Feature\x20Review\x20Specification\x20at\x20end\x20of\x20plan.\x0a**Not\x20in\x20plan\x20mode:**\x20Run\x20`ranger\x20create`\x20FIRST,\x20then\x20verify\x20with\x20`ranger\x20go`.');}function _0x2b69(){const _0x5e390e=['\x27\x20is\x20now\x20enabled**\x20-\x20Ranger\x20will\x20stay\x20active\x20on\x20this\x20branch\x20across\x20sessions.','\x0a\x0a**Branch\x20\x27','2634797GclAnD','50178dNlFuT','4796EzvaBF','#\x20RANGER\x20SETUP\x20REQUIRED\x0a\x0aThe\x20Ranger\x20CLI\x20is\x20not\x20configured.\x20To\x20get\x20started:\x0a\x0a1.\x20Install:\x20`npm\x20install\x20-g\x20@ranger-testing/ranger-cli`\x0a2.\x20Run:\x20`','Restart\x20your\x20Claude\x20Code\x20session\x20after\x20setup.','3esoQuS','wDgfE','30AifAaO','73mMTzQP','OBGdK','EjyeI','2485412OypGNf','8GasRTD','WJHdi','7561044mNFPIc','\x0a\x0a**For\x20ANY\x20UI\x20work,\x20you\x20MUST\x20use\x20the\x20/ranger\x20skill.**\x0a\x0a','4383393nlsufU','ranger\x20setup\x20--opencode','env','ranger\x20setup','565cjQvUD','uepLM','79440pSOZub'];_0x2b69=function(){return _0x5e390e;};return _0x2b69();}
1
+ (function(_0x5e2a9f,_0x2eff7a){const _0x1f30d7=_0x33ce,_0x1a8aa7=_0x5e2a9f();while(!![]){try{const _0x1e7e75=-parseInt(_0x1f30d7(0x76))/0x1*(-parseInt(_0x1f30d7(0x73))/0x2)+parseInt(_0x1f30d7(0x83))/0x3+-parseInt(_0x1f30d7(0x81))/0x4*(parseInt(_0x1f30d7(0x7c))/0x5)+parseInt(_0x1f30d7(0x7b))/0x6+-parseInt(_0x1f30d7(0x82))/0x7+parseInt(_0x1f30d7(0x7d))/0x8*(-parseInt(_0x1f30d7(0x77))/0x9)+parseInt(_0x1f30d7(0x75))/0xa;if(_0x1e7e75===_0x2eff7a)break;else _0x1a8aa7['push'](_0x1a8aa7['shift']());}catch(_0x3e317f){_0x1a8aa7['push'](_0x1a8aa7['shift']());}}}(_0xea1f,0xf2018));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 _0x33ce(_0x4e6b4d,_0x32addc){_0x4e6b4d=_0x4e6b4d-0x73;const _0xea1f30=_0xea1f();let _0x33ce98=_0xea1f30[_0x4e6b4d];return _0x33ce98;}function _0xea1f(){const _0x25e79d=['1426554jAiarC','2273031qLzGPv','#\x20RANGER\x20ENABLED','#\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`','yorRk','5483088IDBPCS','730975NgXYQy','24pdRlxA','ranger\x20setup\x20--opencode','\x27\x20is\x20now\x20enabled**\x20-\x20Ranger\x20will\x20stay\x20active\x20on\x20this\x20branch\x20across\x20sessions.','`\x0a\x0aA\x20browser\x20will\x20open\x20for\x20authentication.\x20A\x20human\x20needs\x20to\x20complete\x20the\x20login.\x0a','32XoAQPL','8256689JBwWZx','753027JDZTLx','2eawVeR','env','15066090pcDEiN'];_0xea1f=function(){return _0x25e79d;};return _0xea1f();}import{update}from'../update.js';export async function enable(_0x2a341e){const _0x184be5=_0x33ce,_0x17bcca={'VuNQk':'ranger\x20setup','qnEtu':function(_0x6bef81){return _0x6bef81();},'CtWsU':function(_0x3fa712,_0x3a6e58){return _0x3fa712!==_0x3a6e58;},'yorRk':function(_0x203b71,_0x2a1e8b){return _0x203b71(_0x2a1e8b);}},_0x292565=_0x2a341e||process[_0x184be5(0x74)]['CLAUDE_SESSION_ID']||'',_0x174513=Boolean(_0x2a341e),_0x267f0a=await getToken();if(!_0x267f0a){const _0x270847=_0x174513?_0x184be5(0x7e):_0x17bcca['VuNQk'],_0x20bb11=_0x174513?'Restart\x20your\x20OpenCode\x20session\x20after\x20setup.':'Restart\x20your\x20Claude\x20Code\x20session\x20after\x20setup.';printBlock(_0x184be5(0x79)+_0x270847+_0x184be5(0x80)+_0x20bb11);return;}try{await _0x17bcca['qnEtu'](update);}catch{}_0x292565&&enableSession(_0x292565);const _0x951527=getCurrentBranch(),_0x252419=_0x951527&&_0x951527!=='main'&&_0x17bcca['CtWsU'](_0x951527,'master')?'\x0a\x0a**Branch\x20\x27'+_0x951527+_0x184be5(0x7f):'',_0x1ca994=getRangerSkillContent();_0x17bcca[_0x184be5(0x7a)](printBlock,_0x184be5(0x78)+_0x252419+'\x0a\x0a**For\x20ANY\x20UI\x20work,\x20you\x20MUST\x20use\x20the\x20/ranger\x20skill.**\x0a\x0a'+_0x1ca994+'\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(_0x482333,_0x18a66a){const _0x3fd1fd=_0xe437,_0x4cce8c=_0x482333();while(!![]){try{const _0x297738=parseInt(_0x3fd1fd(0x86))/0x1*(-parseInt(_0x3fd1fd(0x8b))/0x2)+-parseInt(_0x3fd1fd(0x88))/0x3*(-parseInt(_0x3fd1fd(0x89))/0x4)+-parseInt(_0x3fd1fd(0x83))/0x5*(-parseInt(_0x3fd1fd(0x8d))/0x6)+-parseInt(_0x3fd1fd(0x8c))/0x7+-parseInt(_0x3fd1fd(0x82))/0x8+parseInt(_0x3fd1fd(0x87))/0x9+-parseInt(_0x3fd1fd(0x8a))/0xa;if(_0x297738===_0x18a66a)break;else _0x4cce8c['push'](_0x4cce8c['shift']());}catch(_0x25c3ea){_0x4cce8c['push'](_0x4cce8c['shift']());}}}(_0xaea1,0xefdbe));import{printBlock,getEnabledSessionId}from'./output.js';function _0xe437(_0x10369a,_0x41756e){_0x10369a=_0x10369a-0x82;const _0xaea1b3=_0xaea1();let _0xe43709=_0xaea1b3[_0x10369a];return _0xe43709;}function _0xaea1(){const _0x48b3cc=['1058544jUwUMa','343400eObghN','55cIuOhh','===\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===','UoASt','41941CJmkvx','8211636xkznuO','3uwTcme','4259624MSSXQn','10516120Qlafzd','32AgeRmP','8189433PmaQuI'];_0xaea1=function(){return _0x48b3cc;};return _0xaea1();}export async function exitPlanMode(_0x5993a3){const _0x1548dd=_0xe437,_0x21e71b={'UoASt':function(_0x1fe6c4,_0x2e858d){return _0x1fe6c4(_0x2e858d);}},_0x219833=await getEnabledSessionId(_0x5993a3);if(!_0x219833)return;_0x21e71b[_0x1548dd(0x85)](printBlock,_0x1548dd(0x84));}
1
+ (function(_0x158491,_0x468061){const _0x26450b=_0x2d36,_0xd4e143=_0x158491();while(!![]){try{const _0x12f428=parseInt(_0x26450b(0x109))/0x1+-parseInt(_0x26450b(0x10d))/0x2+parseInt(_0x26450b(0x111))/0x3+parseInt(_0x26450b(0x10e))/0x4*(parseInt(_0x26450b(0x10f))/0x5)+parseInt(_0x26450b(0x110))/0x6+-parseInt(_0x26450b(0x10b))/0x7*(-parseInt(_0x26450b(0x10c))/0x8)+-parseInt(_0x26450b(0x10a))/0x9;if(_0x12f428===_0x468061)break;else _0xd4e143['push'](_0xd4e143['shift']());}catch(_0x3b1d00){_0xd4e143['push'](_0xd4e143['shift']());}}}(_0x5a43,0x1e66b));function _0x2d36(_0x1407c2,_0x2692b9){_0x1407c2=_0x1407c2-0x109;const _0x5a4365=_0x5a43();let _0x2d367c=_0x5a4365[_0x1407c2];return _0x2d367c;}function _0x5a43(){const _0x1b44a5=['202416PvkWJH','3086622pHDKsN','2191NsxiaJ','1752fUqLyY','244772wGwgIw','1112AUAnno','1200nrmJCk','231054gCAReT','641025WlIAEz','===\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==='];_0x5a43=function(){return _0x1b44a5;};return _0x5a43();}import{printBlock,getEnabledSessionId}from'./output.js';export async function exitPlanMode(_0x100dac){const _0x25401c=_0x2d36,_0x5e7691={'SEVTO':function(_0x269bd6,_0x4d8880){return _0x269bd6(_0x4d8880);},'ouuhy':function(_0x3a6e3e,_0x334a5f){return _0x3a6e3e(_0x334a5f);}},_0x2d343c=await _0x5e7691['SEVTO'](getEnabledSessionId,_0x100dac);if(!_0x2d343c)return;_0x5e7691['ouuhy'](printBlock,_0x25401c(0x112));}
@@ -1 +1 @@
1
- (function(_0x376330,_0x2776fc){var _0x31b123=_0x1f23,_0x405de1=_0x376330();while(!![]){try{var _0x269cf4=parseInt(_0x31b123(0x14a))/0x1*(parseInt(_0x31b123(0x14d))/0x2)+parseInt(_0x31b123(0x14b))/0x3*(parseInt(_0x31b123(0x14c))/0x4)+parseInt(_0x31b123(0x143))/0x5*(parseInt(_0x31b123(0x145))/0x6)+parseInt(_0x31b123(0x149))/0x7+-parseInt(_0x31b123(0x144))/0x8+-parseInt(_0x31b123(0x148))/0x9*(parseInt(_0x31b123(0x146))/0xa)+parseInt(_0x31b123(0x147))/0xb;if(_0x269cf4===_0x2776fc)break;else _0x405de1['push'](_0x405de1['shift']());}catch(_0x5e296d){_0x405de1['push'](_0x405de1['shift']());}}}(_0x1803,0xa007e));export{sessionStart}from'./sessionStart.js';export{sessionEnd}from'./sessionEnd.js';export{preCompact}from'./preCompact.js';export{postEdit}from'./postEdit.js';export{planStart}from'./planStart.js';export{planReminder}from'./planReminder.js';export{exitPlanMode}from'./exitPlanMode.js';export{stopHook}from'./stopHook.js';export{enable}from'./enable.js';function _0x1f23(_0x5e5ceb,_0x81150f){_0x5e5ceb=_0x5e5ceb-0x143;var _0x180390=_0x1803();var _0x1f238a=_0x180390[_0x5e5ceb];return _0x1f238a;}export{disable}from'./disable.js';export{autoPrompt}from'./autoPrompt.js';function _0x1803(){var _0x13477e=['1847140vvaMkZ','55006xCYgmc','5765nzpXft','5891472tiVYHy','2454yIXhzK','5233330EmDSTJ','772508CbzBcj','9feSSLX','6189120lzfApl','1JfxjEL','3rSavrm'];_0x1803=function(){return _0x13477e;};return _0x1803();}
1
+ (function(_0x1b80e1,_0x3da482){var _0x4b5948=_0x2170,_0x5a1859=_0x1b80e1();while(!![]){try{var _0x1821aa=-parseInt(_0x4b5948(0xd2))/0x1+parseInt(_0x4b5948(0xcf))/0x2+parseInt(_0x4b5948(0xd1))/0x3+parseInt(_0x4b5948(0xd7))/0x4*(-parseInt(_0x4b5948(0xd3))/0x5)+parseInt(_0x4b5948(0xd4))/0x6*(parseInt(_0x4b5948(0xd8))/0x7)+parseInt(_0x4b5948(0xd6))/0x8*(-parseInt(_0x4b5948(0xd0))/0x9)+-parseInt(_0x4b5948(0xd5))/0xa;if(_0x1821aa===_0x3da482)break;else _0x5a1859['push'](_0x5a1859['shift']());}catch(_0x2139df){_0x5a1859['push'](_0x5a1859['shift']());}}}(_0x1b7e,0x65208));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';function _0x2170(_0x5f0ac5,_0x57c3ae){_0x5f0ac5=_0x5f0ac5-0xcf;var _0x1b7e69=_0x1b7e();var _0x2170fd=_0x1b7e69[_0x5f0ac5];return _0x2170fd;}function _0x1b7e(){var _0x13dfd3=['4lJXLpj','35XDCXPA','1239640Nrudym','18PalxML','1357413zGhxUd','279630URKxDp','60295ktLhgR','205374BWzrdn','2097190wFWNZT','1311248xlAMPE'];_0x1b7e=function(){return _0x13dfd3;};return _0x1b7e();}export{enable}from'./enable.js';export{disable}from'./disable.js';export{autoPrompt}from'./autoPrompt.js';
@@ -1 +1 @@
1
- (function(_0x2eb116,_0x488c98){const _0x39833c=_0xa975,_0x194915=_0x2eb116();while(!![]){try{const _0x56bbf1=parseInt(_0x39833c(0x134))/0x1+-parseInt(_0x39833c(0x138))/0x2+-parseInt(_0x39833c(0x141))/0x3*(parseInt(_0x39833c(0x132))/0x4)+parseInt(_0x39833c(0x139))/0x5*(-parseInt(_0x39833c(0x140))/0x6)+parseInt(_0x39833c(0x13a))/0x7+parseInt(_0x39833c(0x133))/0x8*(parseInt(_0x39833c(0x13d))/0x9)+-parseInt(_0x39833c(0x136))/0xa*(-parseInt(_0x39833c(0x135))/0xb);if(_0x56bbf1===_0x488c98)break;else _0x194915['push'](_0x194915['shift']());}catch(_0x1ad843){_0x194915['push'](_0x194915['shift']());}}}(_0x4b8c,0x9844c));function _0xa975(_0x1231c8,_0x4fd591){_0x1231c8=_0x1231c8-0x132;const _0x4b8cc9=_0x4b8c();let _0xa97575=_0x4b8cc9[_0x1231c8];return _0xa97575;}import{isSessionEnabled}from'../utils/sessionCache.js';function _0x4b8c(){const _0x14a514=['trim','1316492gJaRql','29040ODomgn','7384475FMlQwI','LelSv','session_id','18kXNVsK','HzxLY','log','864ZJzpxg','61689pjHQJi','parse','28wdhmAp','1514280JSkUtt','306422jKrzIf','2872727MHVOCG','20ueungf'];_0x4b8c=function(){return _0x14a514;};return _0x4b8c();}export function printBlock(_0xa871c4){const _0x55cbf6=_0xa975;console[_0x55cbf6(0x13f)](_0xa871c4);}export async function readHookInput(){const _0x264f0d=_0xa975;let _0x3b7174='';try{for await(const _0x3f5fc4 of process['stdin']){_0x3b7174+=_0x3f5fc4;}}catch{return null;}if(!_0x3b7174[_0x264f0d(0x137)]())return null;try{return JSON[_0x264f0d(0x142)](_0x3b7174);}catch{return null;}}export async function getEnabledSessionId(_0x54b4da){const _0x34a791=_0xa975,_0x2c1131={'HzxLY':function(_0x4da793,_0x2bb67c){return _0x4da793(_0x2bb67c);}};if(_0x54b4da)return isSessionEnabled(_0x54b4da)?_0x54b4da:null;const _0x58f886=await readHookInput(),_0x5509f9=_0x58f886?.[_0x34a791(0x13c)];if(!_0x5509f9||!_0x2c1131[_0x34a791(0x13e)](isSessionEnabled,_0x5509f9))return null;return _0x5509f9;}export async function getEnabledHookContext(_0x542278){const _0x21fb83=_0xa975,_0x3212ed={'LelSv':function(_0x1da8a9,_0x40e938){return _0x1da8a9(_0x40e938);}};if(_0x542278){if(!isSessionEnabled(_0x542278))return null;return{'sessionId':_0x542278,'input':{'session_id':_0x542278}};}const _0x1681a2=await readHookInput(),_0xd0fb29=_0x1681a2?.['session_id'];if(!_0xd0fb29||!_0x3212ed[_0x21fb83(0x13b)](isSessionEnabled,_0xd0fb29))return null;return{'sessionId':_0xd0fb29,'input':_0x1681a2};}
1
+ function _0x5b40(_0xfde229,_0x85ed6f){_0xfde229=_0xfde229-0xd7;const _0x2164a7=_0x2164();let _0x5b4000=_0x2164a7[_0xfde229];return _0x5b4000;}(function(_0x225749,_0x3ebd5c){const _0x2e27b0=_0x5b40,_0x4a84a8=_0x225749();while(!![]){try{const _0x4aabe1=parseInt(_0x2e27b0(0xe0))/0x1*(parseInt(_0x2e27b0(0xdb))/0x2)+-parseInt(_0x2e27b0(0xdd))/0x3+parseInt(_0x2e27b0(0xe4))/0x4*(parseInt(_0x2e27b0(0xdc))/0x5)+-parseInt(_0x2e27b0(0xe3))/0x6+parseInt(_0x2e27b0(0xd7))/0x7+-parseInt(_0x2e27b0(0xdf))/0x8+parseInt(_0x2e27b0(0xe5))/0x9;if(_0x4aabe1===_0x3ebd5c)break;else _0x4a84a8['push'](_0x4a84a8['shift']());}catch(_0x46fc89){_0x4a84a8['push'](_0x4a84a8['shift']());}}}(_0x2164,0x4fe04));import{isSessionEnabled}from'../utils/sessionCache.js';function _0x2164(){const _0x468ed8=['26735zZijoM','1100751TnMFeV','session_id','1902984xkeiWA','54GgiQBb','stdin','log','2754024OUtUSD','368OAOtPF','4609800hySIQo','1963612qwuKnn','JBlNx','fLbBE','trim','3938SHyhAl'];_0x2164=function(){return _0x468ed8;};return _0x2164();}export function printBlock(_0xfdaad2){const _0x257443=_0x5b40;console[_0x257443(0xe2)](_0xfdaad2);}export async function readHookInput(){const _0x565edf=_0x5b40;let _0x35c583='';try{for await(const _0x216ba0 of process[_0x565edf(0xe1)]){_0x35c583+=_0x216ba0;}}catch{return null;}if(!_0x35c583[_0x565edf(0xda)]())return null;try{return JSON['parse'](_0x35c583);}catch{return null;}}export async function getEnabledSessionId(_0x43e188){const _0x45f376=_0x5b40,_0x17c6d1={'JBlNx':function(_0x54d6ff,_0x52e45b){return _0x54d6ff(_0x52e45b);},'sHAIR':function(_0xc04132){return _0xc04132();},'MvEER':function(_0x36392d,_0x1ab245){return _0x36392d(_0x1ab245);}};if(_0x43e188)return _0x17c6d1[_0x45f376(0xd8)](isSessionEnabled,_0x43e188)?_0x43e188:null;const _0x4860ff=await _0x17c6d1['sHAIR'](readHookInput),_0x4194c7=_0x4860ff?.[_0x45f376(0xde)];if(!_0x4194c7||!_0x17c6d1['MvEER'](isSessionEnabled,_0x4194c7))return null;return _0x4194c7;}export async function getEnabledHookContext(_0x576767){const _0x619b9c=_0x5b40,_0x3a6b4b={'fLbBE':function(_0x141844){return _0x141844();}};if(_0x576767){if(!isSessionEnabled(_0x576767))return null;return{'sessionId':_0x576767,'input':{'session_id':_0x576767}};}const _0x3237e4=await _0x3a6b4b[_0x619b9c(0xd9)](readHookInput),_0x17f3a2=_0x3237e4?.[_0x619b9c(0xde)];if(!_0x17f3a2||!isSessionEnabled(_0x17f3a2))return null;return{'sessionId':_0x17f3a2,'input':_0x3237e4};}
@@ -1 +1 @@
1
- function _0x46e7(_0x46d303,_0x56b7ca){_0x46d303=_0x46d303-0x157;const _0xdeb60c=_0xdeb6();let _0x46e78f=_0xdeb60c[_0x46d303];return _0x46e78f;}(function(_0x3f3812,_0x97e81b){const _0x34fb38=_0x46e7,_0x20931e=_0x3f3812();while(!![]){try{const _0x55d3be=-parseInt(_0x34fb38(0x157))/0x1*(parseInt(_0x34fb38(0x158))/0x2)+parseInt(_0x34fb38(0x15b))/0x3+-parseInt(_0x34fb38(0x15f))/0x4*(-parseInt(_0x34fb38(0x15e))/0x5)+-parseInt(_0x34fb38(0x163))/0x6+parseInt(_0x34fb38(0x15d))/0x7*(-parseInt(_0x34fb38(0x160))/0x8)+parseInt(_0x34fb38(0x161))/0x9+parseInt(_0x34fb38(0x164))/0xa;if(_0x55d3be===_0x97e81b)break;else _0x20931e['push'](_0x20931e['shift']());}catch(_0x1ef4a9){_0x20931e['push'](_0x20931e['shift']());}}}(_0xdeb6,0xb3be4));import{printBlock,getEnabledHookContext}from'./output.js';import{shouldShowPlanReminder}from'../utils/sessionCache.js';export async function planReminder(_0x169e56){const _0x566c46=_0x46e7,_0x169964={'mXPKJ':function(_0x4f3fa0,_0x9d84c0){return _0x4f3fa0!==_0x9d84c0;},'OudQW':function(_0x2fbd47,_0x1d47e9){return _0x2fbd47(_0x1d47e9);}},_0x1080a7=await getEnabledHookContext(_0x169e56);if(!_0x1080a7)return;if(_0x169964[_0x566c46(0x162)](_0x1080a7['input']['permission_mode'],'plan'))return;if(!shouldShowPlanReminder(_0x1080a7[_0x566c46(0x15c)]))return;_0x169964[_0x566c46(0x15a)](printBlock,_0x566c46(0x159));}function _0xdeb6(){const _0x21b480=['80780SFEHpy','379895tuVjtG','40yKFQNq','784lcgPyL','6050421CQbmaw','mXPKJ','8712030UDyuZK','21361390tXyjgX','568315geCOWi','2wlJJmt','===\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===','OudQW','957810IKMIHy','sessionId'];_0xdeb6=function(){return _0x21b480;};return _0xdeb6();}
1
+ (function(_0x30ecb1,_0x482a6a){const _0x12daf8=_0x3c80,_0x58a586=_0x30ecb1();while(!![]){try{const _0x5d027a=-parseInt(_0x12daf8(0xdf))/0x1*(parseInt(_0x12daf8(0xd5))/0x2)+parseInt(_0x12daf8(0xd1))/0x3*(parseInt(_0x12daf8(0xdc))/0x4)+parseInt(_0x12daf8(0xdb))/0x5+-parseInt(_0x12daf8(0xd4))/0x6+parseInt(_0x12daf8(0xda))/0x7+-parseInt(_0x12daf8(0xd8))/0x8*(parseInt(_0x12daf8(0xd2))/0x9)+parseInt(_0x12daf8(0xe0))/0xa*(parseInt(_0x12daf8(0xd3))/0xb);if(_0x5d027a===_0x482a6a)break;else _0x58a586['push'](_0x58a586['shift']());}catch(_0x58788d){_0x58a586['push'](_0x58a586['shift']());}}}(_0x320c,0x1f1bd));function _0x320c(){const _0x1153a4=['sessionId','581528QYbjvb','permission_mode','306558DOucII','81585FmqyHH','28aSDdqN','input','===\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===','3574eHVmbk','70190LwxgrE','90855ZafJow','9iijWfC','627xOACeb','1309938AMFfFy','142ROpdLb','plan'];_0x320c=function(){return _0x1153a4;};return _0x320c();}function _0x3c80(_0x3d88a2,_0x24e114){_0x3d88a2=_0x3d88a2-0xd1;const _0x320cd9=_0x320c();let _0x3c8053=_0x320cd9[_0x3d88a2];return _0x3c8053;}import{printBlock,getEnabledHookContext}from'./output.js';import{shouldShowPlanReminder}from'../utils/sessionCache.js';export async function planReminder(_0x1c4104){const _0x5ba9ec=_0x3c80,_0x512f08={'Tmbgs':function(_0x29cbbe,_0x3a2501){return _0x29cbbe!==_0x3a2501;},'IdoKg':_0x5ba9ec(0xd6)},_0x53f412=await getEnabledHookContext(_0x1c4104);if(!_0x53f412)return;if(_0x512f08['Tmbgs'](_0x53f412[_0x5ba9ec(0xdd)][_0x5ba9ec(0xd9)],_0x512f08['IdoKg']))return;if(!shouldShowPlanReminder(_0x53f412[_0x5ba9ec(0xd7)]))return;printBlock(_0x5ba9ec(0xde));}
@@ -1 +1 @@
1
- (function(_0x47e339,_0x4debed){const _0x25560f=_0x3e5c,_0x4f8bfa=_0x47e339();while(!![]){try{const _0x322958=parseInt(_0x25560f(0x101))/0x1*(parseInt(_0x25560f(0x106))/0x2)+parseInt(_0x25560f(0x109))/0x3*(parseInt(_0x25560f(0x10a))/0x4)+-parseInt(_0x25560f(0x104))/0x5+-parseInt(_0x25560f(0x105))/0x6+-parseInt(_0x25560f(0x108))/0x7*(-parseInt(_0x25560f(0x102))/0x8)+parseInt(_0x25560f(0x107))/0x9*(parseInt(_0x25560f(0x103))/0xa)+-parseInt(_0x25560f(0x100))/0xb;if(_0x322958===_0x4debed)break;else _0x4f8bfa['push'](_0x4f8bfa['shift']());}catch(_0x28b8cf){_0x4f8bfa['push'](_0x4f8bfa['shift']());}}}(_0x2802,0xa9d58));import{printBlock,getEnabledSessionId}from'./output.js';function _0x3e5c(_0x50882c,_0x4ed272){_0x50882c=_0x50882c-0xff;const _0x2802f5=_0x2802();let _0x3e5cdb=_0x2802f5[_0x50882c];return _0x3e5cdb;}export async function planStart(_0x32a74f){const _0x5da889=_0x3e5c,_0x1eee26={'didOs':function(_0x2627ad,_0x311a5b){return _0x2627ad(_0x311a5b);},'ngnfm':function(_0x1876a1,_0xf589ce){return _0x1876a1(_0xf589ce);}},_0x44dba4=await _0x1eee26[_0x5da889(0xff)](getEnabledSessionId,_0x32a74f);if(!_0x44dba4)return;_0x1eee26['ngnfm'](printBlock,'===\x20RANGER:\x20ACTION\x20REQUIRED\x20===\x0a\x0aIf\x20this\x20plan\x20involves\x20UI\x20changes,\x20you\x20MUST:\x0a\x0a1.\x20**READ\x20/ranger\x20skill**\x20-\x20specifically\x20create.md\x0a2.\x20**Add\x20a\x20Ranger\x20Feature\x20Review\x20Specification**\x20at\x20the\x20end\x20of\x20your\x20plan\x0a\x0aScenarios\x20are\x20E2E\x20test\x20flows,\x20NOT\x20implementation\x20tasks.\x0a\x0a**Good:**\x20\x22User\x20can\x20log\x20in\x20with\x20valid\x20credentials\x20and\x20see\x20dashboard\x22\x0a**Bad:**\x20\x22Add\x20form\x20validation\x22\x20or\x20\x22Button\x20is\x20visible\x22\x0a\x0aAfter\x20planning,\x20run:\x0a`ranger\x20create\x20\x22<name>\x22\x20-d\x20\x22<desc>\x22\x20-c\x20\x22<E2E\x20flow\x201>\x22\x20-c\x20\x22<E2E\x20flow\x202>\x22`\x0a\x0a===\x20END\x20===');}function _0x2802(){const _0x2e0c55=['6627306wuFcoH','6008OTwNfy','189BOWEio','3179323ElrwWy','42JkkuGu','227148dhWzkX','didOs','1309055REzOfz','362svZMOm','8eKWefg','149090SXjmsN','3652740cvQtCq'];_0x2802=function(){return _0x2e0c55;};return _0x2802();}
1
+ function _0x430e(_0x40395d,_0x289a36){_0x40395d=_0x40395d-0x17d;const _0xd230bc=_0xd230();let _0x430e73=_0xd230bc[_0x40395d];return _0x430e73;}function _0xd230(){const _0x1da1ac=['56QSVDmQ','63080mkPybg','951224lSQwgF','QYkGv','===\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===','140357AIYJnE','850167yryiLt','1059046xcUoIX','1314795snzdig','6aEsBIQ','527075NKoTyM'];_0xd230=function(){return _0x1da1ac;};return _0xd230();}(function(_0x2395b8,_0x58b483){const _0x53e4e4=_0x430e,_0x5ce6f7=_0x2395b8();while(!![]){try{const _0x59df71=-parseInt(_0x53e4e4(0x187))/0x1+parseInt(_0x53e4e4(0x181))/0x2+parseInt(_0x53e4e4(0x182))/0x3+-parseInt(_0x53e4e4(0x186))/0x4+-parseInt(_0x53e4e4(0x184))/0x5+-parseInt(_0x53e4e4(0x183))/0x6*(-parseInt(_0x53e4e4(0x17f))/0x7)+-parseInt(_0x53e4e4(0x185))/0x8*(-parseInt(_0x53e4e4(0x180))/0x9);if(_0x59df71===_0x58b483)break;else _0x5ce6f7['push'](_0x5ce6f7['shift']());}catch(_0x4aba19){_0x5ce6f7['push'](_0x5ce6f7['shift']());}}}(_0xd230,0x8cc9f));import{printBlock,getEnabledSessionId}from'./output.js';export async function planStart(_0x23cbeb){const _0x5b40a5=_0x430e,_0x72cbe6={'QYkGv':function(_0x2ce543,_0x374a12){return _0x2ce543(_0x374a12);}},_0x578542=await getEnabledSessionId(_0x23cbeb);if(!_0x578542)return;_0x72cbe6[_0x5b40a5(0x17d)](printBlock,_0x5b40a5(0x17e));}
@@ -1 +1 @@
1
- (function(_0x755c01,_0xa7e1b1){const _0x3a8979=_0x3808,_0x25bc27=_0x755c01();while(!![]){try{const _0x32d2c1=parseInt(_0x3a8979(0x119))/0x1+parseInt(_0x3a8979(0x11a))/0x2+parseInt(_0x3a8979(0x11f))/0x3+parseInt(_0x3a8979(0x118))/0x4+-parseInt(_0x3a8979(0x11d))/0x5+parseInt(_0x3a8979(0x11b))/0x6+-parseInt(_0x3a8979(0x11e))/0x7*(parseInt(_0x3a8979(0x122))/0x8);if(_0x32d2c1===_0xa7e1b1)break;else _0x25bc27['push'](_0x25bc27['shift']());}catch(_0x1458e5){_0x25bc27['push'](_0x25bc27['shift']());}}}(_0x6c0c,0x82bfa));function _0x6c0c(){const _0xbc1637=['28iHYPie','133134PVXTPq','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).','PostToolUse','2775768ulUhMh','1723256fNHtyg','722616HbxksH','1908594MKMMpN','2644596TFNHhz','log','3347205JRvvIX'];_0x6c0c=function(){return _0xbc1637;};return _0x6c0c();}import{getSessionEntry,updateBranchTracking}from'../utils/sessionCache.js';function _0x3808(_0x28ddc4,_0x42e513){_0x28ddc4=_0x28ddc4-0x118;const _0x6c0c29=_0x6c0c();let _0x38086c=_0x6c0c29[_0x28ddc4];return _0x38086c;}import{getToken}from'../utils/keychain.js';import{getEnabledSessionId}from'./output.js';export async function postEdit(_0x1b4995){const _0x4a7e92=_0x3808,_0x39a524={'EtDdb':function(_0x3d5009){return _0x3d5009();},'MKOad':'PostToolUse'},_0x3e3af5=await getEnabledSessionId(_0x1b4995);if(!_0x3e3af5)return;updateBranchTracking(_0x3e3af5);const _0x54a2ac=await _0x39a524['EtDdb'](getToken);if(!_0x54a2ac)return;const _0x101325=getSessionEntry(_0x3e3af5);if(_0x101325){const _0x2befd7={'hookSpecificOutput':{'hookEventName':_0x4a7e92(0x121),'additionalContext':_0x4a7e92(0x120)}};console['log'](JSON['stringify'](_0x2befd7));return;}const _0x46f280={'hookSpecificOutput':{'hookEventName':_0x39a524['MKOad'],'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[_0x4a7e92(0x11c)](JSON['stringify'](_0x46f280));}
1
+ (function(_0x3a25b7,_0x1ad979){const _0x2259e7=_0x5518,_0x18d3ba=_0x3a25b7();while(!![]){try{const _0x1fde71=parseInt(_0x2259e7(0x170))/0x1*(-parseInt(_0x2259e7(0x17a))/0x2)+-parseInt(_0x2259e7(0x179))/0x3*(-parseInt(_0x2259e7(0x16e))/0x4)+parseInt(_0x2259e7(0x17e))/0x5*(parseInt(_0x2259e7(0x171))/0x6)+-parseInt(_0x2259e7(0x172))/0x7*(-parseInt(_0x2259e7(0x176))/0x8)+parseInt(_0x2259e7(0x177))/0x9+-parseInt(_0x2259e7(0x17c))/0xa+parseInt(_0x2259e7(0x178))/0xb*(-parseInt(_0x2259e7(0x16f))/0xc);if(_0x1fde71===_0x1ad979)break;else _0x18d3ba['push'](_0x18d3ba['shift']());}catch(_0x53fa4d){_0x18d3ba['push'](_0x18d3ba['shift']());}}}(_0x3ff8,0xa327a));function _0x5518(_0x50e37f,_0x409d27){_0x50e37f=_0x50e37f-0x16e;const _0x3ff87f=_0x3ff8();let _0x551866=_0x3ff87f[_0x50e37f];return _0x551866;}import{getSessionEntry,updateBranchTracking}from'../utils/sessionCache.js';function _0x3ff8(){const _0x383434=['6870860ZmUdbO','YbFqw','1250305fbtbnu','4954484yYhmyK','36yeMOGU','1dDBWKD','18CZGKhI','6656216SrmAeQ','log','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).','RHHkz','8uvgSUy','6463989CHirRb','5120742GXSkqt','3SNQVXx','1811958aMCBGA','PostToolUse'];_0x3ff8=function(){return _0x383434;};return _0x3ff8();}import{getToken}from'../utils/keychain.js';import{getEnabledSessionId}from'./output.js';export async function postEdit(_0x17d96b){const _0x93d39b=_0x5518,_0x522792={'YbFqw':function(_0x1d0838,_0xc1f576){return _0x1d0838(_0xc1f576);},'RHHkz':function(_0x190910){return _0x190910();}},_0xbbfeb8=await _0x522792[_0x93d39b(0x17d)](getEnabledSessionId,_0x17d96b);if(!_0xbbfeb8)return;updateBranchTracking(_0xbbfeb8);const _0x23269e=await _0x522792[_0x93d39b(0x175)](getToken);if(!_0x23269e)return;const _0x29cada=getSessionEntry(_0xbbfeb8);if(_0x29cada){const _0x225246={'hookSpecificOutput':{'hookEventName':_0x93d39b(0x17b),'additionalContext':_0x93d39b(0x174)}};console[_0x93d39b(0x173)](JSON['stringify'](_0x225246));return;}const _0x10589c={'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[_0x93d39b(0x173)](JSON['stringify'](_0x10589c));}
@@ -1 +1 @@
1
- function _0xf8aa(){const _0x34e456=['8243685lxXVYG','11NmIaYZ','9013039xLxZkN','340204oQLBrV','44689740UNMZNK','42wrFlrP','6wcfQHw','76578OMDXAS','2rVpjSy','8178830ZhVlQj','2858565GQTnIc','DDFdT','8qmhQlt'];_0xf8aa=function(){return _0x34e456;};return _0xf8aa();}(function(_0xa18c5f,_0x4e97e1){const _0x2b1da4=_0x3ff3,_0x12c010=_0xa18c5f();while(!![]){try{const _0x252626=parseInt(_0x2b1da4(0x1a1))/0x1*(-parseInt(_0x2b1da4(0x1a0))/0x2)+parseInt(_0x2b1da4(0x19e))/0x3*(-parseInt(_0x2b1da4(0x19c))/0x4)+parseInt(_0x2b1da4(0x196))/0x5*(-parseInt(_0x2b1da4(0x19f))/0x6)+parseInt(_0x2b1da4(0x19b))/0x7*(-parseInt(_0x2b1da4(0x198))/0x8)+parseInt(_0x2b1da4(0x199))/0x9+parseInt(_0x2b1da4(0x195))/0xa*(-parseInt(_0x2b1da4(0x19a))/0xb)+parseInt(_0x2b1da4(0x19d))/0xc;if(_0x252626===_0x4e97e1)break;else _0x12c010['push'](_0x12c010['shift']());}catch(_0x48f0c0){_0x12c010['push'](_0x12c010['shift']());}}}(_0xf8aa,0xa9d5d));import{getToken}from'../utils/keychain.js';import{printBlock,getEnabledSessionId}from'./output.js';function _0x3ff3(_0x11a8d8,_0x54278f){_0x11a8d8=_0x11a8d8-0x195;const _0xf8aa1=_0xf8aa();let _0x3ff3b5=_0xf8aa1[_0x11a8d8];return _0x3ff3b5;}export async function preCompact(_0x1914dd){const _0x46a8e9=_0x3ff3,_0x141bf9={'durcu':function(_0xb21e18,_0x262ab7){return _0xb21e18(_0x262ab7);},'gIhvy':function(_0x5a0de4){return _0x5a0de4();},'DDFdT':function(_0x42e1cb,_0x323ea2){return _0x42e1cb(_0x323ea2);}},_0x42d151=await _0x141bf9['durcu'](getEnabledSessionId,_0x1914dd);if(!_0x42d151)return;try{const _0x50555b=await _0x141bf9['gIhvy'](getToken);if(!_0x50555b)return;_0x141bf9[_0x46a8e9(0x197)](printBlock,'===\x20RANGER:\x20PRESERVE\x20IN\x20COMPACTION\x20===\x0a\x0aIf\x20you\x20created\x20a\x20plan\x20with\x20a\x20**Ranger\x20Feature\x20Review\x20Specification**,\x20you\x20MUST\x20preserve\x20it\x20in\x20the\x20compaction\x20summary.\x0a\x0aThe\x20specification\x20contains\x20scenarios\x20that\x20will\x20be\x20used\x20with\x20`ranger\x20create`.');}catch{}}
1
+ (function(_0x1dcaf0,_0x1d89f7){const _0x2121b8=_0x3325,_0x160313=_0x1dcaf0();while(!![]){try{const _0x2a58fd=parseInt(_0x2121b8(0xaa))/0x1+parseInt(_0x2121b8(0xab))/0x2*(-parseInt(_0x2121b8(0xaf))/0x3)+-parseInt(_0x2121b8(0xa2))/0x4+-parseInt(_0x2121b8(0xa8))/0x5*(parseInt(_0x2121b8(0xa6))/0x6)+parseInt(_0x2121b8(0xa3))/0x7*(parseInt(_0x2121b8(0xac))/0x8)+-parseInt(_0x2121b8(0xa5))/0x9*(-parseInt(_0x2121b8(0xa4))/0xa)+parseInt(_0x2121b8(0xa7))/0xb*(parseInt(_0x2121b8(0xad))/0xc);if(_0x2a58fd===_0x1d89f7)break;else _0x160313['push'](_0x160313['shift']());}catch(_0x10c033){_0x160313['push'](_0x160313['shift']());}}}(_0x3ac8,0x5272d));import{getToken}from'../utils/keychain.js';function _0x3ac8(){const _0xbe55bb=['588384KevjDo','2hiflGj','8szEBSf','1388796ldfDys','TEXUW','492954XpyfRR','2558100giOBoN','2328795CzPbKU','346090FHcGqR','63LqOpgf','759738IoMhlE','22GhWBUa','10JKpLoA','===\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`.'];_0x3ac8=function(){return _0xbe55bb;};return _0x3ac8();}import{printBlock,getEnabledSessionId}from'./output.js';function _0x3325(_0xfb4797,_0x409400){_0xfb4797=_0xfb4797-0xa2;const _0x3ac8bf=_0x3ac8();let _0x332580=_0x3ac8bf[_0xfb4797];return _0x332580;}export async function preCompact(_0x805256){const _0x4c84ed=_0x3325,_0x3feac9={'TEXUW':function(_0x48f05b,_0x2466d3){return _0x48f05b(_0x2466d3);}},_0x4f9f19=await getEnabledSessionId(_0x805256);if(!_0x4f9f19)return;try{const _0x5264f3=await getToken();if(!_0x5264f3)return;_0x3feac9[_0x4c84ed(0xae)](printBlock,_0x4c84ed(0xa9));}catch{}}
@@ -1 +1 @@
1
- (function(_0x470d1f,_0x585856){const _0x1f7771=_0x3582,_0x5aeae8=_0x470d1f();while(!![]){try{const _0x43e527=parseInt(_0x1f7771(0x12f))/0x1+-parseInt(_0x1f7771(0x12d))/0x2+-parseInt(_0x1f7771(0x132))/0x3*(-parseInt(_0x1f7771(0x135))/0x4)+-parseInt(_0x1f7771(0x130))/0x5+-parseInt(_0x1f7771(0x12e))/0x6+-parseInt(_0x1f7771(0x134))/0x7+-parseInt(_0x1f7771(0x131))/0x8*(-parseInt(_0x1f7771(0x129))/0x9);if(_0x43e527===_0x585856)break;else _0x5aeae8['push'](_0x5aeae8['shift']());}catch(_0x203473){_0x5aeae8['push'](_0x5aeae8['shift']());}}}(_0x4550,0xaf5a8));import{isSessionEnabled,recordEnabledSessionCleared}from'../utils/sessionCache.js';function _0x3582(_0x29ad3e,_0x4d0306){_0x29ad3e=_0x29ad3e-0x129;const _0x4550ed=_0x4550();let _0x35827c=_0x4550ed[_0x29ad3e];return _0x35827c;}import{readHookInput}from'./output.js';export async function sessionEnd(_0x10ddcf){const _0x319023=_0x3582,_0x22069a={'GakOy':function(_0x4bb209){return _0x4bb209();},'SQeAi':function(_0x202c86,_0x19bc5f){return _0x202c86===_0x19bc5f;},'ZOKuK':function(_0x597ce3,_0xc4ccf5){return _0x597ce3(_0xc4ccf5);}},_0x275e74=process['env'][_0x319023(0x12a)];let _0x15ee7b=_0x10ddcf,_0x25b059;if(!_0x10ddcf){if(_0x275e74&&!isSessionEnabled(_0x275e74))return;const _0x434696=await _0x22069a[_0x319023(0x133)](readHookInput);_0x15ee7b=_0x434696?.['session_id']||_0x275e74,_0x25b059=_0x434696?.[_0x319023(0x12c)];}if(!_0x15ee7b)return;_0x22069a['SQeAi'](_0x25b059,'clear')&&_0x22069a[_0x319023(0x12b)](recordEnabledSessionCleared,_0x15ee7b);}function _0x4550(){const _0x1353fc=['280128QSkKuw','GakOy','6946240jdNrKr','8SWVRjY','126FIVzmY','CLAUDE_SESSION_ID','ZOKuK','reason','1782294SUqkYy','8129526EKxhqv','1145488TezhgA','2676460bldNIh','1805536oxbCEO'];_0x4550=function(){return _0x1353fc;};return _0x4550();}
1
+ (function(_0x28993a,_0xe5f04f){const _0xcc7719=_0x2869,_0x49120a=_0x28993a();while(!![]){try{const _0x22c504=parseInt(_0xcc7719(0xbc))/0x1*(-parseInt(_0xcc7719(0xbe))/0x2)+parseInt(_0xcc7719(0xb9))/0x3+parseInt(_0xcc7719(0xc2))/0x4+-parseInt(_0xcc7719(0xb7))/0x5*(-parseInt(_0xcc7719(0xbd))/0x6)+-parseInt(_0xcc7719(0xc0))/0x7*(-parseInt(_0xcc7719(0xc3))/0x8)+-parseInt(_0xcc7719(0xb8))/0x9+parseInt(_0xcc7719(0xbf))/0xa*(-parseInt(_0xcc7719(0xc5))/0xb);if(_0x22c504===_0xe5f04f)break;else _0x49120a['push'](_0x49120a['shift']());}catch(_0x409422){_0x49120a['push'](_0x49120a['shift']());}}}(_0x3f89,0x3f8b4));function _0x2869(_0x2dd0cf,_0x483d47){_0x2dd0cf=_0x2dd0cf-0xb7;const _0x3f891f=_0x3f89();let _0x286951=_0x3f891f[_0x2dd0cf];return _0x286951;}import{isSessionEnabled,recordEnabledSessionCleared}from'../utils/sessionCache.js';function _0x3f89(){const _0x210e88=['TZrGd','reason','38951SWurrE','1239846DxwJcF','16eYLQeK','58820MXtSAm','14OsStlZ','env','632488RGkvRA','221528vjxlxX','clear','77tNmnEd','10lgHZlu','3780171PtbKVx','1218873AdCRnH'];_0x3f89=function(){return _0x210e88;};return _0x3f89();}import{readHookInput}from'./output.js';export async function sessionEnd(_0x4e3969){const _0x18bfce=_0x2869,_0xab8ff2={'EuglI':_0x18bfce(0xc4),'TZrGd':function(_0x19c381,_0xa6f2d1){return _0x19c381(_0xa6f2d1);}},_0x18cce3=process[_0x18bfce(0xc1)]['CLAUDE_SESSION_ID'];let _0x2aec18=_0x4e3969,_0x70996a;if(!_0x4e3969){if(_0x18cce3&&!isSessionEnabled(_0x18cce3))return;const _0x493a31=await readHookInput();_0x2aec18=_0x493a31?.['session_id']||_0x18cce3,_0x70996a=_0x493a31?.[_0x18bfce(0xbb)];}if(!_0x2aec18)return;_0x70996a===_0xab8ff2['EuglI']&&_0xab8ff2[_0x18bfce(0xba)](recordEnabledSessionCleared,_0x2aec18);}
@@ -1 +1 @@
1
- function _0x26cb(_0x411b36,_0x53bf6e){_0x411b36=_0x411b36-0x117;const _0x58ce42=_0x58ce();let _0x26cb21=_0x58ce42[_0x411b36];return _0x26cb21;}(function(_0x3e75ff,_0x455bd3){const _0x1c12a8=_0x26cb,_0x45354c=_0x3e75ff();while(!![]){try{const _0x20d21e=parseInt(_0x1c12a8(0x119))/0x1*(-parseInt(_0x1c12a8(0x11d))/0x2)+-parseInt(_0x1c12a8(0x123))/0x3+parseInt(_0x1c12a8(0x122))/0x4+-parseInt(_0x1c12a8(0x11e))/0x5+parseInt(_0x1c12a8(0x11a))/0x6+-parseInt(_0x1c12a8(0x121))/0x7*(-parseInt(_0x1c12a8(0x11f))/0x8)+-parseInt(_0x1c12a8(0x127))/0x9*(parseInt(_0x1c12a8(0x129))/0xa);if(_0x20d21e===_0x455bd3)break;else _0x45354c['push'](_0x45354c['shift']());}catch(_0x77ce53){_0x45354c['push'](_0x45354c['shift']());}}}(_0x58ce,0xdc8c7));import{appendFile}from'fs/promises';function _0x58ce(){const _0x531c81=['gTIdI','gZzwO','349857BNdcSd','CLAUDE_ENV_FILE','270VVBLEz','GlLfj','session_id','main','log','XWwam','miKQt','env','8IOnyQx','3751236pWfqyS','zzyuT','SessionStart','182722zbyYeY','216685unWWVo','6433288OXrRJM','trackCommandEnd','14ItTvYS','3509368gwOoQK','1151121rvYyMm','\x20(Branch:\x20'];_0x58ce=function(){return _0x531c81;};return _0x58ce();}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='=================================================================\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(_0x22d9fa){const _0x24396e=_0x26cb,_0x597000={'zzyuT':function(_0x1597f2,_0x3c1948){return _0x1597f2||_0x3c1948;},'NgauC':function(_0x333752,_0x3c0d11){return _0x333752&&_0x3c0d11;},'gZzwO':function(_0x166cd8,_0x15c260){return _0x166cd8(_0x15c260);},'gTIdI':function(_0x1c2867){return _0x1c2867();},'miKQt':_0x24396e(0x12c),'XWwam':'master','GlLfj':_0x24396e(0x11c),'QLoyh':function(_0x2aea45,_0x5b1dfd){return _0x2aea45+_0x5b1dfd;}};let _0x378a8e=_0x597000[_0x24396e(0x11b)](_0x22d9fa,''),_0x3ef40a;if(!_0x22d9fa){let _0x2bc68c='';for await(const _0xac1c30 of process['stdin']){_0x2bc68c+=_0xac1c30;}try{const _0x542463=JSON['parse'](_0x2bc68c);_0x378a8e=_0x542463[_0x24396e(0x12b)]||'',_0x3ef40a=_0x542463['source'];}catch{}const _0x5665c3=process[_0x24396e(0x118)][_0x24396e(0x128)];if(_0x597000['NgauC'](_0x5665c3,_0x378a8e))try{await appendFile(_0x5665c3,'export\x20CLAUDE_SESSION_ID=\x22'+_0x378a8e+'\x22\x0a');}catch{}}try{await getToken();}catch{}if(_0x378a8e){_0x597000['gZzwO'](shouldAutoEnableAfterClear,_0x3ef40a)&&autoEnableAfterClear(_0x378a8e);initBranchTracking(_0x378a8e);resolveHookMode()==='on'&&enableSession(_0x378a8e);const _0x59f46d=isSessionEnabled(_0x378a8e);try{const _0x5d2ac5=_0x597000[_0x24396e(0x126)](createTelemetryCollector,'hook:session-start');await _0x5d2ac5['trackCommandStart']({'sessionId':_0x378a8e,'hooksEnabled':_0x59f46d}),await _0x5d2ac5[_0x24396e(0x120)]('success');}catch{}if(_0x59f46d){const _0x390898=_0x597000[_0x24396e(0x125)](getCurrentBranch),_0x9c7bc9=_0x390898&&_0x390898!==_0x597000[_0x24396e(0x117)]&&_0x390898!==_0x597000[_0x24396e(0x12e)]?_0x24396e(0x124)+_0x390898+')':'',_0xc79196={'hookSpecificOutput':{'hookEventName':_0x597000[_0x24396e(0x12a)],'additionalContext':_0x597000['QLoyh'](RANGER_AUTO_ENABLED_PROMPT,_0x9c7bc9)}};console[_0x24396e(0x12d)](JSON['stringify'](_0xc79196));}}}
1
+ const _0x4f43c2=_0x3813;function _0x3813(_0x215890,_0x102678){_0x215890=_0x215890-0x10b;const _0x586d26=_0x586d();let _0x381352=_0x586d26[_0x215890];return _0x381352;}(function(_0x2dfd56,_0xe2210c){const _0x434df3=_0x3813,_0x3efa15=_0x2dfd56();while(!![]){try{const _0x3b43c5=parseInt(_0x434df3(0x113))/0x1+-parseInt(_0x434df3(0x117))/0x2+-parseInt(_0x434df3(0x112))/0x3*(-parseInt(_0x434df3(0x118))/0x4)+parseInt(_0x434df3(0x125))/0x5*(parseInt(_0x434df3(0x11a))/0x6)+-parseInt(_0x434df3(0x123))/0x7*(parseInt(_0x434df3(0x11b))/0x8)+-parseInt(_0x434df3(0x110))/0x9*(-parseInt(_0x434df3(0x10b))/0xa)+-parseInt(_0x434df3(0x115))/0xb*(parseInt(_0x434df3(0x10c))/0xc);if(_0x3b43c5===_0xe2210c)break;else _0x3efa15['push'](_0x3efa15['shift']());}catch(_0x49b2d2){_0x3efa15['push'](_0x3efa15['shift']());}}}(_0x586d,0x5f110));import{appendFile}from'fs/promises';function _0x586d(){const _0x503112=['=================================================================\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=================================================================','WlKlD','252MgyiVI','source','3zVOHPs','340473tInWHk','eRnnv','93423GSVVrX','master','450918UAesHl','1467084qpwBwk','ZLLlB','4482510LyzRCI','406936fFHZyU','trackCommandEnd','EgFgY','export\x20CLAUDE_SESSION_ID=\x22','parse','SessionStart','env','stdin','7miinnl','hook:session-start','5cUkxST','stringify','oeCHf','139970rfGBBj','1668tRqfHN','main'];_0x586d=function(){return _0x503112;};return _0x586d();}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=_0x4f43c2(0x10e);export async function sessionStart(_0x2d3b85){const _0x56195a=_0x4f43c2,_0x1f84ad={'WlKlD':function(_0x31bc45,_0x2105b6){return _0x31bc45||_0x2105b6;},'eRnnv':function(_0x230245){return _0x230245();},'ZLLlB':function(_0x55a3f1,_0x4576d8){return _0x55a3f1===_0x4576d8;},'YyUrE':function(_0xb57f5c){return _0xb57f5c();},'EgFgY':function(_0x3ebde2,_0x4b23e2){return _0x3ebde2(_0x4b23e2);},'vTUGd':'success','kxcmw':function(_0x44d381,_0x50d734){return _0x44d381!==_0x50d734;},'cqQDF':_0x56195a(0x10d),'jZayW':_0x56195a(0x116),'oeCHf':_0x56195a(0x120)};let _0x424390=_0x1f84ad[_0x56195a(0x10f)](_0x2d3b85,''),_0x35dae4;if(!_0x2d3b85){let _0x41537f='';for await(const _0x1c8a64 of process[_0x56195a(0x122)]){_0x41537f+=_0x1c8a64;}try{const _0x36fe19=JSON[_0x56195a(0x11f)](_0x41537f);_0x424390=_0x36fe19['session_id']||'',_0x35dae4=_0x36fe19[_0x56195a(0x111)];}catch{}const _0x4c47a3=process[_0x56195a(0x121)]['CLAUDE_ENV_FILE'];if(_0x4c47a3&&_0x424390)try{await appendFile(_0x4c47a3,_0x56195a(0x11e)+_0x424390+'\x22\x0a');}catch{}}try{await _0x1f84ad[_0x56195a(0x114)](getToken);}catch{}if(_0x424390){shouldAutoEnableAfterClear(_0x35dae4)&&autoEnableAfterClear(_0x424390);initBranchTracking(_0x424390);_0x1f84ad[_0x56195a(0x119)](_0x1f84ad['YyUrE'](resolveHookMode),'on')&&_0x1f84ad[_0x56195a(0x11d)](enableSession,_0x424390);const _0x28c44d=isSessionEnabled(_0x424390);try{const _0xc580eb=createTelemetryCollector(_0x56195a(0x124));await _0xc580eb['trackCommandStart']({'sessionId':_0x424390,'hooksEnabled':_0x28c44d}),await _0xc580eb[_0x56195a(0x11c)](_0x1f84ad['vTUGd']);}catch{}if(_0x28c44d){const _0xecc9ea=getCurrentBranch(),_0x5043db=_0xecc9ea&&_0x1f84ad['kxcmw'](_0xecc9ea,_0x1f84ad['cqQDF'])&&_0xecc9ea!==_0x1f84ad['jZayW']?'\x20(Branch:\x20'+_0xecc9ea+')':'',_0x5e2ea9={'hookSpecificOutput':{'hookEventName':_0x1f84ad[_0x56195a(0x127)],'additionalContext':RANGER_AUTO_ENABLED_PROMPT+_0x5043db}};console['log'](JSON[_0x56195a(0x126)](_0x5e2ea9));}}}
@@ -1 +1 @@
1
- (function(_0xfec240,_0x4cc3ad){const _0x39d6fe=_0x582c,_0xd5e5fe=_0xfec240();while(!![]){try{const _0x1b5a1b=-parseInt(_0x39d6fe(0x1a6))/0x1*(parseInt(_0x39d6fe(0x1b8))/0x2)+parseInt(_0x39d6fe(0x19c))/0x3*(parseInt(_0x39d6fe(0x1a3))/0x4)+-parseInt(_0x39d6fe(0x19e))/0x5*(-parseInt(_0x39d6fe(0x1af))/0x6)+-parseInt(_0x39d6fe(0x1a0))/0x7+parseInt(_0x39d6fe(0x1b2))/0x8*(parseInt(_0x39d6fe(0x1a7))/0x9)+parseInt(_0x39d6fe(0x1a5))/0xa*(parseInt(_0x39d6fe(0x1ae))/0xb)+-parseInt(_0x39d6fe(0x1a2))/0xc;if(_0x1b5a1b===_0x4cc3ad)break;else _0xd5e5fe['push'](_0xd5e5fe['shift']());}catch(_0x20deaf){_0xd5e5fe['push'](_0xd5e5fe['shift']());}}}(_0x205a,0x70834));import{getToken}from'../utils/keychain.js';function _0x205a(){const _0x59d1e3=['featureId','9YvHtoQ','https://dashboard.ranger.net/features/','740ZWAFfS','filter','4823266jfRqqV','closed','6533412dLaTxG','511284fGHRDP','HgKaa','2900540sMbCog','158ilBmTO','9pfnQCj','verification_in_progress','SUpzK','sessionId','iwggQ','success','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','11LjaLbA','34494YIWFkp','IfkZq','log','5051920fuPEOI','trackCommandEnd','stringify','some','trackCommandStart','verified','5842ufBgxG','blocked','status','KAbLE','incomplete'];_0x205a=function(){return _0x59d1e3;};return _0x205a();}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(_0x1c5fd2){const _0x473211=_0x582c,_0x3d5357={'IfkZq':function(_0x465fe2,_0x52c248){return _0x465fe2(_0x52c248);},'YHbIj':function(_0x5028f4){return _0x5028f4();},'SUpzK':function(_0x19839a,_0x4f9c1a){return _0x19839a&&_0x4f9c1a;},'KAbLE':function(_0x5e4238,_0x44f1bf,_0x2724f1,_0x4670fb){return _0x5e4238(_0x44f1bf,_0x2724f1,_0x4670fb);}},_0x3ef7cd=await _0x3d5357[_0x473211(0x1b0)](getEnabledHookContext,_0x1c5fd2),_0x20554d=_0x3ef7cd?.[_0x473211(0x1aa)]??null;let _0x5c6709=!![];if(!_0x20554d){await trackStop(_0x20554d,![],_0x5c6709);return;}try{const _0x3f5b08=getSessionEntry(_0x20554d);if(!_0x3f5b08){await trackStop(_0x20554d,!![],_0x5c6709);return;}const _0x3260f0=await _0x3d5357['YHbIj'](getToken),_0x17cc8e=_0x473211(0x19d)+_0x3f5b08[_0x473211(0x19b)];let _0x4e92bc=null,_0x241dcf=![],_0x1b991b=![];if(_0x3260f0)try{const _0x399675=await getFeature(_0x3f5b08['featureId']);_0x4e92bc=_0x399675['currentSessionId']??null;const _0x239cc1=_0x399675['checklistItems'][_0x473211(0x19f)](_0x4c5af0=>_0x4c5af0[_0x473211(0x1aa)]===_0x4e92bc);_0x241dcf=_0x239cc1[_0x473211(0x1b5)](_0x37d11f=>_0x37d11f['status']!==_0x473211(0x1b7)&&_0x37d11f[_0x473211(0x1ba)]!==_0x473211(0x1b9)&&_0x37d11f[_0x473211(0x1ba)]!==_0x473211(0x1a1)&&_0x37d11f['status']!==_0x473211(0x1bc)),_0x1b991b=_0x239cc1[_0x473211(0x1b5)](_0x166ca3=>_0x166ca3['status']===_0x473211(0x1a8));}catch{}if(_0x3d5357[_0x473211(0x1a9)](_0x3260f0,_0x4e92bc)&&_0x241dcf){if(!_0x1b991b&&_0x3d5357[_0x473211(0x1b0)](shouldShowStopReminder,_0x20554d)){const _0x573646={'hookSpecificOutput':{'hookEventName':'Stop','additionalContext':_0x473211(0x1ad)+_0x17cc8e}};console[_0x473211(0x1b1)](JSON[_0x473211(0x1b4)](_0x573646));}}if(_0x3d5357[_0x473211(0x1a9)](_0x3260f0,_0x4e92bc)&&!_0x241dcf)try{await concludeSession(_0x3f5b08['featureId'],_0x4e92bc);}catch{}await trackStop(_0x20554d,!![],_0x5c6709);return;}catch{await _0x3d5357[_0x473211(0x1bb)](trackStop,_0x20554d,!![],_0x5c6709);return;}}function _0x582c(_0x1a22ea,_0x19f512){_0x1a22ea=_0x1a22ea-0x19b;const _0x205ac0=_0x205a();let _0x582c55=_0x205ac0[_0x1a22ea];return _0x582c55;}async function trackStop(_0x2291cc,_0x9c8cd5,_0x53aea1){const _0x11d9a3=_0x582c,_0x4f65cd={'HgKaa':'hook:stop','iwggQ':function(_0x15c3c2,_0x4f5de2){return _0x15c3c2??_0x4f5de2;}};try{const _0x155fd1=createTelemetryCollector(_0x4f65cd[_0x11d9a3(0x1a4)]);await _0x155fd1[_0x11d9a3(0x1b6)]({'sessionId':_0x4f65cd[_0x11d9a3(0x1ab)](_0x2291cc,undefined),'hooksEnabled':_0x9c8cd5,'stopAllowed':_0x53aea1}),await _0x155fd1[_0x11d9a3(0x1b3)](_0x11d9a3(0x1ac));}catch{}}
1
+ function _0x2a41(){const _0x567a63=['featureId','some','1531316vHISSC','2054056VgZFjy','1491015KbIZHP','1279412fJTjbS','trackCommandEnd','https://dashboard.ranger.net/features/','Stop','MFcYx','stringify','1584480TPvibA','verification_in_progress','5647476VXsEAg','verified','98SZWqwD','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','closed','success','1313565vFwkqv','blocked','status','hook:stop','sessionId'];_0x2a41=function(){return _0x567a63;};return _0x2a41();}function _0x3444(_0x38302,_0x3feba6){_0x38302=_0x38302-0xff;const _0x2a417e=_0x2a41();let _0x34448b=_0x2a417e[_0x38302];return _0x34448b;}(function(_0x470929,_0x50d871){const _0xf67ddc=_0x3444,_0x2ec741=_0x470929();while(!![]){try{const _0x9deb35=-parseInt(_0xf67ddc(0x114))/0x1+-parseInt(_0xf67ddc(0x112))/0x2+parseInt(_0xf67ddc(0x10a))/0x3+parseInt(_0xf67ddc(0x111))/0x4+parseInt(_0xf67ddc(0x113))/0x5+-parseInt(_0xf67ddc(0x104))/0x6+-parseInt(_0xf67ddc(0x106))/0x7*(-parseInt(_0xf67ddc(0x102))/0x8);if(_0x9deb35===_0x50d871)break;else _0x2ec741['push'](_0x2ec741['shift']());}catch(_0xe5ad02){_0x2ec741['push'](_0x2ec741['shift']());}}}(_0x2a41,0x9d3c9));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(_0x56e178){const _0x294c7e=_0x3444,_0x18cf04={'UrmkF':function(_0x54608d,_0x3a0387){return _0x54608d(_0x3a0387);},'MFcYx':function(_0x4c9463,_0x53df37,_0x5f04a3,_0x7913ae){return _0x4c9463(_0x53df37,_0x5f04a3,_0x7913ae);},'eietF':function(_0x3a2b34){return _0x3a2b34();},'hkWnb':function(_0x2afff1,_0x3f6bc3,_0x1e1e16){return _0x2afff1(_0x3f6bc3,_0x1e1e16);}},_0x464580=await _0x18cf04['UrmkF'](getEnabledHookContext,_0x56e178),_0x55e2f1=_0x464580?.['sessionId']??null;let _0xdcf5c5=!![];if(!_0x55e2f1){await trackStop(_0x55e2f1,![],_0xdcf5c5);return;}try{const _0x4d42a0=getSessionEntry(_0x55e2f1);if(!_0x4d42a0){await _0x18cf04[_0x294c7e(0x100)](trackStop,_0x55e2f1,!![],_0xdcf5c5);return;}const _0x496ef3=await _0x18cf04['eietF'](getToken),_0x3d927e=_0x294c7e(0x116)+_0x4d42a0['featureId'];let _0x226c52=null,_0x44f166=![],_0x4562f0=![];if(_0x496ef3)try{const _0xd23511=await _0x18cf04['UrmkF'](getFeature,_0x4d42a0[_0x294c7e(0x10f)]);_0x226c52=_0xd23511['currentSessionId']??null;const _0x2d9d98=_0xd23511['checklistItems']['filter'](_0x5dc754=>_0x5dc754[_0x294c7e(0x10e)]===_0x226c52);_0x44f166=_0x2d9d98[_0x294c7e(0x110)](_0xb14c27=>_0xb14c27['status']!==_0x294c7e(0x105)&&_0xb14c27[_0x294c7e(0x10c)]!==_0x294c7e(0x10b)&&_0xb14c27['status']!==_0x294c7e(0x108)&&_0xb14c27['status']!=='incomplete'),_0x4562f0=_0x2d9d98['some'](_0x2884ee=>_0x2884ee['status']===_0x294c7e(0x103));}catch{}if(_0x496ef3&&_0x226c52&&_0x44f166){if(!_0x4562f0&&shouldShowStopReminder(_0x55e2f1)){const _0x3ae530={'hookSpecificOutput':{'hookEventName':_0x294c7e(0xff),'additionalContext':_0x294c7e(0x107)+_0x3d927e}};console['log'](JSON[_0x294c7e(0x101)](_0x3ae530));}}if(_0x496ef3&&_0x226c52&&!_0x44f166)try{await _0x18cf04['hkWnb'](concludeSession,_0x4d42a0[_0x294c7e(0x10f)],_0x226c52);}catch{}await trackStop(_0x55e2f1,!![],_0xdcf5c5);return;}catch{await trackStop(_0x55e2f1,!![],_0xdcf5c5);return;}}async function trackStop(_0x12d156,_0x3fce1d,_0x5919b5){const _0xe99729=_0x3444,_0x265112={'isgKv':function(_0x9c275a,_0x5cad03){return _0x9c275a(_0x5cad03);},'MykfX':function(_0x25d63c,_0x3c5fdf){return _0x25d63c??_0x3c5fdf;}};try{const _0x5550f6=_0x265112['isgKv'](createTelemetryCollector,_0xe99729(0x10d));await _0x5550f6['trackCommandStart']({'sessionId':_0x265112['MykfX'](_0x12d156,undefined),'hooksEnabled':_0x3fce1d,'stopAllowed':_0x5919b5}),await _0x5550f6[_0xe99729(0x115)](_0xe99729(0x109));}catch{}}
@@ -1 +1 @@
1
- (function(_0x53c4e8,_0x15c599){var _0x5c675c=_0xf546,_0x2d0e19=_0x53c4e8();while(!![]){try{var _0x5dd38f=-parseInt(_0x5c675c(0x11c))/0x1*(-parseInt(_0x5c675c(0x11a))/0x2)+-parseInt(_0x5c675c(0x122))/0x3*(parseInt(_0x5c675c(0x120))/0x4)+parseInt(_0x5c675c(0x11e))/0x5+-parseInt(_0x5c675c(0x11f))/0x6*(parseInt(_0x5c675c(0x11d))/0x7)+parseInt(_0x5c675c(0x121))/0x8*(-parseInt(_0x5c675c(0x124))/0x9)+-parseInt(_0x5c675c(0x11b))/0xa+parseInt(_0x5c675c(0x123))/0xb;if(_0x5dd38f===_0x15c599)break;else _0x2d0e19['push'](_0x2d0e19['shift']());}catch(_0x4a4cf0){_0x2d0e19['push'](_0x2d0e19['shift']());}}}(_0x4d6c,0xc1338));export{addEnv}from'./addEnv.js';export{clean}from'./clean.js';function _0x4d6c(){var _0x25e6cd=['296yesJBc','4159851vXeTnu','28692466PsEEOx','80010OzVWld','1698ztwWCw','11370000BKZPGv','739skSxAu','8386hwmCwO','4658040SmhePg','2622otpney','4TFyXIM'];_0x4d6c=function(){return _0x25e6cd;};return _0x4d6c();}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 _0xf546(_0x4bfdbc,_0x219df8){_0x4bfdbc=_0x4bfdbc-0x11a;var _0x4d6c45=_0x4d6c();var _0xf54649=_0x4d6c45[_0x4bfdbc];return _0xf54649;}export{migrateProfile}from'./migrateProfile.js';
1
+ (function(_0xff026e,_0x34128c){var _0x5ca277=_0xa6fc,_0x419353=_0xff026e();while(!![]){try{var _0x368fea=-parseInt(_0x5ca277(0x1a4))/0x1*(-parseInt(_0x5ca277(0x1a9))/0x2)+parseInt(_0x5ca277(0x1a1))/0x3*(-parseInt(_0x5ca277(0x1a3))/0x4)+-parseInt(_0x5ca277(0x1a8))/0x5+-parseInt(_0x5ca277(0x1a7))/0x6+-parseInt(_0x5ca277(0x1a5))/0x7+parseInt(_0x5ca277(0x1a6))/0x8+parseInt(_0x5ca277(0x1a0))/0x9*(parseInt(_0x5ca277(0x1a2))/0xa);if(_0x368fea===_0x34128c)break;else _0x419353['push'](_0x419353['shift']());}catch(_0x2c0b01){_0x419353['push'](_0x419353['shift']());}}}(_0x30b9,0xd635f));export{addEnv}from'./addEnv.js';export{clean}from'./clean.js';function _0xa6fc(_0x55e7be,_0x42325f){_0x55e7be=_0x55e7be-0x1a0;var _0x30b9bc=_0x30b9();var _0xa6fc0b=_0x30b9bc[_0x55e7be];return _0xa6fc0b;}export{login}from'./login.js';export{start,ensureLocalEnv,ensureChromium,authenticate}from'./start.js';function _0x30b9(){var _0x5f4bf2=['19PmAfSF','4020562zMXnBE','1358960khywEU','10495932tbzpJH','6990070vTKbiI','102792ASwlHq','47583OMzFhP','681111aWsKVB','6960qJjFhl','4kckPGk'];_0x30b9=function(){return _0x5f4bf2;};return _0x30b9();}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';