@ranger-testing/ranger-cli 2.5.4-alpha.bc88254-5 → 2.5.4-alpha.f6504c0-8

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 (80) hide show
  1. package/build/cli.js +1 -1
  2. package/build/commands/addEnv.js +1 -1
  3. package/build/commands/authEncrypt.js +1 -1
  4. package/build/commands/clean.js +1 -1
  5. package/build/commands/config.js +1 -1
  6. package/build/commands/env.js +1 -1
  7. package/build/commands/feature.js +1 -1
  8. package/build/commands/hook.js +1 -1
  9. package/build/commands/hooks/autoPrompt.js +1 -1
  10. package/build/commands/hooks/disable.js +1 -1
  11. package/build/commands/hooks/enable.js +1 -1
  12. package/build/commands/hooks/exitPlanMode.js +1 -1
  13. package/build/commands/hooks/index.js +1 -1
  14. package/build/commands/hooks/output.js +1 -1
  15. package/build/commands/hooks/planReminder.js +1 -1
  16. package/build/commands/hooks/planStart.js +1 -1
  17. package/build/commands/hooks/postEdit.js +1 -1
  18. package/build/commands/hooks/preCompact.js +1 -1
  19. package/build/commands/hooks/sessionEnd.js +1 -1
  20. package/build/commands/hooks/sessionStart.js +1 -1
  21. package/build/commands/hooks/stopHook.js +1 -1
  22. package/build/commands/index.js +1 -1
  23. package/build/commands/login.js +1 -1
  24. package/build/commands/mcpBootstrap.js +1 -1
  25. package/build/commands/migrateProfile.js +1 -1
  26. package/build/commands/setup/claude.js +1 -1
  27. package/build/commands/setup/opencode.js +1 -1
  28. package/build/commands/setupCi.js +1 -1
  29. package/build/commands/skillup.js +1 -1
  30. package/build/commands/start.js +1 -1
  31. package/build/commands/status.js +1 -1
  32. package/build/commands/update.js +1 -1
  33. package/build/commands/updateEnv.js +1 -1
  34. package/build/commands/useEnv.js +1 -1
  35. package/build/commands/utils/activeProfile.js +1 -1
  36. package/build/commands/utils/agentEnv.js +1 -1
  37. package/build/commands/utils/browserSessionsApi.js +1 -1
  38. package/build/commands/utils/claudeConfig.js +1 -1
  39. package/build/commands/utils/claudeOverrideSettings.js +1 -1
  40. package/build/commands/utils/claudePlugin.js +1 -1
  41. package/build/commands/utils/cloudProfile.js +1 -1
  42. package/build/commands/utils/cloudProfileSession.js +1 -1
  43. package/build/commands/utils/crypto.js +1 -1
  44. package/build/commands/utils/desirePathLog.js +1 -1
  45. package/build/commands/utils/deviceAuth.js +1 -1
  46. package/build/commands/utils/environment.js +1 -1
  47. package/build/commands/utils/featureApi.js +1 -1
  48. package/build/commands/utils/fixWebmDuration.js +1 -1
  49. package/build/commands/utils/gitTracked.js +1 -1
  50. package/build/commands/utils/keychain.js +1 -1
  51. package/build/commands/utils/localAgentInstallationsApi.js +1 -1
  52. package/build/commands/utils/matchAuthEnvironment.js +1 -1
  53. package/build/commands/utils/mcpImageBase64.js +1 -1
  54. package/build/commands/utils/model.js +1 -1
  55. package/build/commands/utils/opencodeConfig.js +1 -1
  56. package/build/commands/utils/playwrightCli.js +1 -1
  57. package/build/commands/utils/profileMessages.js +1 -1
  58. package/build/commands/utils/profileSetupBanner.js +1 -1
  59. package/build/commands/utils/projectsConfig.js +1 -1
  60. package/build/commands/utils/rangerConfig.js +1 -1
  61. package/build/commands/utils/rangerRoot.js +1 -1
  62. package/build/commands/utils/resolveProfileContext.js +1 -1
  63. package/build/commands/utils/resolveProfileUrl.js +1 -1
  64. package/build/commands/utils/retry.js +1 -1
  65. package/build/commands/utils/sessionCache.js +1 -1
  66. package/build/commands/utils/settings.js +1 -1
  67. package/build/commands/utils/skillContent.js +1 -1
  68. package/build/commands/utils/skills.js +1 -1
  69. package/build/commands/utils/stitchWebmFiles.js +1 -1
  70. package/build/commands/utils/telemetry.js +1 -1
  71. package/build/commands/utils/tokenRefresh.js +1 -1
  72. package/build/commands/utils/traceSnapshotMapper.js +1 -1
  73. package/build/commands/utils/userApi.js +1 -1
  74. package/build/commands/utils/version.js +1 -1
  75. package/build/commands/verifyFeature.js +1 -1
  76. package/build/commands/verifyFeatureCli.js +1 -1
  77. package/build/skills/ranger/SKILL.md +17 -4
  78. package/build/skills/ranger/create.md +6 -0
  79. package/build/skills/ranger/verify.md +13 -11
  80. package/package.json +1 -1
@@ -1 +1 @@
1
- const _0x3cf8e8=_0x3c68;function _0x3c68(_0x70ab06,_0x295dc7){_0x70ab06=_0x70ab06-0x88;const _0x27108b=_0x2710();let _0x3c68d0=_0x27108b[_0x70ab06];return _0x3c68d0;}(function(_0x1b5759,_0x3fd7c0){const _0x1fa817=_0x3c68,_0x450840=_0x1b5759();while(!![]){try{const _0xa22292=-parseInt(_0x1fa817(0x107))/0x1*(-parseInt(_0x1fa817(0xfc))/0x2)+-parseInt(_0x1fa817(0x15d))/0x3+-parseInt(_0x1fa817(0x8d))/0x4*(-parseInt(_0x1fa817(0x11b))/0x5)+parseInt(_0x1fa817(0xaa))/0x6*(-parseInt(_0x1fa817(0x118))/0x7)+-parseInt(_0x1fa817(0xcd))/0x8+parseInt(_0x1fa817(0x144))/0x9+-parseInt(_0x1fa817(0xee))/0xa*(-parseInt(_0x1fa817(0x157))/0xb);if(_0xa22292===_0x3fd7c0)break;else _0x450840['push'](_0x450840['shift']());}catch(_0x4c09a1){_0x450840['push'](_0x450840['shift']());}}}(_0x2710,0x34045));import{readFile,writeFile,mkdir}from'fs/promises';import{join}from'path';import{existsSync}from'fs';import{execSync}from'child_process';import _0x24d7a5 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';const ACTIVE_FEATURE_FILE=_0x3cf8e8(0xad),bold=_0x27e9ac=>'\x1b[1m'+_0x27e9ac+_0x3cf8e8(0xbe);function getGitRepoUrl(){const _0xa84489=_0x3cf8e8,_0x127a03={'HaoMe':_0xa84489(0x101),'qpafj':'utf-8','qGtTk':_0xa84489(0x112),'ScMum':'github.com/'};try{const _0x29e005=execSync(_0x127a03[_0xa84489(0x14e)],{'encoding':_0x127a03[_0xa84489(0xd9)],'stdio':[_0x127a03['qGtTk'],_0x127a03[_0xa84489(0xd4)],_0xa84489(0x112)]})[_0xa84489(0x134)]();return _0x29e005[_0xa84489(0x94)](/\.git$/,'')['replace'](/^git@github\.com:/,_0x127a03['ScMum'])['replace'](/^https?:\/\//,'');}catch{return undefined;}}function getGitBranch(){const _0x461fae=_0x3cf8e8,_0x2d06db={'tbOie':_0x461fae(0xd3)};try{return execSync('git\x20rev-parse\x20--abbrev-ref\x20HEAD',{'encoding':_0x2d06db['tbOie'],'stdio':['pipe',_0x461fae(0x112),_0x461fae(0x112)]})[_0x461fae(0x134)]();}catch{return undefined;}}export async function getActiveFeatureId(){const _0x374e2e=_0x3cf8e8,_0x10e47d={'xmObE':function(_0x3fc8c1,_0x380f15){return _0x3fc8c1(_0x380f15);}},_0x33d8e1=join(getRangerDir(),ACTIVE_FEATURE_FILE);if(!_0x10e47d[_0x374e2e(0xe3)](existsSync,_0x33d8e1))return null;try{const _0x1ca9df=await readFile(_0x33d8e1,_0x374e2e(0xd3));return _0x1ca9df[_0x374e2e(0x134)]()||null;}catch{return null;}}async function setActiveFeatureId(_0x58bbc8){const _0x3f9a3d=_0x3cf8e8,_0x444459={'WeKHy':function(_0x48716f,_0x31b43a,_0x30d4a7){return _0x48716f(_0x31b43a,_0x30d4a7);},'asxeF':function(_0x1e1f84,_0x231260,_0x21fd16){return _0x1e1f84(_0x231260,_0x21fd16);},'uGOuu':'utf-8'},_0x54b2f7=getRangerDir(),_0xa1f90c=_0x444459['WeKHy'](join,_0x54b2f7,ACTIVE_FEATURE_FILE);!existsSync(_0x54b2f7)&&await _0x444459[_0x3f9a3d(0x155)](mkdir,_0x54b2f7,{'recursive':!![]}),await writeFile(_0xa1f90c,_0x58bbc8,_0x444459['uGOuu']);}function getProgressDisplay(_0xf59e29){const _0x5bdd34=_0x3cf8e8,_0x3fd3ab={'ydPAb':function(_0x12fdb2,_0x111769){return _0x12fdb2+_0x111769;},'VHqov':function(_0x51882a,_0x5a7fa9){return _0x51882a+_0x5a7fa9;},'DLFEy':function(_0xc2fc20,_0x36a4de){return _0xc2fc20>_0x36a4de;}},_0x32c670=_0xf59e29['verifiedItems']||0x0,_0x3f05fe=_0xf59e29[_0x5bdd34(0xb4)]||0x0,_0x896a42=_0xf59e29['blockedItems']||0x0,_0x13ce52=_0xf59e29['incompleteItems']||0x0,_0x44e065=_0xf59e29['pendingItems']||0x0,_0x404136=_0x3fd3ab[_0x5bdd34(0x120)](_0x3fd3ab['VHqov'](_0x32c670,_0x3f05fe)+_0x896a42,_0x13ce52)+_0x44e065;if(_0x404136===0x0)return'-';const _0x51c990=0xa,_0x35fb13=Math['round'](_0x32c670/_0x404136*_0x51c990),_0x1ec493=_0x3fd3ab['VHqov']('█'[_0x5bdd34(0x126)](_0x35fb13),'░'[_0x5bdd34(0x126)](_0x51c990-_0x35fb13)),_0x4b21ce=[];if(_0x896a42>0x0)_0x4b21ce['push'](_0x896a42+'\x20blocked');if(_0x3fd3ab['DLFEy'](_0x13ce52,0x0))_0x4b21ce[_0x5bdd34(0x135)](_0x13ce52+'\x20incomplete');if(_0x3fd3ab[_0x5bdd34(0x128)](_0x3f05fe,0x0))_0x4b21ce[_0x5bdd34(0x135)](_0x3f05fe+_0x5bdd34(0x10d));const _0x2c07b6=_0x4b21ce[_0x5bdd34(0x89)]>0x0?'\x20('+_0x4b21ce['join'](',\x20')+')':'';return _0x1ec493+'\x20'+_0x32c670+'/'+_0x404136+'\x20verified'+_0x2c07b6;}function getCurrentSessionItems(_0x3dc446,_0x68dfa8){const _0x3406a8=_0x3cf8e8;if(!_0x3dc446['currentSessionId'])return _0x68dfa8[_0x3406a8(0x12d)](_0x474fd6=>!_0x474fd6[_0x3406a8(0x123)]);return _0x68dfa8['filter'](_0x583e1e=>_0x583e1e[_0x3406a8(0x123)]===_0x3dc446[_0x3406a8(0x13b)]||!_0x583e1e[_0x3406a8(0x123)]);}function displayFeature(_0x3334ae,_0x26e288){const _0xd3d650=_0x3cf8e8,_0x2f1669={'IxoYa':_0xd3d650(0x160),'lhiUr':function(_0x429c93,_0x3dba86){return _0x429c93<_0x3dba86;},'LpCpH':function(_0x56ea48,_0x1395c6){return _0x56ea48===_0x1395c6;},'Ejsod':'closed','FdJht':_0xd3d650(0x142),'rWwMk':function(_0x270b37,_0x4d438e){return _0x270b37===_0x4d438e;},'ENZAI':function(_0x39e7a2,_0x530b94){return _0x39e7a2===_0x530b94;},'TGqtd':_0xd3d650(0x161),'DVAAX':'verification_in_progress','lNWig':function(_0x28eb45,_0x9c3221){return _0x28eb45>_0x9c3221;},'Xetdj':function(_0x587b3f,_0x27fe0f){return _0x587b3f!==_0x27fe0f;},'WCyin':'\x20[has\x20reviewer\x20feedback]','wbBsr':function(_0x2261ec,_0x1b2b1a){return _0x2261ec+_0x1b2b1a;},'GmBEd':'blocked','DbOwG':function(_0x51d5c8,_0xad914d){return _0x51d5c8===_0xad914d;}};console['log']('\x0a'+_0x3334ae[_0xd3d650(0xfe)]+'\x20('+_0x3334ae[_0xd3d650(0xe2)]+')');_0x3334ae[_0xd3d650(0x117)]&&console['log']('\x20\x20\x20Progress:\x20'+getProgressDisplay(_0x3334ae['stats']));_0x3334ae[_0xd3d650(0xf2)]&&console['log'](_0xd3d650(0x92)+_0x3334ae['description']);_0x3334ae['gitRepoUrl']&&console[_0xd3d650(0xae)]('\x20\x20\x20Repository:\x20'+_0x3334ae[_0xd3d650(0x9a)]);_0x3334ae[_0xd3d650(0x154)]&&console[_0xd3d650(0xae)]('\x20\x20\x20Branch:\x20'+_0x3334ae['gitBranch']);console[_0xd3d650(0xae)]('\x20\x20\x20Created:\x20'+new Date(_0x3334ae['createdAt'])[_0xd3d650(0x15a)]());_0x3334ae[_0xd3d650(0x163)]&&console['log']('\x20\x20\x20Completed:\x20'+new Date(_0x3334ae[_0xd3d650(0x163)])[_0xd3d650(0x15a)]());if(_0x26e288&&_0x26e288['length']>0x0){console[_0xd3d650(0xae)](_0x2f1669[_0xd3d650(0xba)]);for(let _0xc85000=0x0;_0x2f1669['lhiUr'](_0xc85000,_0x26e288[_0xd3d650(0x89)]);_0xc85000++){const _0x3e09c8=_0x26e288[_0xc85000];let _0x227dc9;if(_0x2f1669[_0xd3d650(0xc7)](_0x3e09c8[_0xd3d650(0xe1)],_0x2f1669['Ejsod'])&&_0x3e09c8[_0xd3d650(0x12a)]===_0x2f1669['FdJht'])_0x227dc9='✅';else{if(_0x2f1669['rWwMk'](_0x3e09c8[_0xd3d650(0xe1)],'verified'))_0x227dc9='🟢';else{if(_0x2f1669['ENZAI'](_0x3e09c8[_0xd3d650(0xe1)],_0x2f1669[_0xd3d650(0xa9)]))_0x227dc9='🟠';else{if(_0x3e09c8[_0xd3d650(0xe1)]===_0xd3d650(0xce))_0x227dc9='🛑';else{if(_0x3e09c8['status']==='closed')_0x227dc9='⛔';else _0x3e09c8[_0xd3d650(0xe1)]===_0x2f1669[_0xd3d650(0xa3)]?_0x227dc9='⏳':_0x227dc9='⬜';}}}}const _0x1dd432=_0x2f1669['lNWig'](_0x3e09c8['version'],0x1)?_0xd3d650(0xab)+_0x3e09c8['version']+')':'',_0x2483eb=_0x3e09c8['version']>0x1&&_0x3e09c8[_0xd3d650(0x105)]&&_0x2f1669[_0xd3d650(0x106)](_0x3e09c8[_0xd3d650(0xe1)],'closed')&&_0x3e09c8[_0xd3d650(0xe1)]!==_0xd3d650(0x102)?_0x2f1669['WCyin']:'';console['log']('\x20\x20\x20'+_0x2f1669['wbBsr'](_0xc85000,0x1)+'.\x20'+_0x227dc9+'\x20'+_0x3e09c8['description']+_0x1dd432+_0x2483eb);_0x3e09c8['status']===_0x2f1669['GmBEd']&&_0x3e09c8['blockedReason']&&console['log'](_0xd3d650(0xbf)+_0x3e09c8[_0xd3d650(0xb3)]);_0x2f1669['DbOwG'](_0x3e09c8['status'],'incomplete')&&_0x3e09c8['incompleteReason']&&console['log']('\x20\x20\x20\x20\x20\x20Incomplete:\x20'+_0x3e09c8[_0xd3d650(0xc5)]);if(_0x3e09c8[_0xd3d650(0xe1)]===_0x2f1669[_0xd3d650(0xe9)]&&_0x3e09c8['terminalReason']===_0x2f1669['FdJht'])console['log'](_0xd3d650(0xcc));else _0x2f1669['DbOwG'](_0x3e09c8[_0xd3d650(0xe1)],_0x2f1669[_0xd3d650(0xe9)])&&_0x3e09c8[_0xd3d650(0x147)]&&console[_0xd3d650(0xae)](_0xd3d650(0x151)+_0x3e09c8['canceledReason']);}}}function _0x2710(){const _0x936c8f=['browserSessionId','Cannot\x20add\x20scenario:\x20feature\x20review\x20has\x20an\x20active\x20review.\x20Please\x20finish\x20your\x20review\x20first:\x20','currentSessionId','Please\x20specify\x20the\x20feature\x20review\x20ID:\x20ranger\x20resume\x20<id>','iteration','\x0a📁\x20Sessions\x20for\x20feature\x20review:\x20','selector','list','canonicalFlow','approved','Next\x20page:\x20ranger\x20list\x20--offset\x20','340407amWxRk','after','\x20\x20\x20Completed:\x20','canceledReason','efYYX','DGggg','short','OSVTY','CAPRo','map','HaoMe','selected','split','\x20\x20\x20\x20\x20\x20Cancelled:\x20','\x20\x20\x20\x20\x20📍\x20Annotation:\x20','\x0a✅\x20Restored\x20feature\x20review:\x20','gitBranch','asxeF','unaddressedComments','7270153piZzeB','isKeyStep','YjUXj','toLocaleString','json','numeric','1010067OVIuSm','\x20\x20\x20\x20','scenarios','\x0a\x20\x20\x20Scenarios:','incomplete','currentBranch','completedAt','linkedSession','NnIxF','length','nFcjQ','\x20--current-branch','includeDeleted','20FSIAaU','\x20concluded.','Please\x20finish\x20your\x20review\x20first:','reports','style','\x20\x20\x20Description:\x20','write','replace','woNBo','\x0a✅\x20Scenario\x20added','\x0aNo\x20matching\x20active\x20feature\x20reviews\x20found.','output','No\x20sessions\x20found.','gitRepoUrl','hnhAa','spatial','\x20\x20\x20To\x20restore\x20it,\x20run:\x20ranger\x20restore\x20','\x20Session\x20','Scenario\x20','sleNx','ogUZT','No\x20active\x20session\x20for\x20this\x20feature\x20review.','DVAAX','assetType','RXARO','ready','isTTY','EEpoT','TGqtd','150qibXSq','\x20(v','hJfiC','active-feature.txt','log','Current\x20session\x20not\x20found.','assetUrl','completed','zmJaR','blockedReason','verificationInProgressItems','aUrNP','stdin','EbObT','.png','exit','IxoYa','NTBIC','gDAHq','checklistItems','\x1b[0m','\x20\x20\x20\x20\x20\x20Blocked:\x20','createdAt','No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','onjGN','arrayBuffer','storage','incompleteReason','submittedAt','LpCpH','POUUR','ORUJA','\x0a❌\x20Invalid\x20scenario\x20index:\x20','element','\x20\x20\x20\x20\x20\x20Approved','3383080JWuFXi','blocked','gulpL','\x20\x20\x20The\x20feature\x20review\x20is\x20now\x20ready\x20for\x20human\x20review\x20on\x20the\x20Ranger\x20dashboard.','screenshotUrls','gdOOd','utf-8','qGtTk','comment_','ijhsF','totalCount','assets','qpafj','version','\x20\x20\x20Created:\x20','find','EYDJF','\x0aNo\x20feature\x20reviews\x20found.','coordinates','\x20scenarios.','status','dashboardUrl','xmObE','feedback-images','stepName','XglEk','No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.','content','Ejsod','items','screenshot','tQcSb','EIgpN','10JxGqeD','timing','Run:\x20ranger\x20create\x20\x22<name>\x22\x20to\x20create\x20a\x20new\x20feature\x20review','pop','description','type','stdout','trimEnd','zZOjn','env','verification_in_progress','goofP','ovUBW','en-US','4tNayKz','domRef','name','\x20—\x20no\x20comments','FEEZQ','git\x20remote\x20get-url\x20origin','verified','get','tZRgw','parentItemId','Xetdj','115602gzUPrz','\x0a✅\x20Session\x20is\x20already\x20completed.','latestReview','\x20\x20\x20\x20\x20📍\x20Annotation:\x20point\x20at\x20(','\x0a✅\x20Feature\x20review\x20created:\x20','Multiple\x20feature\x20reviews\x20found.\x20Select\x20one:','\x20in\x20progress','position','AcHUt','in_progress','toLocaleDateString','pipe','...','\x0aCreating\x20feature\x20review...','notes','\x0aNon-interactive\x20mode\x20detected.\x20Multiple\x20feature\x20reviews\x20found:','stats','74452ZFcuUh','AZfBZ','.\x20Feature\x20review\x20has\x20','308585QcOoCm','error','textContent','\x20>\x20','\x0aConcluding\x20session...','ydPAb','SzUDR','\x20\x20\x20\x20\x20Branch:\x20','sessionId','\x20at\x20[','GouJi','repeat','pPMXl','DLFEy','limit','terminalReason','GBrHH','\x0a⚠️\x20\x20','filter','TPMqa','offset','eQIiv','CLAUDE_SESSION_ID','slice','scenario','trim','push','\x20\x20\x20Updated\x20branch\x20to:\x20','agentResponse','HbxCR'];_0x2710=function(){return _0x936c8f;};return _0x2710();}export async function featureCreate(_0x33a9ab,_0x24a856){const _0x31ffc4=_0x3cf8e8,_0x423f6d={'woNBo':function(_0x1e0222){return _0x1e0222();},'cYKaE':function(_0x5c1a95,_0x105970){return _0x5c1a95(_0x105970);}},{envNames:_0x36713a}=await _0x423f6d[_0x31ffc4(0x95)](getEnvNames);_0x36713a['length']===0x0&&console['warn']('\x0a'+formatProfileRequiredMessage(_0x3720d2=>bold(_0x3720d2)));const _0x509302=_0x24a856['scenarios']?_0x24a856[_0x31ffc4(0x15f)][_0x31ffc4(0x14d)](_0x10c912=>_0x10c912[_0x31ffc4(0x134)]()):[],_0x3d9331=getGitRepoUrl(),_0x48bbef=getGitBranch();console['log'](_0x31ffc4(0x114));const _0xc11e5=await _0x423f6d['cYKaE'](createFeature,{'name':_0x33a9ab,'description':_0x24a856[_0x31ffc4(0xf2)],'checklist':_0x509302,'gitRepoUrl':_0x3d9331,'gitBranch':_0x48bbef});await setActiveFeatureId(_0xc11e5['id']),await tryStartCurrentSession(_0xc11e5['id']);const _0x44f5ae=process[_0x31ffc4(0xf7)][_0x31ffc4(0x131)];_0x44f5ae&&registerSession(_0x44f5ae,_0xc11e5['id']),console['log'](_0x31ffc4(0x10b)+_0xc11e5['id']),displayFeature(_0xc11e5,_0xc11e5['checklistItems']),console['log']('\x0a➡️\x20\x20Set\x20as\x20active\x20feature\x20review');}export async function featureList(_0x539cd5){const _0x34ccb5=_0x3cf8e8,_0x1f7406={'XglEk':function(_0x4d5546){return _0x4d5546();},'POUUR':function(_0x3cfbd9,_0x285cf4){return _0x3cfbd9(_0x285cf4);},'wPYda':function(_0xaa8b0f,_0x5b431f){return _0xaa8b0f(_0x5b431f);},'NnIxF':_0x34ccb5(0x8b)},_0x56ebc3={'limit':_0x539cd5[_0x34ccb5(0x129)]??0xa,'offset':_0x539cd5[_0x34ccb5(0x12f)]??0x0,'includeDeleted':_0x539cd5['includeDeleted']};_0x539cd5[_0x34ccb5(0x162)]&&(_0x56ebc3['gitRepoUrl']=_0x1f7406['XglEk'](getGitRepoUrl),_0x56ebc3['gitBranch']=_0x1f7406[_0x34ccb5(0xe6)](getGitBranch));const _0x1b99b2=await _0x1f7406[_0x34ccb5(0xc8)](listFeatures,_0x56ebc3);if(_0x1b99b2[_0x34ccb5(0xea)]['length']===0x0){console[_0x34ccb5(0xae)](_0x34ccb5(0xde));return;}const _0x3ab9cc=_0x1b99b2['totalCount']>_0x1b99b2[_0x34ccb5(0xea)]['length']?'Showing\x20'+_0x1b99b2[_0x34ccb5(0xea)][_0x34ccb5(0x89)]+'\x20of\x20'+_0x1b99b2[_0x34ccb5(0xd7)]:_0x1b99b2['totalCount']+'\x20feature\x20review(s)\x20found';console['log']('\x0a'+_0x3ab9cc+':\x0a');for(const _0x2e4b04 of _0x1b99b2[_0x34ccb5(0xea)]){console['log'](''+_0x2e4b04[_0x34ccb5(0xfe)]),console[_0x34ccb5(0xae)]('\x20\x20\x20ID:\x20'+_0x2e4b04['id']),_0x2e4b04[_0x34ccb5(0x117)]&&console['log']('\x20\x20\x20Progress:\x20'+_0x1f7406['wPYda'](getProgressDisplay,_0x2e4b04[_0x34ccb5(0x117)])),_0x2e4b04['gitBranch']&&console[_0x34ccb5(0xae)]('\x20\x20\x20Branch:\x20'+_0x2e4b04[_0x34ccb5(0x154)]),console['log'](_0x34ccb5(0xdb)+new Date(_0x2e4b04[_0x34ccb5(0xc0)])[_0x34ccb5(0x111)]()),console[_0x34ccb5(0xae)]('');}const _0xc8ca90=_0x56ebc3['limit']??0xa,_0xe8ea38=(_0x56ebc3[_0x34ccb5(0x12f)]??0x0)+_0x1b99b2[_0x34ccb5(0xea)]['length'];if(_0xe8ea38<_0x1b99b2['totalCount']){const _0x55f0d2=_0xc8ca90!==0xa?'\x20--limit\x20'+_0xc8ca90:'',_0x41a084=_0x539cd5[_0x34ccb5(0x162)]?_0x1f7406[_0x34ccb5(0x88)]:'',_0x5a743a=_0x539cd5[_0x34ccb5(0x8c)]?'\x20--include-deleted':'';console[_0x34ccb5(0xae)](_0x34ccb5(0x143)+_0xe8ea38+_0x55f0d2+_0x41a084+_0x5a743a);}}export async function featureShow(_0x2b448a){const _0x47d764=_0x3cf8e8,_0x1a9ec9={'SzUDR':function(_0x5dd08f,_0x4c9c51){return _0x5dd08f(_0x4c9c51);}},_0x37da1c=_0x2b448a||await getActiveFeatureId();if(!_0x37da1c)throw new Error('No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review');const _0x1bf3c7=await _0x1a9ec9[_0x47d764(0x121)](getFeature,_0x37da1c);displayFeature(_0x1bf3c7,_0x1bf3c7[_0x47d764(0xbd)]);}export async function featureResume(_0x35407f){const _0x51375b=_0x3cf8e8,_0x59087c={'YjUXj':function(_0x72b190){return _0x72b190();},'FlVGl':function(_0x19f4f0,_0x56a734,_0x1af8be){return _0x19f4f0(_0x56a734,_0x1af8be);},'ORUJA':function(_0x11d78b,_0x56b1d2,_0x53ae83){return _0x11d78b(_0x56b1d2,_0x53ae83);},'oShLt':function(_0x5410c5,_0x5928d4){return _0x5410c5(_0x5928d4);},'goofP':function(_0x26effc,_0x4be00c){return _0x26effc&&_0x4be00c;},'tZRgw':'Not\x20in\x20a\x20git\x20repository.','DGggg':function(_0x3d9b06,_0x4562e7){return _0x3d9b06===_0x4562e7;},'ovUBW':function(_0x188867,_0x406817){return _0x188867===_0x406817;},'ogUZT':_0x51375b(0x116),'lrOEJ':_0x51375b(0x140),'qVlAG':_0x51375b(0x14f),'qpiYH':function(_0x4adadb,_0x2204a0){return _0x4adadb(_0x2204a0);},'NSggy':function(_0x3bbf71,_0x631176,_0x3debcc){return _0x3bbf71(_0x631176,_0x3debcc);},'cJFCO':function(_0x40542c,_0x3e6ed8,_0x33ab89){return _0x40542c(_0x3e6ed8,_0x33ab89);}};if(_0x35407f){const _0x44c021=await getFeature(_0x35407f);await setActiveFeatureId(_0x44c021['id']);const _0x422ed8=_0x59087c[_0x51375b(0x159)](getGitBranch);_0x422ed8&&_0x422ed8!==_0x44c021[_0x51375b(0x154)]&&(await _0x59087c['FlVGl'](updateFeature,_0x44c021['id'],{'gitBranch':_0x422ed8}),console[_0x51375b(0xae)](_0x51375b(0x136)+_0x422ed8));console['log']('\x0a✅\x20Resumed\x20feature\x20review:\x20'+_0x44c021[_0x51375b(0xfe)]+'\x20('+_0x44c021['id']+')'),await tryStartCurrentSession(_0x44c021['id']);const _0x1f0010=process[_0x51375b(0xf7)]['CLAUDE_SESSION_ID'];_0x1f0010&&registerSession(_0x1f0010,_0x44c021['id']);_0x59087c[_0x51375b(0xc9)](displayFeature,_0x44c021,_0x44c021['checklistItems']),await _0x59087c['oShLt'](printFeedbackNudge,_0x44c021['id']);return;}const _0xe18ab=getGitRepoUrl(),_0x56f190=_0x59087c[_0x51375b(0x159)](getGitBranch);if(_0x59087c[_0x51375b(0xf9)](!_0xe18ab,!_0x56f190))throw new Error(_0x59087c[_0x51375b(0x104)]);console[_0x51375b(0xae)]('\x0aSearching\x20for\x20feature\x20reviews\x20matching:\x20'+(_0xe18ab||'any')+'\x20/\x20'+(_0x56f190||'any')+_0x51375b(0x113));const _0x33b079=await _0x59087c['oShLt'](listFeatures,{'gitRepoUrl':_0xe18ab,'gitBranch':_0x56f190}),_0x22ddba=_0x33b079[_0x51375b(0xea)]['filter'](_0x5641da=>_0x5641da[_0x51375b(0xe1)]?_0x5641da[_0x51375b(0xe1)]!=='verified':!_0x5641da['completedAt']);if(_0x59087c[_0x51375b(0x149)](_0x22ddba['length'],0x0)){console['log'](_0x51375b(0x97)),console[_0x51375b(0xae)](_0x51375b(0xf0));return;}let _0x9beadd;if(_0x59087c[_0x51375b(0xfa)](_0x22ddba[_0x51375b(0x89)],0x1))_0x9beadd=_0x22ddba[0x0];else{const _0x5bf23d=process[_0x51375b(0xb6)][_0x51375b(0xa7)]&&process['stdout']['isTTY'];if(!_0x5bf23d){console['log'](_0x59087c[_0x51375b(0xa1)]);for(const _0x9869e5 of _0x22ddba){console[_0x51375b(0xae)]('\x20\x20'+_0x9869e5['name']),console[_0x51375b(0xae)]('\x20\x20\x20\x20\x20ID:\x20'+_0x9869e5['id']),_0x9869e5['stats']&&console['log']('\x20\x20\x20\x20\x20Progress:\x20'+getProgressDisplay(_0x9869e5['stats'])),_0x9869e5['gitBranch']&&console[_0x51375b(0xae)](_0x51375b(0x122)+_0x9869e5['gitBranch']);}throw new Error(_0x51375b(0x13c));}const {selected:_0x280302}=await _0x24d7a5['prompt']([{'type':_0x59087c['lrOEJ'],'name':_0x59087c['qVlAG'],'message':_0x51375b(0x10c),'choices':_0x22ddba['map'](_0x4a3373=>({'name':_0x4a3373[_0x51375b(0xfe)]+'\x20('+_0x4a3373['id']+')','value':_0x4a3373['id']}))}]);_0x9beadd=_0x22ddba[_0x51375b(0xdc)](_0x43344c=>_0x43344c['id']===_0x280302);}await setActiveFeatureId(_0x9beadd['id']);_0x56f190&&_0x56f190!==_0x9beadd['gitBranch']&&(await updateFeature(_0x9beadd['id'],{'gitBranch':_0x56f190}),console[_0x51375b(0xae)](_0x51375b(0x136)+_0x56f190));console['log']('\x0a✅\x20Resumed\x20feature\x20review:\x20'+_0x9beadd[_0x51375b(0xfe)]+'\x20('+_0x9beadd['id']+')'),await _0x59087c['qpiYH'](tryStartCurrentSession,_0x9beadd['id']);const _0x1f8a1f=await getFeature(_0x9beadd['id']),_0x26cdca=process[_0x51375b(0xf7)][_0x51375b(0x131)];_0x26cdca&&_0x59087c['NSggy'](registerSession,_0x26cdca,_0x1f8a1f['id']),_0x59087c['cJFCO'](displayFeature,_0x1f8a1f,_0x1f8a1f['checklistItems']),await _0x59087c['oShLt'](printFeedbackNudge,_0x1f8a1f['id']);}async function printFeedbackNudge(_0x495491){const _0x246555=_0x3cf8e8,_0x5b5774={'NjaxT':function(_0x5c69ae,_0x578bc5,_0x5895a5){return _0x5c69ae(_0x578bc5,_0x5895a5);},'eQIiv':function(_0x352eef,_0x4f0a03){return _0x352eef>_0x4f0a03;},'CAPRo':'\x20\x20\x20Run\x20`ranger\x20get-review`\x20to\x20see\x20what\x20needs\x20to\x20be\x20fixed.'};try{const {items:_0x44b1cf}=await getActionItems(_0x495491);let _0x202812=0x0,_0x32b65b=0x0;for(const _0x294ace of _0x44b1cf){const _0x3a29f5=await _0x5b5774['NjaxT'](getItemFeedback,_0x495491,_0x294ace['id']);_0x5b5774[_0x246555(0x130)](_0x3a29f5[_0x246555(0x156)][_0x246555(0x89)],0x0)&&(_0x202812+=_0x3a29f5['unaddressedComments'][_0x246555(0x89)],_0x32b65b++);}_0x202812>0x0&&(console['log'](_0x246555(0x12c)+_0x202812+'\x20unaddressed\x20reviewer\x20comment(s)\x20across\x20'+_0x32b65b+'\x20scenario(s).'),console['log'](_0x5b5774[_0x246555(0x14c)]));}catch{}}async function tryStartCurrentSession(_0x371190){const _0x567ab9=_0x3cf8e8,_0x5461cb={'cakAO':function(_0x5b46c7,_0x4a2d26){return _0x5b46c7(_0x4a2d26);}};try{const {sessions:_0x5b5521}=await _0x5461cb['cakAO'](listFeatureSessions,_0x371190),_0x5e497e=_0x5b5521[_0x567ab9(0xdc)](_0x2a3516=>_0x2a3516[_0x567ab9(0xe1)]===_0x567ab9(0xa6));_0x5e497e&&(await startSession(_0x371190,_0x5e497e['id']),console['log']('\x20\x20\x20▶️\x20Started\x20session\x20'+_0x5e497e[_0x567ab9(0x13d)]));}catch{}}export async function featureReport(_0x18fb9c,_0x2dac80){const _0x30e08e=_0x3cf8e8,_0xa31959={'hnhAa':function(_0x132bde){return _0x132bde();},'zmJaR':'No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.','efYYX':'\x0aGenerating\x20report...','AZfBZ':function(_0xeca17d,_0x2149cb,_0x5bc9a7){return _0xeca17d(_0x2149cb,_0x5bc9a7);},'TpqZf':function(_0x52f555,_0x1f0e70,_0x4bd904,_0x35ab5a){return _0x52f555(_0x1f0e70,_0x4bd904,_0x35ab5a);},'tFfnr':_0x30e08e(0xd3)},_0x2a6b7a=_0x18fb9c||await _0xa31959[_0x30e08e(0x9b)](getActiveFeatureId);if(!_0x2a6b7a)throw new Error(_0xa31959[_0x30e08e(0xb2)]);console['log'](_0xa31959[_0x30e08e(0x148)]);const _0x312ebc=await _0xa31959[_0x30e08e(0x119)](getFeatureReportMarkdown,_0x2a6b7a,{'style':_0x2dac80[_0x30e08e(0x91)]}),_0x2cd9e4=_0x2dac80[_0x30e08e(0x98)]||join(_0xa31959['hnhAa'](getRangerDir),_0x30e08e(0x90),_0x2a6b7a+'.md'),_0x2e8f02=join(_0x2cd9e4,'..');!existsSync(_0x2e8f02)&&await _0xa31959[_0x30e08e(0x119)](mkdir,_0x2e8f02,{'recursive':!![]}),await _0xa31959['TpqZf'](writeFile,_0x2cd9e4,_0x312ebc,_0xa31959['tFfnr']),console[_0x30e08e(0xae)]('\x0a✅\x20Report\x20generated:\x20'+_0x2cd9e4);}function getScenarioResult(_0x3800f0){const _0x1d809b=_0x3cf8e8;if(_0x3800f0[_0x1d809b(0xe1)]==='closed')return _0x3800f0[_0x1d809b(0x12a)]??'closed';if(_0x3800f0['status']===_0x1d809b(0xf8))return _0x1d809b(0x110);return _0x3800f0[_0x1d809b(0xe1)];}function getScenarioRationale(_0x276964,_0x106bc3){const _0x35106a=_0x3cf8e8;if(_0x106bc3)return _0x106bc3;if(_0x276964[_0x35106a(0xb3)])return _0x276964[_0x35106a(0xb3)];if(_0x276964[_0x35106a(0xc5)])return _0x276964[_0x35106a(0xc5)];if(_0x276964['canceledReason'])return _0x276964['canceledReason'];if(_0x276964[_0x35106a(0x115)])return _0x276964['notes'];return null;}export async function featureReportPrDescription(_0x8a014d,_0x2ee810){const _0xf9c3ba=_0x3cf8e8,_0x1decda={'zZOjn':function(_0x310d14){return _0x310d14();},'eyrxU':_0xf9c3ba(0xe7),'OyNaY':function(_0xeb465b,_0x1119b9){return _0xeb465b+_0x1119b9;}},_0x2bcffa=_0x8a014d||await _0x1decda[_0xf9c3ba(0xf6)](getActiveFeatureId);if(!_0x2bcffa)throw new Error(_0x1decda['eyrxU']);const _0x45eb93=await getFeature(_0x2bcffa),_0x39a694=_0x45eb93[_0xf9c3ba(0xbd)]||[],_0x368503=getCurrentSessionItems(_0x45eb93,_0x39a694);_0x368503[_0xf9c3ba(0x89)]===0x0&&(console[_0xf9c3ba(0x11c)]('\x0a❌\x20No\x20scenarios\x20found\x20to\x20include.'),process['exit'](0x1));const _0x7e3094=_0x2ee810['excludeScenarios']??[],_0x4d9ed4=_0x7e3094[_0xf9c3ba(0x12d)](_0xd134d1=>!Number['isInteger'](_0xd134d1)||_0xd134d1<0x1||_0xd134d1>_0x368503[_0xf9c3ba(0x89)]);if(_0x4d9ed4['length']>0x0){console[_0xf9c3ba(0x11c)]('\x0a❌\x20Invalid\x20scenario\x20number(s):\x20'+_0x4d9ed4['join'](',\x20')),console['log']('\x0aAvailable\x20scenarios:');for(let _0x2c30fe=0x0;_0x2c30fe<_0x368503[_0xf9c3ba(0x89)];_0x2c30fe++){console['log']('\x20\x20'+_0x1decda['OyNaY'](_0x2c30fe,0x1)+'.\x20'+_0x368503[_0x2c30fe][_0xf9c3ba(0xf2)]);}process['exit'](0x1);}const _0x5f2a80=new Set(_0x7e3094['map'](_0x465b5f=>_0x465b5f-0x1)),_0x3c448a=_0x368503[_0xf9c3ba(0x12d)]((_0x520d99,_0x20c23a)=>!_0x5f2a80['has'](_0x20c23a));_0x3c448a['length']===0x0&&(console[_0xf9c3ba(0x11c)]('\x0a❌\x20All\x20scenarios\x20were\x20excluded.'),process['exit'](0x1));if(_0x2ee810[_0xf9c3ba(0x15b)])await outputJsonReport(_0x2bcffa,_0x45eb93,_0x3c448a);else{const _0x2d156b=await getFeatureReportMarkdown(_0x2bcffa,{'itemIds':_0x3c448a['map'](_0x248433=>_0x248433['id'])});process['stdout']['write'](_0x2d156b[_0xf9c3ba(0xf5)]()+'\x0a');}}async function outputJsonReport(_0x59c093,_0x138e42,_0x3dbecb){const _0x3821cf=_0x3cf8e8,_0x50610e={'nIjTN':function(_0x18061e,_0x465b30){return _0x18061e(_0x465b30);},'nBWcc':function(_0x25fa8b,_0x46fbdb){return _0x25fa8b>_0x46fbdb;},'FDURR':function(_0x1a9fdb){return _0x1a9fdb();},'ijhsF':function(_0x5db5b5,_0x3bdd80){return _0x5db5b5(_0x3bdd80);}},_0x576d0b=_0x50610e['FDURR'](getApiBaseUrl),_0x17aed9=await _0x50610e[_0x3821cf(0xd6)](getFeatureReport,_0x59c093),_0x11810f=new Map(_0x17aed9[_0x3821cf(0xbd)]['map'](_0x30ebed=>[_0x30ebed['id'],_0x30ebed])),_0x569947=await Promise['all'](_0x3dbecb['map'](async _0x119812=>{const _0x346f69=_0x3821cf,_0x4a35fb=_0x11810f[_0x346f69(0x103)](_0x119812['id']),_0x586dd4=_0x4a35fb?.[_0x346f69(0x164)]??null;let _0x355471=[];if(_0x119812[_0x346f69(0x139)])try{const {steps:_0xfe7ab3}=await _0x50610e['nIjTN'](getBrowserSessionSteps,_0x119812[_0x346f69(0x139)]);_0x50610e['nBWcc'](_0xfe7ab3['length'],0x0)&&(_0x355471=_0xfe7ab3['map'](_0x194289=>{const _0x49d25d=_0x346f69,_0x13b1d7=_0x194289[_0x49d25d(0xd8)][_0x49d25d(0xdc)](_0x3e438e=>_0x3e438e[_0x49d25d(0xa4)]==='screenshot'&&_0x3e438e[_0x49d25d(0xef)]===_0x49d25d(0x145))??_0x194289['assets'][_0x49d25d(0xdc)](_0x48ec98=>_0x48ec98[_0x49d25d(0xa4)]===_0x49d25d(0xeb));let _0x1c6d08=null,_0x254878=null;if(_0x13b1d7){const _0x2bbeb2=_0x13b1d7[_0x49d25d(0xc4)]['location']['split']('/')[_0x49d25d(0xf1)]();_0x1c6d08=_0x576d0b+'/api/v1/mcp/browser-sessions/'+_0x119812['browserSessionId']+'/artifacts/'+_0x2bbeb2,_0x2bbeb2&&(_0x254878=_0x2bbeb2['replace'](/\.\w+$/,'')[_0x49d25d(0x94)](/^(key_)?\d+_/,'')['replace'](/[-_]/g,'\x20'));}return{'description':_0x254878||_0x194289[_0x49d25d(0xf2)]||_0x194289[_0x49d25d(0xe5)]||'Step\x20'+_0x194289[_0x49d25d(0x10e)],'screenshot':_0x1c6d08,'is_key_step':_0x194289[_0x49d25d(0x158)]};}));}catch{}return _0x355471[_0x346f69(0x89)]===0x0&&_0x586dd4?.[_0x346f69(0xd1)]&&(_0x355471=_0x586dd4['screenshotUrls'][_0x346f69(0x14d)]((_0x575f0d,_0x4d65f5)=>({'description':'Screenshot\x20'+(_0x4d65f5+0x1),'screenshot':_0x575f0d,'is_key_step':![]}))),{'description':_0x119812['description'],'result':_0x50610e['nIjTN'](getScenarioResult,_0x119812),'rationale':getScenarioRationale(_0x119812,_0x586dd4?.[_0x346f69(0x137)]),'steps':_0x355471};})),_0x42dcf5={'url':_0x138e42[_0x3821cf(0xe2)],'scenarios':_0x569947};process[_0x3821cf(0xf4)][_0x3821cf(0x93)](JSON['stringify'](_0x42dcf5,null,0x2)+'\x0a');}export async function featureConcludeSession(_0x1cda7c){const _0x402e31=_0x3cf8e8,_0x283f27={'HXGvP':function(_0x24fa00,_0x486911){return _0x24fa00(_0x486911);},'onjGN':_0x402e31(0xaf),'vQOzv':function(_0x1beca4,_0x15eac8){return _0x1beca4===_0x15eac8;},'pMShM':'completed','AcHUt':_0x402e31(0x110),'TAWCz':_0x402e31(0x11f)},_0x5787a3=_0x1cda7c||await getActiveFeatureId();if(!_0x5787a3)throw new Error('No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review');const _0x46e4b7=await getFeature(_0x5787a3);if(!_0x46e4b7[_0x402e31(0x13b)])throw new Error(_0x402e31(0xa2));const {sessions:_0x70d8a4}=await _0x283f27['HXGvP'](listFeatureSessions,_0x5787a3),_0x108af1=_0x70d8a4[_0x402e31(0xdc)](_0x2876bd=>_0x2876bd['id']===_0x46e4b7['currentSessionId']);if(!_0x108af1)throw new Error(_0x283f27[_0x402e31(0xc2)]);if(_0x283f27['vQOzv'](_0x108af1['status'],_0x283f27['pMShM'])){console[_0x402e31(0xae)](_0x402e31(0x108));return;}if(_0x108af1['status']!==_0x283f27[_0x402e31(0x10f)])throw new Error('Cannot\x20conclude\x20session\x20with\x20status:\x20'+_0x108af1[_0x402e31(0xe1)]);console['log'](_0x283f27['TAWCz']),await concludeSession(_0x5787a3,_0x46e4b7['currentSessionId']),console[_0x402e31(0xae)]('\x0a✅\x20Session\x20'+_0x108af1['iteration']+_0x402e31(0x8e)),console[_0x402e31(0xae)](_0x402e31(0xd0));}export async function featureSessions(_0xc72003){const _0x5cfb28=_0x3cf8e8,_0x16d966={'pPMXl':_0x5cfb28(0xe7),'tQcSb':function(_0xfcd3cd,_0x437910){return _0xfcd3cd(_0x437910);},'uHsiI':function(_0x510461,_0x3d100a){return _0x510461(_0x3d100a);},'RXARO':function(_0x1576a7,_0x1f9720){return _0x1576a7===_0x1f9720;},'UdVTc':function(_0x35b40a,_0x3510ef){return _0x35b40a===_0x3510ef;},'GouJi':_0x5cfb28(0x110)},_0x15a987=_0xc72003||await getActiveFeatureId();if(!_0x15a987)throw new Error(_0x16d966[_0x5cfb28(0x127)]);const _0x120f8a=await _0x16d966[_0x5cfb28(0xec)](getFeature,_0x15a987);console['log'](_0x5cfb28(0x13e)+_0x120f8a[_0x5cfb28(0xfe)]+'\x0a');const {sessions:_0x35ad91}=await _0x16d966['uHsiI'](listFeatureSessions,_0x15a987);if(_0x16d966[_0x5cfb28(0xa5)](_0x35ad91['length'],0x0)){console['log'](_0x5cfb28(0x99));return;}for(const _0x1684ac of _0x35ad91){const _0x3c94b9=_0x16d966['RXARO'](_0x1684ac[_0x5cfb28(0xe1)],_0x5cfb28(0xb1))?'✅':_0x16d966['UdVTc'](_0x1684ac['status'],_0x16d966[_0x5cfb28(0x125)])?'🔄':'▶️';console[_0x5cfb28(0xae)](_0x3c94b9+_0x5cfb28(0x9e)+_0x1684ac['iteration']+'\x20('+_0x1684ac['id']+')'),console['log']('\x20\x20\x20Status:\x20'+_0x1684ac['status']),console['log'](_0x5cfb28(0xdb)+new Date(_0x1684ac[_0x5cfb28(0xc0)])['toLocaleString']()),_0x1684ac[_0x5cfb28(0x163)]&&console[_0x5cfb28(0xae)](_0x5cfb28(0x146)+new Date(_0x1684ac['completedAt'])['toLocaleString']()),console[_0x5cfb28(0xae)]('');}}export async function featureAddScenario(_0x35d29f,_0x171b86){const _0x59429e=_0x3cf8e8,_0x13640c={'TPMqa':function(_0xa2becc){return _0xa2becc();},'gulpL':'No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','HbxCR':function(_0x42e1d0,_0xb9cacc){return _0x42e1d0(_0xb9cacc);},'rQHaR':function(_0x2211f4,_0x2888b9){return _0x2211f4(_0x2888b9);}},_0xc5140e=_0x171b86||await _0x13640c[_0x59429e(0x12e)](getActiveFeatureId);if(!_0xc5140e)throw new Error(_0x13640c[_0x59429e(0xcf)]);const _0x3f6726=await _0x13640c[_0x59429e(0x138)](getFeature,_0xc5140e);if(_0x3f6726[_0x59429e(0x109)]&&!_0x3f6726['latestReview'][_0x59429e(0xc6)])throw new Error(_0x59429e(0x13a)+_0x3f6726['dashboardUrl']);await createChecklistItem(_0xc5140e,_0x35d29f);const _0x44daa9=await _0x13640c['rQHaR'](getFeature,_0xc5140e);console['log'](_0x59429e(0x96)),displayFeature(_0x44daa9,_0x44daa9['checklistItems']);}export async function featureEditScenario(_0x484032,_0x6a309d){const _0x44b6e2=_0x3cf8e8,_0xb77abe={'EEpoT':function(_0x2d0cb3){return _0x2d0cb3();},'cSPkq':'\x0a❌\x20No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.','BRoMl':'Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','sleNx':function(_0xc9230e,_0x14de19){return _0xc9230e(_0x14de19);},'EbObT':'\x0a❌\x20Cannot\x20edit\x20scenario:\x20feature\x20review\x20has\x20an\x20active\x20review.','EYDJF':_0x44b6e2(0x8f),'hJfiC':function(_0x197fb8,_0x870527){return _0x197fb8===_0x870527;},'pyHOh':'\x0a❌\x20No\x20scenario\x20number\x20provided.\x20Use\x20--scenario\x20<number>.','EnmdP':function(_0x39009e,_0x351e55){return _0x39009e<_0x351e55;},'NhEqr':function(_0x281f36,_0x2f540a){return _0x281f36-_0x2f540a;},'NTBIC':function(_0x243763,_0x47cf08){return _0x243763>=_0x47cf08;},'obCbv':function(_0x29c2b1,_0x4f4f09){return _0x29c2b1+_0x4f4f09;},'QudDP':function(_0x1a694d,_0x2f545c,_0x1eea6a,_0xc5ddbb){return _0x1a694d(_0x2f545c,_0x1eea6a,_0xc5ddbb);},'OSVTY':function(_0x50a55a,_0x110ec4,_0x18e37f){return _0x50a55a(_0x110ec4,_0x18e37f);}},_0x55429a=_0x6a309d['id']||await _0xb77abe[_0x44b6e2(0xa8)](getActiveFeatureId);!_0x55429a&&(console['error'](_0xb77abe['cSPkq']),console['error'](_0xb77abe['BRoMl']),process[_0x44b6e2(0xb9)](0x1));const _0x26eb6b=await _0xb77abe[_0x44b6e2(0xa0)](getFeature,_0x55429a);_0x26eb6b[_0x44b6e2(0x109)]&&!_0x26eb6b[_0x44b6e2(0x109)][_0x44b6e2(0xc6)]&&(console[_0x44b6e2(0x11c)](_0xb77abe[_0x44b6e2(0xb7)]),console[_0x44b6e2(0x11c)](_0xb77abe[_0x44b6e2(0xdd)]),console[_0x44b6e2(0x11c)]('\x20\x20'+_0x26eb6b['dashboardUrl']),process[_0x44b6e2(0xb9)](0x1));const _0x1da651=_0x26eb6b[_0x44b6e2(0xbd)]||[];_0x1da651[_0x44b6e2(0x89)]===0x0&&(console['error']('\x0a❌\x20No\x20scenarios\x20found\x20to\x20edit.'),process[_0x44b6e2(0xb9)](0x1));if(_0xb77abe[_0x44b6e2(0xac)](_0x6a309d[_0x44b6e2(0x133)],undefined)){console['error'](_0xb77abe['pyHOh']),console[_0x44b6e2(0xae)]('\x0aAvailable\x20scenarios:');for(let _0x28b020=0x0;_0xb77abe['EnmdP'](_0x28b020,_0x1da651[_0x44b6e2(0x89)]);_0x28b020++){console['log']('\x20\x20'+(_0x28b020+0x1)+'.\x20'+_0x1da651[_0x28b020]['description']);}process[_0x44b6e2(0xb9)](0x1);}const _0x4bd4c9=_0xb77abe['NhEqr'](_0x6a309d['scenario'],0x1);if(_0x4bd4c9<0x0||_0xb77abe[_0x44b6e2(0xbb)](_0x4bd4c9,_0x1da651[_0x44b6e2(0x89)])){console[_0x44b6e2(0x11c)](_0x44b6e2(0xca)+_0x6a309d['scenario']+_0x44b6e2(0x11a)+_0x1da651[_0x44b6e2(0x89)]+_0x44b6e2(0xe0)),console['log']('\x0aAvailable\x20scenarios:');for(let _0x5386a2=0x0;_0x5386a2<_0x1da651[_0x44b6e2(0x89)];_0x5386a2++){console['log']('\x20\x20'+_0xb77abe['obCbv'](_0x5386a2,0x1)+'.\x20'+_0x1da651[_0x5386a2][_0x44b6e2(0xf2)]);}process['exit'](0x1);}const _0x3339cf=_0x1da651[_0x4bd4c9];await _0xb77abe['QudDP'](updateChecklistItem,_0x55429a,_0x3339cf['id'],{'description':_0x484032});const _0x1cc5df=await _0xb77abe[_0x44b6e2(0xa0)](getFeature,_0x55429a);console['log']('\x0a✅\x20Scenario\x20updated'),_0xb77abe[_0x44b6e2(0x14b)](displayFeature,_0x1cc5df,_0x1cc5df[_0x44b6e2(0xbd)]);}async function downloadFeedbackImage(_0x508706,_0x51f1eb){const _0x451e58=_0x3cf8e8,_0xa54a7c={'TnPUC':function(_0x511bd3,_0x2d0b24,_0x3679fe){return _0x511bd3(_0x2d0b24,_0x3679fe);},'xtDpZ':function(_0x5c0e87,_0x9e4852,_0x4639ec){return _0x5c0e87(_0x9e4852,_0x4639ec);}};try{const _0x43666f=join(getRangerDir(),_0x451e58(0xe4));await _0xa54a7c['TnPUC'](mkdir,_0x43666f,{'recursive':!![]});const _0x12436e=_0xa54a7c['xtDpZ'](join,_0x43666f,_0x451e58(0xd5)+_0x51f1eb+_0x451e58(0xb8)),_0x6bf9e8=await fetch(_0x508706);if(!_0x6bf9e8['ok'])return null;const _0x3b372c=Buffer['from'](await _0x6bf9e8[_0x451e58(0xc3)]());return await writeFile(_0x12436e,_0x3b372c),_0x12436e;}catch{return null;}}export async function featureGetReview(_0x3a649b){const _0x5af4d5=_0x3cf8e8,_0x274ec3={'GBrHH':_0x5af4d5(0xc1),'gDAHq':function(_0x3d7533,_0x204152){return _0x3d7533(_0x204152);},'nFcjQ':function(_0x322a8a,_0x17829d){return _0x322a8a===_0x17829d;},'dwqrV':'No\x20scenarios\x20found.','LUqEa':function(_0x424426,_0x43112b,_0x59aafa){return _0x424426(_0x43112b,_0x59aafa);},'gdOOd':_0x5af4d5(0xfb),'FEEZQ':_0x5af4d5(0x14a),'EIgpN':_0x5af4d5(0x11e),'rIsej':'point','tqpsh':function(_0x32d177,_0x5d7a45){return _0x32d177+_0x5d7a45;}},_0x2eb87e=_0x3a649b||await getActiveFeatureId();if(!_0x2eb87e)throw new Error(_0x274ec3[_0x5af4d5(0x12b)]);const _0x234e15=await getFeature(_0x2eb87e),{items:_0x3e2970}=await _0x274ec3[_0x5af4d5(0xbc)](getActionItems,_0x2eb87e);console['log']('\x0a📋\x20Feedback\x20for:\x20'+_0x234e15[_0x5af4d5(0xfe)]+'\x20('+_0x234e15['id']+')\x0a');if(_0x274ec3[_0x5af4d5(0x8a)](_0x3e2970[_0x5af4d5(0x89)],0x0)){console['log'](_0x274ec3['dwqrV']);return;}for(let _0x1a5889=0x0;_0x1a5889<_0x3e2970['length'];_0x1a5889++){const _0x4c67e9=_0x3e2970[_0x1a5889],_0x2f1cb9=_0x4c67e9[_0x5af4d5(0xda)]>0x1?_0x5af4d5(0xab)+_0x4c67e9[_0x5af4d5(0xda)]+')':'',_0x1d2045=await _0x274ec3['LUqEa'](getItemFeedback,_0x2eb87e,_0x4c67e9['id']);if(_0x1d2045[_0x5af4d5(0x156)]['length']>0x0){console[_0x5af4d5(0xae)](_0x5af4d5(0x9f)+(_0x1a5889+0x1)+':\x20\x22'+_0x4c67e9[_0x5af4d5(0xf2)]+'\x22'+_0x2f1cb9+'\x20—\x20'+_0x1d2045[_0x5af4d5(0x156)][_0x5af4d5(0x89)]+'\x20unaddressed\x20comment(s)');for(const _0x4fe038 of _0x1d2045[_0x5af4d5(0x156)]){const _0x345317=new Date(_0x4fe038['createdAt'])[_0x5af4d5(0x111)](_0x274ec3[_0x5af4d5(0xd2)],{'month':_0x274ec3[_0x5af4d5(0x100)],'day':_0x5af4d5(0x15c)}),_0x2ad31d=_0x4fe038['authorName']||_0x4fe038['authorEmail']||'Unknown';console['log']('\x20\x20💬\x20'+_0x2ad31d+'\x20('+_0x345317+'):\x20\x22'+_0x4fe038[_0x5af4d5(0xe8)]+'\x22');if(_0x4fe038['assetUrl']){const _0x44e167=await downloadFeedbackImage(_0x4fe038[_0x5af4d5(0xb0)],_0x4fe038['id']);_0x44e167&&console[_0x5af4d5(0xae)]('\x20\x20\x20\x20\x20📷\x20Screenshot:\x20'+_0x44e167);}if(_0x4fe038['domRef']){const _0x2adf63=_0x4fe038[_0x5af4d5(0xfd)][_0x5af4d5(0x13f)][_0x5af4d5(0x150)](_0x274ec3[_0x5af4d5(0xed)])[_0x5af4d5(0xf1)]()?.['split'](':')[0x0]||_0x5af4d5(0xcb),_0x6fa19e=_0x4fe038['domRef']['textContent']?'\x20\x22'+_0x4fe038['domRef'][_0x5af4d5(0x11d)][_0x5af4d5(0x132)](0x0,0x3c)+'\x22':'';console[_0x5af4d5(0xae)]('\x20\x20\x20\x20\x20🎯\x20Element:\x20<'+_0x2adf63+'>'+_0x6fa19e),console[_0x5af4d5(0xae)]('\x20\x20\x20\x20\x20📋\x20Selector:\x20'+_0x4fe038[_0x5af4d5(0xfd)]['selector']);}else{if(_0x4fe038[_0x5af4d5(0x9c)]){const _0x29b69d=_0x4fe038[_0x5af4d5(0x9c)][_0x5af4d5(0xdf)];_0x4fe038[_0x5af4d5(0x9c)]['type']===_0x274ec3['rIsej']&&_0x29b69d['length']>=0x2?console[_0x5af4d5(0xae)](_0x5af4d5(0x10a)+_0x29b69d[0x0]['toFixed'](0x2)+',\x20'+_0x29b69d[0x1]['toFixed'](0x2)+')'):console[_0x5af4d5(0xae)](_0x5af4d5(0x152)+_0x4fe038[_0x5af4d5(0x9c)][_0x5af4d5(0xf3)]+_0x5af4d5(0x124)+_0x29b69d[_0x5af4d5(0x14d)](_0x1c45a2=>_0x1c45a2['toFixed'](0x2))['join'](',\x20')+']');}}}if(_0x1d2045[_0x5af4d5(0x141)]){console['log']('\x20\x20Expected\x20flow:');for(const _0x58f847 of _0x1d2045[_0x5af4d5(0x141)][_0x5af4d5(0x150)]('\x0a')){console[_0x5af4d5(0xae)](_0x5af4d5(0x15e)+_0x58f847);}}}else console[_0x5af4d5(0xae)](_0x5af4d5(0x9f)+_0x274ec3['tqpsh'](_0x1a5889,0x1)+':\x20\x22'+_0x4c67e9[_0x5af4d5(0xf2)]+'\x22'+_0x2f1cb9+_0x5af4d5(0xff)),console[_0x5af4d5(0xae)]('\x20\x20✅\x20No\x20feedback\x20to\x20address');console['log']('');}}export async function featureDelete(_0x4213b7){const _0x19e730=_0x3cf8e8,_0x2790e8={'PoBkJ':function(_0x283057,_0x4063ac){return _0x283057(_0x4063ac);},'aUrNP':function(_0x42c648,_0x443f74){return _0x42c648(_0x443f74);},'gAZja':function(_0x19830e,_0x456d4c){return _0x19830e+_0x456d4c;}},_0x8c13c=_0x4213b7||await getActiveFeatureId();if(!_0x8c13c)throw new Error('No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review');const _0x5bd984=await _0x2790e8['PoBkJ'](getFeature,_0x8c13c);await _0x2790e8[_0x19e730(0xb5)](softDeleteFeature,_0x8c13c),console['log']('\x0a🗑️\x20\x20Deleted\x20feature\x20review:\x20'+_0x5bd984[_0x19e730(0xfe)]+'\x20('+_0x8c13c+')'),console['log'](_0x2790e8['gAZja'](_0x19e730(0x9d),_0x8c13c));}export async function featureRestore(_0x51e8a3){const _0x2eab99=_0x3cf8e8,_0x5a9102={'oRHQJ':function(_0x59cab0,_0x33fdbe){return _0x59cab0(_0x33fdbe);},'kGskP':function(_0x127978,_0xaa6468){return _0x127978(_0xaa6468);},'Dbpfm':function(_0x20d739,_0x245ee9,_0x55f0ce){return _0x20d739(_0x245ee9,_0x55f0ce);}};await _0x5a9102['oRHQJ'](restoreFeature,_0x51e8a3);const _0x285647=await _0x5a9102['kGskP'](getFeature,_0x51e8a3);console[_0x2eab99(0xae)](_0x2eab99(0x153)+_0x285647['name']+'\x20('+_0x51e8a3+')'),_0x5a9102['Dbpfm'](displayFeature,_0x285647,_0x285647[_0x2eab99(0xbd)]);}
1
+ const _0x3dcc19=_0x131a;(function(_0x34a7d3,_0x4f5350){const _0x2cae36=_0x131a,_0x189997=_0x34a7d3();while(!![]){try{const _0x534088=parseInt(_0x2cae36(0xf5))/0x1+-parseInt(_0x2cae36(0x1a5))/0x2+parseInt(_0x2cae36(0x176))/0x3+-parseInt(_0x2cae36(0xe0))/0x4+parseInt(_0x2cae36(0xf9))/0x5*(-parseInt(_0x2cae36(0x18a))/0x6)+-parseInt(_0x2cae36(0x14c))/0x7+parseInt(_0x2cae36(0xf1))/0x8;if(_0x534088===_0x4f5350)break;else _0x189997['push'](_0x189997['shift']());}catch(_0x531435){_0x189997['push'](_0x189997['shift']());}}}(_0xa8e7,0x24b58));import{readFile,writeFile,mkdir}from'fs/promises';import{join}from'path';import{existsSync}from'fs';import{execSync}from'child_process';import _0x3700c3 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=_0x4153a6=>'\x1b[1m'+_0x4153a6+_0x3dcc19(0x115);function getGitRepoUrl(){const _0x1e71bf=_0x3dcc19,_0x55647c={'noJCk':_0x1e71bf(0x19f),'LAMgy':'pipe','btcMq':_0x1e71bf(0x119)};try{const _0x282b1e=execSync(_0x55647c['noJCk'],{'encoding':_0x1e71bf(0x168),'stdio':[_0x55647c['LAMgy'],_0x55647c[_0x1e71bf(0xc7)],'pipe']})[_0x1e71bf(0x11f)]();return _0x282b1e[_0x1e71bf(0x138)](/\.git$/,'')[_0x1e71bf(0x138)](/^git@github\.com:/,_0x55647c[_0x1e71bf(0xec)])[_0x1e71bf(0x138)](/^https?:\/\//,'');}catch{return undefined;}}function getGitBranch(){const _0x8db22a=_0x3dcc19,_0x5b28d1={'drWQm':function(_0x3e743c,_0x30ae10,_0x20514a){return _0x3e743c(_0x30ae10,_0x20514a);},'dNrUD':_0x8db22a(0x168),'EHyar':_0x8db22a(0x13b)};try{return _0x5b28d1['drWQm'](execSync,_0x8db22a(0x15c),{'encoding':_0x5b28d1[_0x8db22a(0x16d)],'stdio':[_0x5b28d1[_0x8db22a(0x10e)],_0x5b28d1[_0x8db22a(0x10e)],'pipe']})[_0x8db22a(0x11f)]();}catch{return undefined;}}export async function getActiveFeatureId(){const _0x19456b=_0x3dcc19,_0x4122d9={'vxjqe':function(_0x217d03,_0x44c93d,_0x6eede8){return _0x217d03(_0x44c93d,_0x6eede8);}},_0x42f89d=_0x4122d9['vxjqe'](join,getRangerDir(),ACTIVE_FEATURE_FILE);if(!existsSync(_0x42f89d))return null;try{const _0x1d28bd=await readFile(_0x42f89d,_0x19456b(0x168));return _0x1d28bd[_0x19456b(0x11f)]()||null;}catch{return null;}}async function setActiveFeatureId(_0xcd7509){const _0x39cd6a={'jhign':function(_0x1a55aa,_0x11cb68){return _0x1a55aa(_0x11cb68);},'ZdrfO':'utf-8'},_0x28c5fb=getRangerDir(),_0x1e2f39=join(_0x28c5fb,ACTIVE_FEATURE_FILE);!_0x39cd6a['jhign'](existsSync,_0x28c5fb)&&await mkdir(_0x28c5fb,{'recursive':!![]}),await writeFile(_0x1e2f39,_0xcd7509,_0x39cd6a['ZdrfO']);}function getProgressDisplay(_0x4eeb7f){const _0x3b746d=_0x3dcc19,_0x9a20f={'QksJy':function(_0x3b1f41,_0x465f46){return _0x3b1f41===_0x465f46;},'JmvUw':function(_0x5223ce,_0x23faf5){return _0x5223ce*_0x23faf5;},'zQpKI':function(_0x4d9e9e,_0x9c85c2){return _0x4d9e9e/_0x9c85c2;},'LsfRi':function(_0x38537c,_0x3d1093){return _0x38537c+_0x3d1093;},'pMSDg':function(_0x2d07cc,_0x260071){return _0x2d07cc-_0x260071;},'DPfAE':function(_0x3be334,_0xbbc4be){return _0x3be334>_0xbbc4be;},'lRCgt':function(_0xb0aecc,_0x23e887){return _0xb0aecc>_0x23e887;}},_0x2d5cbb=_0x4eeb7f[_0x3b746d(0x133)]||0x0,_0x3ffe3f=_0x4eeb7f[_0x3b746d(0x199)]||0x0,_0x7ca17e=_0x4eeb7f['blockedItems']||0x0,_0x4e4849=_0x4eeb7f['incompleteItems']||0x0,_0x309952=_0x4eeb7f['pendingItems']||0x0,_0x81e7e=_0x2d5cbb+_0x3ffe3f+_0x7ca17e+_0x4e4849+_0x309952;if(_0x9a20f[_0x3b746d(0x143)](_0x81e7e,0x0))return'-';const _0x47be35=0xa,_0xb40333=Math['round'](_0x9a20f['JmvUw'](_0x9a20f['zQpKI'](_0x2d5cbb,_0x81e7e),_0x47be35)),_0x4eff1a=_0x9a20f['LsfRi']('█'[_0x3b746d(0x179)](_0xb40333),'░'[_0x3b746d(0x179)](_0x9a20f['pMSDg'](_0x47be35,_0xb40333))),_0x4bd112=[];if(_0x7ca17e>0x0)_0x4bd112['push'](_0x7ca17e+'\x20blocked');if(_0x4e4849>0x0)_0x4bd112['push'](_0x4e4849+_0x3b746d(0x163));if(_0x9a20f['DPfAE'](_0x3ffe3f,0x0))_0x4bd112[_0x3b746d(0xd0)](_0x3ffe3f+'\x20in\x20progress');const _0x4f50de=_0x9a20f[_0x3b746d(0x16c)](_0x4bd112[_0x3b746d(0xdb)],0x0)?'\x20('+_0x4bd112['join'](',\x20')+')':'';return _0x4eff1a+'\x20'+_0x2d5cbb+'/'+_0x81e7e+'\x20verified'+_0x4f50de;}function getCurrentSessionItems(_0x3e2afc,_0x17dd76){const _0x3b8329=_0x3dcc19;if(!_0x3e2afc[_0x3b8329(0xe1)])return _0x17dd76['filter'](_0x33122b=>!_0x33122b['sessionId']);return _0x17dd76['filter'](_0x43c3ab=>_0x43c3ab[_0x3b8329(0x18b)]===_0x3e2afc['currentSessionId']||!_0x43c3ab[_0x3b8329(0x18b)]);}function displayFeature(_0x328913,_0x4d5c9d){const _0x1a7713=_0x3dcc19,_0x401644={'DBQcb':_0x1a7713(0x17f),'cAtqN':function(_0x3659af,_0x650f84){return _0x3659af===_0x650f84;},'grSaC':_0x1a7713(0xfb),'pHdAn':'verified','tLBdG':_0x1a7713(0x13d),'oWtlu':function(_0x2e7812,_0x5aaa3e){return _0x2e7812===_0x5aaa3e;},'VTqxV':'verification_in_progress','vmbkb':function(_0x5045f3,_0x1beaee){return _0x5045f3>_0x1beaee;},'pqFzz':function(_0x584c0a,_0x3c3c3f){return _0x584c0a!==_0x3c3c3f;},'iZSEB':_0x1a7713(0x118),'ZPQvx':function(_0x2464a5,_0x4f049e){return _0x2464a5===_0x4f049e;},'ezpCw':function(_0x584dfb,_0x1e0ce6){return _0x584dfb===_0x1e0ce6;},'EoWOL':'approved','vafHN':function(_0x12c21f,_0xc5d89c){return _0x12c21f===_0xc5d89c;}};console['log']('\x0a'+_0x328913[_0x1a7713(0x140)]+'\x20('+_0x328913['dashboardUrl']+')');_0x328913['stats']&&console['log']('\x20\x20\x20Progress:\x20'+getProgressDisplay(_0x328913[_0x1a7713(0x130)]));_0x328913['description']&&console['log'](_0x1a7713(0x122)+_0x328913[_0x1a7713(0xd7)]);_0x328913['gitRepoUrl']&&console[_0x1a7713(0x173)]('\x20\x20\x20Repository:\x20'+_0x328913[_0x1a7713(0x17e)]);_0x328913[_0x1a7713(0x147)]&&console[_0x1a7713(0x173)](_0x1a7713(0x1a4)+_0x328913[_0x1a7713(0x147)]);console['log'](_0x1a7713(0x156)+new Date(_0x328913['createdAt'])['toLocaleString']());_0x328913[_0x1a7713(0x114)]&&console['log'](_0x1a7713(0x196)+new Date(_0x328913[_0x1a7713(0x114)])['toLocaleString']());if(_0x4d5c9d&&_0x4d5c9d[_0x1a7713(0xdb)]>0x0){console[_0x1a7713(0x173)](_0x401644[_0x1a7713(0x190)]);for(let _0x56935a=0x0;_0x56935a<_0x4d5c9d['length'];_0x56935a++){const _0x2844d3=_0x4d5c9d[_0x56935a];let _0x2a84cf;if(_0x401644[_0x1a7713(0x137)](_0x2844d3['status'],_0x401644['grSaC'])&&_0x2844d3['terminalReason']===_0x1a7713(0xf0))_0x2a84cf='✅';else{if(_0x401644['cAtqN'](_0x2844d3['status'],_0x401644['pHdAn']))_0x2a84cf='🟢';else{if(_0x2844d3['status']===_0x401644['tLBdG'])_0x2a84cf='🟠';else{if(_0x401644['cAtqN'](_0x2844d3['status'],'blocked'))_0x2a84cf='🛑';else{if(_0x401644['cAtqN'](_0x2844d3['status'],'closed'))_0x2a84cf='⛔';else _0x401644[_0x1a7713(0x14a)](_0x2844d3[_0x1a7713(0xe2)],_0x401644[_0x1a7713(0x17d)])?_0x2a84cf='⏳':_0x2a84cf='⬜';}}}}const _0x3b8a8c=_0x401644[_0x1a7713(0x109)](_0x2844d3[_0x1a7713(0x14e)],0x1)?_0x1a7713(0x181)+_0x2844d3['version']+')':'',_0x457b87=_0x2844d3[_0x1a7713(0x14e)]>0x1&&_0x2844d3[_0x1a7713(0x117)]&&_0x401644['pqFzz'](_0x2844d3[_0x1a7713(0xe2)],_0x1a7713(0xfb))&&_0x401644[_0x1a7713(0x10c)](_0x2844d3['status'],_0x401644['pHdAn'])?'\x20[has\x20reviewer\x20feedback]':'';console['log'](_0x1a7713(0xe3)+(_0x56935a+0x1)+'.\x20'+_0x2a84cf+'\x20'+_0x2844d3['description']+_0x3b8a8c+_0x457b87);_0x401644['cAtqN'](_0x2844d3['status'],_0x401644[_0x1a7713(0xf6)])&&_0x2844d3[_0x1a7713(0xfe)]&&console[_0x1a7713(0x173)]('\x20\x20\x20\x20\x20\x20Blocked:\x20'+_0x2844d3[_0x1a7713(0xfe)]);_0x2844d3[_0x1a7713(0xe2)]===_0x1a7713(0x13d)&&_0x2844d3[_0x1a7713(0xd6)]&&console['log']('\x20\x20\x20\x20\x20\x20Incomplete:\x20'+_0x2844d3['incompleteReason']);if(_0x401644['ZPQvx'](_0x2844d3[_0x1a7713(0xe2)],_0x1a7713(0xfb))&&_0x401644['ezpCw'](_0x2844d3[_0x1a7713(0x127)],_0x401644['EoWOL']))console['log']('\x20\x20\x20\x20\x20\x20Approved');else _0x401644['vafHN'](_0x2844d3[_0x1a7713(0xe2)],_0x401644['grSaC'])&&_0x2844d3[_0x1a7713(0xef)]&&console['log'](_0x1a7713(0x18d)+_0x2844d3['canceledReason']);}}}export async function featureCreate(_0x241465,_0x342006){const _0x12e965=_0x3dcc19,_0x270408={'alQyS':function(_0x2d7148){return _0x2d7148();},'OGyIG':_0x12e965(0x178),'sWCtW':function(_0x21e20b,_0x469e0a){return _0x21e20b(_0x469e0a);},'koEFa':function(_0x4a34a9,_0xad23c3){return _0x4a34a9(_0xad23c3);}},{envNames:_0x58cbbf}=await _0x270408['alQyS'](getEnvNames);if(_0x58cbbf['length']===0x0&&!process[_0x12e965(0x15e)][_0x12e965(0xc8)]){let _0x3b0926=0x0;try{_0x3b0926=(await listCloudProfiles())[_0x12e965(0xdb)];}catch{_0x3b0926=0x1;}_0x3b0926===0x0&&console[_0x12e965(0x167)]('\x0a'+formatProfileRequiredMessage(_0x1f5049=>bold(_0x1f5049)));}const _0x1354e7=_0x342006['scenarios']?_0x342006[_0x12e965(0x132)][_0x12e965(0x177)](_0x2092a5=>_0x2092a5['trim']()):[],_0x1fb890=_0x270408['alQyS'](getGitRepoUrl),_0x400b75=getGitBranch();console['log'](_0x270408[_0x12e965(0x1a0)]);const _0x276060=await createFeature({'name':_0x241465,'description':_0x342006[_0x12e965(0xd7)],'checklist':_0x1354e7,'gitRepoUrl':_0x1fb890,'gitBranch':_0x400b75});await _0x270408['sWCtW'](setActiveFeatureId,_0x276060['id']),await _0x270408['koEFa'](tryStartCurrentSession,_0x276060['id']);const _0x55a468=process['env'][_0x12e965(0x158)];_0x55a468&&registerSession(_0x55a468,_0x276060['id']),console['log'](_0x12e965(0xca)+_0x276060['id']),displayFeature(_0x276060,_0x276060['checklistItems']),console['log']('\x0a➡️\x20\x20Set\x20as\x20active\x20feature\x20review');}export async function featureList(_0x44d2f9){const _0x1c8063=_0x3dcc19,_0x54fdeb={'pInNb':function(_0x18523c){return _0x18523c();},'DedmT':'\x0aNo\x20feature\x20reviews\x20found.','sDhLB':function(_0x182d87,_0x5f008c){return _0x182d87>_0x5f008c;},'ucOyG':function(_0x58f6dd,_0x1b154c){return _0x58f6dd+_0x1b154c;},'UunaW':function(_0x472059,_0x90b19a){return _0x472059<_0x90b19a;},'wBWIQ':function(_0x251be7,_0x54ceb0){return _0x251be7!==_0x54ceb0;}},_0x4eb459={'limit':_0x44d2f9[_0x1c8063(0xd4)]??0xa,'offset':_0x44d2f9['offset']??0x0,'includeDeleted':_0x44d2f9[_0x1c8063(0xed)]};_0x44d2f9['currentBranch']&&(_0x4eb459['gitRepoUrl']=_0x54fdeb[_0x1c8063(0x13f)](getGitRepoUrl),_0x4eb459['gitBranch']=_0x54fdeb[_0x1c8063(0x13f)](getGitBranch));const _0x3c19dc=await listFeatures(_0x4eb459);if(_0x3c19dc[_0x1c8063(0x136)][_0x1c8063(0xdb)]===0x0){console[_0x1c8063(0x173)](_0x54fdeb[_0x1c8063(0x120)]);return;}const _0x1b3152=_0x54fdeb[_0x1c8063(0x183)](_0x3c19dc['totalCount'],_0x3c19dc[_0x1c8063(0x136)]['length'])?_0x1c8063(0x11b)+_0x3c19dc[_0x1c8063(0x136)][_0x1c8063(0xdb)]+_0x1c8063(0x175)+_0x3c19dc['totalCount']:_0x3c19dc[_0x1c8063(0x164)]+_0x1c8063(0x170);console['log']('\x0a'+_0x1b3152+':\x0a');for(const _0x5caab1 of _0x3c19dc[_0x1c8063(0x136)]){console[_0x1c8063(0x173)](''+_0x5caab1['name']),console['log']('\x20\x20\x20ID:\x20'+_0x5caab1['id']),_0x5caab1[_0x1c8063(0x130)]&&console[_0x1c8063(0x173)](_0x1c8063(0xe8)+getProgressDisplay(_0x5caab1['stats'])),_0x5caab1['gitBranch']&&console[_0x1c8063(0x173)]('\x20\x20\x20Branch:\x20'+_0x5caab1['gitBranch']),console['log'](_0x1c8063(0x156)+new Date(_0x5caab1['createdAt'])[_0x1c8063(0x104)]()),console[_0x1c8063(0x173)]('');}const _0x4caf8a=_0x4eb459['limit']??0xa,_0x12dd84=_0x54fdeb['ucOyG'](_0x4eb459[_0x1c8063(0x18e)]??0x0,_0x3c19dc['items']['length']);if(_0x54fdeb['UunaW'](_0x12dd84,_0x3c19dc[_0x1c8063(0x164)])){const _0x2e85f6=_0x54fdeb[_0x1c8063(0x184)](_0x4caf8a,0xa)?_0x1c8063(0x141)+_0x4caf8a:'',_0xc3d65d=_0x44d2f9['currentBranch']?_0x1c8063(0x106):'',_0x1e34ab=_0x44d2f9[_0x1c8063(0xed)]?'\x20--include-deleted':'';console[_0x1c8063(0x173)]('Next\x20page:\x20ranger\x20list\x20--offset\x20'+_0x12dd84+_0x2e85f6+_0xc3d65d+_0x1e34ab);}}export async function featureShow(_0x4f4bb5){const _0x1570a8=_0x3dcc19,_0x3f6b8c={'PHxdx':function(_0xee27f0,_0x176bad){return _0xee27f0(_0x176bad);}},_0x233e34=_0x4f4bb5||await getActiveFeatureId();if(!_0x233e34)throw new Error(_0x1570a8(0xea));const _0x553bc8=await _0x3f6b8c[_0x1570a8(0x16b)](getFeature,_0x233e34);displayFeature(_0x553bc8,_0x553bc8['checklistItems']);}export async function featureResume(_0xf55936){const _0x45d2f9=_0x3dcc19,_0x477b4c={'fZpqe':function(_0x5c4cf0,_0x3aedb2){return _0x5c4cf0(_0x3aedb2);},'vNDmu':function(_0x38566d,_0x48fa9b,_0x48cbcc){return _0x38566d(_0x48fa9b,_0x48cbcc);},'MuPOf':function(_0x163c73,_0x405d91,_0x13d642){return _0x163c73(_0x405d91,_0x13d642);},'HGBIF':function(_0x7a920b,_0x4d672b){return _0x7a920b(_0x4d672b);},'HvOuV':function(_0x4e31f3){return _0x4e31f3();},'JYYrI':function(_0x2d38e1){return _0x2d38e1();},'MtRDN':_0x45d2f9(0x12c),'tXjpA':function(_0x5288fc,_0x36cb04){return _0x5288fc||_0x36cb04;},'AUNvY':'\x0aNo\x20matching\x20active\x20feature\x20reviews\x20found.','kiVOF':_0x45d2f9(0x16f),'zSnIr':function(_0x26f27c,_0xeb045a){return _0x26f27c===_0xeb045a;},'wokdQ':_0x45d2f9(0x11a),'oFxZl':_0x45d2f9(0xdf),'hohMa':'list','cohrh':function(_0x5d5cd7,_0xa14428){return _0x5d5cd7!==_0xa14428;},'WaSFl':function(_0x37b70d,_0x57061d){return _0x37b70d(_0x57061d);}};if(_0xf55936){const _0x31ae62=await _0x477b4c['fZpqe'](getFeature,_0xf55936);await setActiveFeatureId(_0x31ae62['id']);const _0x4280f2=getGitBranch();_0x4280f2&&_0x4280f2!==_0x31ae62[_0x45d2f9(0x147)]&&(await _0x477b4c['vNDmu'](updateFeature,_0x31ae62['id'],{'gitBranch':_0x4280f2}),console[_0x45d2f9(0x173)](_0x45d2f9(0xd9)+_0x4280f2));console['log'](_0x45d2f9(0x10b)+_0x31ae62['name']+'\x20('+_0x31ae62['id']+')'),await _0x477b4c[_0x45d2f9(0x19e)](tryStartCurrentSession,_0x31ae62['id']);const _0xafd0d0=process['env']['CLAUDE_SESSION_ID'];_0xafd0d0&&registerSession(_0xafd0d0,_0x31ae62['id']);_0x477b4c['MuPOf'](displayFeature,_0x31ae62,_0x31ae62[_0x45d2f9(0x1a1)]),await _0x477b4c[_0x45d2f9(0x135)](printFeedbackNudge,_0x31ae62['id']);return;}const _0x41e768=_0x477b4c['HvOuV'](getGitRepoUrl),_0x2ec4a9=_0x477b4c['JYYrI'](getGitBranch);if(!_0x41e768&&!_0x2ec4a9)throw new Error(_0x477b4c['MtRDN']);console['log']('\x0aSearching\x20for\x20feature\x20reviews\x20matching:\x20'+_0x477b4c[_0x45d2f9(0xf4)](_0x41e768,'any')+'\x20/\x20'+(_0x2ec4a9||_0x45d2f9(0x15a))+_0x45d2f9(0xe7));const _0x3c24ae=await listFeatures({'gitRepoUrl':_0x41e768,'gitBranch':_0x2ec4a9}),_0x340ef8=_0x3c24ae[_0x45d2f9(0x136)]['filter'](_0x185e10=>_0x185e10['status']?_0x185e10['status']!==_0x45d2f9(0x107):!_0x185e10[_0x45d2f9(0x114)]);if(_0x340ef8[_0x45d2f9(0xdb)]===0x0){console['log'](_0x477b4c[_0x45d2f9(0xff)]),console[_0x45d2f9(0x173)](_0x477b4c[_0x45d2f9(0x193)]);return;}let _0x557afb;if(_0x477b4c[_0x45d2f9(0x197)](_0x340ef8[_0x45d2f9(0xdb)],0x1))_0x557afb=_0x340ef8[0x0];else{const _0xe2cdf3=process[_0x45d2f9(0x139)][_0x45d2f9(0x18f)]&&process[_0x45d2f9(0x149)]['isTTY'];if(!_0xe2cdf3){console[_0x45d2f9(0x173)](_0x477b4c[_0x45d2f9(0x159)]);for(const _0x1c65c7 of _0x340ef8){console['log']('\x20\x20'+_0x1c65c7['name']),console[_0x45d2f9(0x173)]('\x20\x20\x20\x20\x20ID:\x20'+_0x1c65c7['id']),_0x1c65c7['stats']&&console[_0x45d2f9(0x173)]('\x20\x20\x20\x20\x20Progress:\x20'+getProgressDisplay(_0x1c65c7[_0x45d2f9(0x130)])),_0x1c65c7['gitBranch']&&console[_0x45d2f9(0x173)](_0x45d2f9(0x12f)+_0x1c65c7['gitBranch']);}throw new Error(_0x477b4c['oFxZl']);}const {selected:_0xd9a586}=await _0x3700c3['prompt']([{'type':_0x477b4c['hohMa'],'name':_0x45d2f9(0xd8),'message':'Multiple\x20feature\x20reviews\x20found.\x20Select\x20one:','choices':_0x340ef8['map'](_0xf31569=>({'name':_0xf31569['name']+'\x20('+_0xf31569['id']+')','value':_0xf31569['id']}))}]);_0x557afb=_0x340ef8[_0x45d2f9(0x116)](_0x142b79=>_0x142b79['id']===_0xd9a586);}await _0x477b4c[_0x45d2f9(0x135)](setActiveFeatureId,_0x557afb['id']);_0x2ec4a9&&_0x477b4c[_0x45d2f9(0x131)](_0x2ec4a9,_0x557afb[_0x45d2f9(0x147)])&&(await updateFeature(_0x557afb['id'],{'gitBranch':_0x2ec4a9}),console['log']('\x20\x20\x20Updated\x20branch\x20to:\x20'+_0x2ec4a9));console['log']('\x0a✅\x20Resumed\x20feature\x20review:\x20'+_0x557afb['name']+'\x20('+_0x557afb['id']+')'),await tryStartCurrentSession(_0x557afb['id']);const _0x12fe89=await _0x477b4c[_0x45d2f9(0x19e)](getFeature,_0x557afb['id']),_0x15cef2=process['env'][_0x45d2f9(0x158)];_0x15cef2&&registerSession(_0x15cef2,_0x12fe89['id']),displayFeature(_0x12fe89,_0x12fe89['checklistItems']),await _0x477b4c['WaSFl'](printFeedbackNudge,_0x12fe89['id']);}async function printFeedbackNudge(_0x9c7c34){const _0x3dce34=_0x3dcc19,_0x4dfc65={'vPjlE':function(_0x22d2f1,_0x99d754){return _0x22d2f1(_0x99d754);},'OgvBr':function(_0x3682fb,_0x380b9e){return _0x3682fb>_0x380b9e;}};try{const {items:_0x408b16}=await _0x4dfc65['vPjlE'](getActionItems,_0x9c7c34);let _0x2ab626=0x0,_0x2a0dc6=0x0;for(const _0x1cd58a of _0x408b16){const _0x40c61d=await getItemFeedback(_0x9c7c34,_0x1cd58a['id']);_0x4dfc65[_0x3dce34(0x166)](_0x40c61d['unaddressedComments'][_0x3dce34(0xdb)],0x0)&&(_0x2ab626+=_0x40c61d['unaddressedComments'][_0x3dce34(0xdb)],_0x2a0dc6++);}_0x4dfc65[_0x3dce34(0x166)](_0x2ab626,0x0)&&(console['log'](_0x3dce34(0x12d)+_0x2ab626+_0x3dce34(0xf7)+_0x2a0dc6+_0x3dce34(0xdc)),console['log']('\x20\x20\x20Run\x20`ranger\x20get-review`\x20to\x20see\x20what\x20needs\x20to\x20be\x20fixed.'));}catch{}}async function tryStartCurrentSession(_0x26395a){const _0x7dae0c=_0x3dcc19;try{const {sessions:_0x3d94de}=await listFeatureSessions(_0x26395a),_0x3714cf=_0x3d94de['find'](_0x3a7358=>_0x3a7358[_0x7dae0c(0xe2)]===_0x7dae0c(0x13e));_0x3714cf&&(await startSession(_0x26395a,_0x3714cf['id']),console['log'](_0x7dae0c(0x171)+_0x3714cf[_0x7dae0c(0x105)]));}catch{}}export async function featureReport(_0x37f2b4,_0x285a25){const _0x1ef8cd=_0x3dcc19,_0x192872={'GcXNO':function(_0x1466a6){return _0x1466a6();},'dIoAl':_0x1ef8cd(0x112),'TTTdY':function(_0x8b196,_0x2fc263,_0x15bffb){return _0x8b196(_0x2fc263,_0x15bffb);},'epLTz':function(_0x1ba909,_0x1359e0,_0x28ead1,_0x372ed4){return _0x1ba909(_0x1359e0,_0x28ead1,_0x372ed4);},'mGlJO':function(_0xa5267d){return _0xa5267d();},'BWcOK':_0x1ef8cd(0xda),'QJqmw':function(_0x4e6a35,_0x195cc6){return _0x4e6a35(_0x195cc6);}},_0x26693c=_0x37f2b4||await _0x192872[_0x1ef8cd(0xc9)](getActiveFeatureId);if(!_0x26693c)throw new Error('No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.');console[_0x1ef8cd(0x173)](_0x192872['dIoAl']);const _0xabee46=await _0x192872['TTTdY'](getFeatureReportMarkdown,_0x26693c,{'style':_0x285a25['style']}),_0xaebf60=_0x285a25['output']||_0x192872['epLTz'](join,_0x192872['mGlJO'](getRangerDir),_0x192872['BWcOK'],_0x26693c+_0x1ef8cd(0x11c)),_0x347f1e=join(_0xaebf60,'..');!_0x192872['QJqmw'](existsSync,_0x347f1e)&&await mkdir(_0x347f1e,{'recursive':!![]}),await _0x192872['epLTz'](writeFile,_0xaebf60,_0xabee46,'utf-8'),console[_0x1ef8cd(0x173)](_0x1ef8cd(0x1a3)+_0xaebf60);}function getScenarioResult(_0x5cc532){const _0x1ecaa4=_0x3dcc19,_0x1f5a8b={'PQEjy':function(_0x2dd91e,_0x298260){return _0x2dd91e===_0x298260;},'HOyrS':'closed','OfvoR':function(_0x36e0f4,_0x19b232){return _0x36e0f4===_0x19b232;},'stqkg':'verification_in_progress','LqoGE':_0x1ecaa4(0xde)};if(_0x1f5a8b[_0x1ecaa4(0x185)](_0x5cc532[_0x1ecaa4(0xe2)],'closed'))return _0x5cc532['terminalReason']??_0x1f5a8b['HOyrS'];if(_0x1f5a8b[_0x1ecaa4(0x198)](_0x5cc532['status'],_0x1f5a8b[_0x1ecaa4(0x1a7)]))return _0x1f5a8b[_0x1ecaa4(0xe4)];return _0x5cc532[_0x1ecaa4(0xe2)];}function getScenarioRationale(_0x1fcf15,_0x50106c){const _0x36f7ca=_0x3dcc19,_0x2fc52d={'igHTH':'3|4|5|1|2|0'},_0x6de8f4=_0x2fc52d['igHTH'][_0x36f7ca(0x128)]('|');let _0x34b4e8=0x0;while(!![]){switch(_0x6de8f4[_0x34b4e8++]){case'0':return null;case'1':if(_0x1fcf15[_0x36f7ca(0xef)])return _0x1fcf15[_0x36f7ca(0xef)];continue;case'2':if(_0x1fcf15['notes'])return _0x1fcf15['notes'];continue;case'3':if(_0x50106c)return _0x50106c;continue;case'4':if(_0x1fcf15['blockedReason'])return _0x1fcf15['blockedReason'];continue;case'5':if(_0x1fcf15['incompleteReason'])return _0x1fcf15[_0x36f7ca(0xd6)];continue;}break;}}function _0x131a(_0x20c407,_0xc6d20e){_0x20c407=_0x20c407-0xc7;const _0xa8e758=_0xa8e7();let _0x131a3b=_0xa8e758[_0x20c407];return _0x131a3b;}export async function featureReportPrDescription(_0x3339fa,_0x5ccc39){const _0x12aee2=_0x3dcc19,_0x39a94d={'fMnkU':function(_0x4cddb0){return _0x4cddb0();},'owYVA':function(_0x27d6bb,_0xfbe1cc){return _0x27d6bb(_0xfbe1cc);},'SEpAI':function(_0xc094a9,_0x2b7578){return _0xc094a9===_0x2b7578;},'XBdFU':function(_0x2e0c8b,_0x939812){return _0x2e0c8b>_0x939812;},'WYARW':'\x0aAvailable\x20scenarios:','bIdfl':function(_0x39290a,_0x1a86e7){return _0x39290a+_0x1a86e7;},'Squyg':'\x0a❌\x20All\x20scenarios\x20were\x20excluded.'},_0x28c6f2=_0x3339fa||await _0x39a94d['fMnkU'](getActiveFeatureId);if(!_0x28c6f2)throw new Error('No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.');const _0x2c64eb=await _0x39a94d['owYVA'](getFeature,_0x28c6f2),_0x122ea6=_0x2c64eb[_0x12aee2(0x1a1)]||[],_0xf062bc=getCurrentSessionItems(_0x2c64eb,_0x122ea6);_0x39a94d[_0x12aee2(0x102)](_0xf062bc[_0x12aee2(0xdb)],0x0)&&(console['error']('\x0a❌\x20No\x20scenarios\x20found\x20to\x20include.'),process['exit'](0x1));const _0xf2672e=_0x5ccc39[_0x12aee2(0x125)]??[],_0x1d15f1=_0xf2672e[_0x12aee2(0x121)](_0x289c97=>!Number[_0x12aee2(0x154)](_0x289c97)||_0x289c97<0x1||_0x289c97>_0xf062bc[_0x12aee2(0xdb)]);if(_0x39a94d['XBdFU'](_0x1d15f1['length'],0x0)){console[_0x12aee2(0x12e)](_0x12aee2(0x11e)+_0x1d15f1['join'](',\x20')),console['log'](_0x39a94d['WYARW']);for(let _0xb0c541=0x0;_0xb0c541<_0xf062bc['length'];_0xb0c541++){console['log']('\x20\x20'+_0x39a94d[_0x12aee2(0x111)](_0xb0c541,0x1)+'.\x20'+_0xf062bc[_0xb0c541]['description']);}process['exit'](0x1);}const _0x5e6091=new Set(_0xf2672e['map'](_0x195e8c=>_0x195e8c-0x1)),_0x1cc515=_0xf062bc[_0x12aee2(0x121)]((_0x332f1f,_0x41ee6b)=>!_0x5e6091[_0x12aee2(0x160)](_0x41ee6b));_0x39a94d[_0x12aee2(0x102)](_0x1cc515['length'],0x0)&&(console['error'](_0x39a94d['Squyg']),process[_0x12aee2(0x15d)](0x1));if(_0x5ccc39[_0x12aee2(0x14f)])await outputJsonReport(_0x28c6f2,_0x2c64eb,_0x1cc515);else{const _0x366b95=await getFeatureReportMarkdown(_0x28c6f2,{'itemIds':_0x1cc515['map'](_0xddd76c=>_0xddd76c['id'])});process[_0x12aee2(0x149)]['write'](_0x366b95[_0x12aee2(0x150)]()+'\x0a');}}async function outputJsonReport(_0x580462,_0x36c3a0,_0x5c87f2){const _0x3e6124=_0x3dcc19,_0x241c0d={'BtIey':function(_0x1ba93f,_0xce746f){return _0x1ba93f>_0xce746f;},'NWwMV':function(_0x3fb214,_0x239da1){return _0x3fb214(_0x239da1);},'MHwVx':function(_0x2bfd5b,_0x4d5561,_0x300ea0){return _0x2bfd5b(_0x4d5561,_0x300ea0);}},_0x1149b5=getApiBaseUrl(),_0x4c8f3f=await getFeatureReport(_0x580462),_0x3109a8=new Map(_0x4c8f3f['checklistItems'][_0x3e6124(0x177)](_0x3e391a=>[_0x3e391a['id'],_0x3e391a])),_0x2a876e=await Promise['all'](_0x5c87f2['map'](async _0x16f275=>{const _0x19fa62=_0x3e6124,_0x1bab8e=_0x3109a8['get'](_0x16f275['id']),_0x363697=_0x1bab8e?.[_0x19fa62(0x14d)]??null;let _0x14ecb5=[];if(_0x16f275['browserSessionId'])try{const {steps:_0x25cb92}=await getBrowserSessionSteps(_0x16f275['browserSessionId']);_0x241c0d['BtIey'](_0x25cb92[_0x19fa62(0xdb)],0x0)&&(_0x14ecb5=_0x25cb92[_0x19fa62(0x177)](_0x3e7b7d=>{const _0x5836dd=_0x19fa62,_0x4b8715=_0x3e7b7d[_0x5836dd(0x145)]['find'](_0x191dbe=>_0x191dbe['assetType']===_0x5836dd(0x19d)&&_0x191dbe['timing']===_0x5836dd(0x152))??_0x3e7b7d[_0x5836dd(0x145)]['find'](_0x385e39=>_0x385e39[_0x5836dd(0xee)]===_0x5836dd(0x19d));let _0x6d7ceb=null,_0x255d77=null;if(_0x4b8715){const _0x482cdc=_0x4b8715['storage'][_0x5836dd(0xcc)]['split']('/')['pop']();_0x6d7ceb=_0x1149b5+_0x5836dd(0x182)+_0x16f275['browserSessionId']+'/artifacts/'+_0x482cdc,_0x482cdc&&(_0x255d77=_0x482cdc[_0x5836dd(0x138)](/\.\w+$/,'')[_0x5836dd(0x138)](/^(key_)?\d+_/,'')[_0x5836dd(0x138)](/[-_]/g,'\x20'));}return{'description':_0x255d77||_0x3e7b7d[_0x5836dd(0xd7)]||_0x3e7b7d['stepName']||_0x5836dd(0x108)+_0x3e7b7d['position'],'screenshot':_0x6d7ceb,'is_key_step':_0x3e7b7d['isKeyStep']};}));}catch{}return _0x14ecb5[_0x19fa62(0xdb)]===0x0&&_0x363697?.[_0x19fa62(0x161)]&&(_0x14ecb5=_0x363697['screenshotUrls'][_0x19fa62(0x177)]((_0x36eec7,_0x39394d)=>({'description':'Screenshot\x20'+(_0x39394d+0x1),'screenshot':_0x36eec7,'is_key_step':![]}))),{'description':_0x16f275[_0x19fa62(0xd7)],'result':_0x241c0d['NWwMV'](getScenarioResult,_0x16f275),'rationale':_0x241c0d[_0x19fa62(0x18c)](getScenarioRationale,_0x16f275,_0x363697?.[_0x19fa62(0x16e)]),'steps':_0x14ecb5};})),_0x45b3d8={'url':_0x36c3a0[_0x3e6124(0x13c)],'scenarios':_0x2a876e};process['stdout'][_0x3e6124(0xfa)](JSON['stringify'](_0x45b3d8,null,0x2)+'\x0a');}export async function featureConcludeSession(_0x296b6c){const _0x48fca9=_0x3dcc19,_0x28fe06={'MuGha':function(_0x116c92){return _0x116c92();},'RwJwZ':'No\x20active\x20session\x20for\x20this\x20feature\x20review.','GXZqo':'Current\x20session\x20not\x20found.','HTEWP':function(_0x2f7fa9,_0x3c232d){return _0x2f7fa9===_0x3c232d;},'DDQCr':_0x48fca9(0x10a),'LCITk':_0x48fca9(0x123),'Iscuv':function(_0x3feb91,_0x485d9c){return _0x3feb91!==_0x485d9c;},'EWXcj':_0x48fca9(0xde),'acQby':'\x0aConcluding\x20session...'},_0x503e08=_0x296b6c||await _0x28fe06['MuGha'](getActiveFeatureId);if(!_0x503e08)throw new Error(_0x48fca9(0xea));const _0x90a7ec=await getFeature(_0x503e08);if(!_0x90a7ec[_0x48fca9(0xe1)])throw new Error(_0x28fe06[_0x48fca9(0x19a)]);const {sessions:_0xb75129}=await listFeatureSessions(_0x503e08),_0x8b9197=_0xb75129['find'](_0x4688e7=>_0x4688e7['id']===_0x90a7ec['currentSessionId']);if(!_0x8b9197)throw new Error(_0x28fe06[_0x48fca9(0xfc)]);if(_0x28fe06[_0x48fca9(0x1a6)](_0x8b9197['status'],_0x28fe06[_0x48fca9(0x113)])){console['log'](_0x28fe06['LCITk']);return;}if(_0x28fe06['Iscuv'](_0x8b9197[_0x48fca9(0xe2)],_0x28fe06['EWXcj']))throw new Error(_0x48fca9(0x191)+_0x8b9197['status']);console['log'](_0x28fe06[_0x48fca9(0x194)]),await concludeSession(_0x503e08,_0x90a7ec[_0x48fca9(0xe1)]),console[_0x48fca9(0x173)]('\x0a✅\x20Session\x20'+_0x8b9197[_0x48fca9(0x105)]+_0x48fca9(0x17b)),console['log']('\x20\x20\x20The\x20feature\x20review\x20is\x20now\x20ready\x20for\x20human\x20review\x20on\x20the\x20Ranger\x20dashboard.');}export async function featureSessions(_0x56c8c1){const _0x340ed1=_0x3dcc19,_0x502ff4={'aXlXm':function(_0x2a95ac){return _0x2a95ac();},'yMpKd':'No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.','VRSjl':function(_0x4f5ef7,_0x48439d){return _0x4f5ef7===_0x48439d;},'RhwRz':_0x340ed1(0x15f),'DkFFk':function(_0x17a19c,_0x3358fa){return _0x17a19c===_0x3358fa;},'iNFNe':'completed','LevFC':'in_progress'},_0x58b304=_0x56c8c1||await _0x502ff4[_0x340ed1(0x188)](getActiveFeatureId);if(!_0x58b304)throw new Error(_0x502ff4['yMpKd']);const _0x3ffd7c=await getFeature(_0x58b304);console[_0x340ed1(0x173)]('\x0a📁\x20Sessions\x20for\x20feature\x20review:\x20'+_0x3ffd7c[_0x340ed1(0x140)]+'\x0a');const {sessions:_0xdbcce8}=await listFeatureSessions(_0x58b304);if(_0x502ff4[_0x340ed1(0x134)](_0xdbcce8[_0x340ed1(0xdb)],0x0)){console['log'](_0x502ff4[_0x340ed1(0x187)]);return;}for(const _0x3e2212 of _0xdbcce8){const _0x273c6f=_0x502ff4[_0x340ed1(0x172)](_0x3e2212['status'],_0x502ff4['iNFNe'])?'✅':_0x3e2212['status']===_0x502ff4['LevFC']?'🔄':'▶️';console['log'](_0x273c6f+_0x340ed1(0xe5)+_0x3e2212[_0x340ed1(0x105)]+'\x20('+_0x3e2212['id']+')'),console['log'](_0x340ed1(0x103)+_0x3e2212[_0x340ed1(0xe2)]),console[_0x340ed1(0x173)]('\x20\x20\x20Created:\x20'+new Date(_0x3e2212['createdAt'])['toLocaleString']()),_0x3e2212[_0x340ed1(0x114)]&&console['log'](_0x340ed1(0x196)+new Date(_0x3e2212['completedAt'])[_0x340ed1(0x151)]()),console['log']('');}}export async function featureAddScenario(_0x3fcbfc,_0x44179b){const _0x34fe0f=_0x3dcc19,_0x2e898a={'OmsMs':_0x34fe0f(0xea),'vvdTD':function(_0x24c25f,_0x2e6e4d){return _0x24c25f(_0x2e6e4d);},'MubnL':function(_0x48461e,_0x3cf2ea,_0x2c9d4a){return _0x48461e(_0x3cf2ea,_0x2c9d4a);}},_0x1735ff=_0x44179b||await getActiveFeatureId();if(!_0x1735ff)throw new Error(_0x2e898a['OmsMs']);const _0xb9705e=await _0x2e898a[_0x34fe0f(0x186)](getFeature,_0x1735ff);if(_0xb9705e[_0x34fe0f(0x15b)]&&!_0xb9705e['latestReview']['submittedAt'])throw new Error(_0x34fe0f(0x195)+_0xb9705e['dashboardUrl']);await _0x2e898a['MubnL'](createChecklistItem,_0x1735ff,_0x3fcbfc);const _0x50f16f=await getFeature(_0x1735ff);console[_0x34fe0f(0x173)]('\x0a✅\x20Scenario\x20added'),displayFeature(_0x50f16f,_0x50f16f[_0x34fe0f(0x1a1)]);}export async function featureEditScenario(_0x4345c0,_0x49c6f2){const _0x4503f3=_0x3dcc19,_0x3eb63a={'oVNQj':'Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','kBeYj':'Please\x20finish\x20your\x20review\x20first:','xIxZs':function(_0x1020a7,_0x3a3c78){return _0x1020a7===_0x3a3c78;},'zdLqq':'\x0a❌\x20No\x20scenarios\x20found\x20to\x20edit.','uwxOe':'\x0aAvailable\x20scenarios:','BSvVu':function(_0xa79c5e,_0x35fd25){return _0xa79c5e<_0x35fd25;},'pmxkc':function(_0x174c9a,_0x5cfd80){return _0x174c9a+_0x5cfd80;},'vxZwJ':function(_0x5dd648,_0x2ea47d){return _0x5dd648-_0x2ea47d;},'NpRQW':function(_0x16246b,_0x3116ab){return _0x16246b<_0x3116ab;},'DOKkI':function(_0x4975b2,_0x2491fd){return _0x4975b2>=_0x2491fd;}},_0x271b26=_0x49c6f2['id']||await getActiveFeatureId();!_0x271b26&&(console['error']('\x0a❌\x20No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.'),console[_0x4503f3(0x12e)](_0x3eb63a['oVNQj']),process['exit'](0x1));const _0x10a68c=await getFeature(_0x271b26);_0x10a68c['latestReview']&&!_0x10a68c[_0x4503f3(0x15b)][_0x4503f3(0x17a)]&&(console[_0x4503f3(0x12e)](_0x4503f3(0x192)),console[_0x4503f3(0x12e)](_0x3eb63a[_0x4503f3(0x153)]),console[_0x4503f3(0x12e)]('\x20\x20'+_0x10a68c['dashboardUrl']),process['exit'](0x1));const _0x167de7=_0x10a68c['checklistItems']||[];_0x3eb63a['xIxZs'](_0x167de7[_0x4503f3(0xdb)],0x0)&&(console[_0x4503f3(0x12e)](_0x3eb63a['zdLqq']),process[_0x4503f3(0x15d)](0x1));if(_0x49c6f2['scenario']===undefined){console['error'](_0x4503f3(0x129)),console['log'](_0x3eb63a['uwxOe']);for(let _0x3594c5=0x0;_0x3eb63a[_0x4503f3(0x174)](_0x3594c5,_0x167de7[_0x4503f3(0xdb)]);_0x3594c5++){console[_0x4503f3(0x173)]('\x20\x20'+_0x3eb63a[_0x4503f3(0xe6)](_0x3594c5,0x1)+'.\x20'+_0x167de7[_0x3594c5][_0x4503f3(0xd7)]);}process[_0x4503f3(0x15d)](0x1);}const _0x542dad=_0x3eb63a['vxZwJ'](_0x49c6f2[_0x4503f3(0x124)],0x1);if(_0x3eb63a[_0x4503f3(0x169)](_0x542dad,0x0)||_0x3eb63a[_0x4503f3(0x189)](_0x542dad,_0x167de7[_0x4503f3(0xdb)])){console[_0x4503f3(0x12e)]('\x0a❌\x20Invalid\x20scenario\x20index:\x20'+_0x49c6f2[_0x4503f3(0x124)]+_0x4503f3(0x100)+_0x167de7[_0x4503f3(0xdb)]+'\x20scenarios.'),console['log']('\x0aAvailable\x20scenarios:');for(let _0x2bf81f=0x0;_0x2bf81f<_0x167de7[_0x4503f3(0xdb)];_0x2bf81f++){console['log']('\x20\x20'+_0x3eb63a['pmxkc'](_0x2bf81f,0x1)+'.\x20'+_0x167de7[_0x2bf81f]['description']);}process[_0x4503f3(0x15d)](0x1);}const _0x5d515b=_0x167de7[_0x542dad];await updateChecklistItem(_0x271b26,_0x5d515b['id'],{'description':_0x4345c0});const _0x49b55e=await getFeature(_0x271b26);console['log']('\x0a✅\x20Scenario\x20updated'),displayFeature(_0x49b55e,_0x49b55e[_0x4503f3(0x1a1)]);}async function downloadFeedbackImage(_0x56865d,_0x5f1b49){const _0x580b17=_0x3dcc19,_0x585076={'JLVoO':_0x580b17(0x13a),'VFsaj':function(_0x153e34,_0xd4abad,_0x510341){return _0x153e34(_0xd4abad,_0x510341);}};try{const _0xd4674e=join(getRangerDir(),_0x585076[_0x580b17(0x180)]);await _0x585076['VFsaj'](mkdir,_0xd4674e,{'recursive':!![]});const _0x3bb87c=_0x585076['VFsaj'](join,_0xd4674e,_0x580b17(0x1a2)+_0x5f1b49+'.png'),_0x54303c=await fetch(_0x56865d);if(!_0x54303c['ok'])return null;const _0x27a0cc=Buffer['from'](await _0x54303c[_0x580b17(0x142)]());return await writeFile(_0x3bb87c,_0x27a0cc),_0x3bb87c;}catch{return null;}}export async function featureGetReview(_0x449435){const _0x237ec9=_0x3dcc19,_0x17d0dd={'bIpcT':function(_0x2110c2){return _0x2110c2();},'uutqs':_0x237ec9(0xea),'vJFfp':function(_0x549b8f,_0x4da0c8){return _0x549b8f(_0x4da0c8);},'LRbAC':function(_0x1f86b9,_0xb57359){return _0x1f86b9===_0xb57359;},'VWPiJ':_0x237ec9(0xd5),'SFLgy':function(_0x168729,_0x1f206b){return _0x168729>_0x1f206b;},'sORbJ':function(_0x4c6fef,_0x1a45b1,_0x33964a){return _0x4c6fef(_0x1a45b1,_0x33964a);},'UlJMd':'en-US','MvJdl':_0x237ec9(0xdd),'gtYlJ':'numeric','cSOGB':'\x20>\x20','FaKUH':function(_0x2b05da,_0x6620af){return _0x2b05da>=_0x6620af;},'JuzkX':function(_0x1a6dbf,_0x4ebf29){return _0x1a6dbf+_0x4ebf29;}},_0xdf8908=_0x449435||await _0x17d0dd[_0x237ec9(0xd2)](getActiveFeatureId);if(!_0xdf8908)throw new Error(_0x17d0dd[_0x237ec9(0x165)]);const _0x22218f=await getFeature(_0xdf8908),{items:_0x358069}=await _0x17d0dd['vJFfp'](getActionItems,_0xdf8908);console['log']('\x0a📋\x20Feedback\x20for:\x20'+_0x22218f['name']+'\x20('+_0x22218f['id']+')\x0a');if(_0x17d0dd['LRbAC'](_0x358069['length'],0x0)){console['log'](_0x17d0dd['VWPiJ']);return;}for(let _0x3480e4=0x0;_0x3480e4<_0x358069[_0x237ec9(0xdb)];_0x3480e4++){const _0x12cb81=_0x358069[_0x3480e4],_0x1e5100=_0x17d0dd['SFLgy'](_0x12cb81[_0x237ec9(0x14e)],0x1)?'\x20(v'+_0x12cb81['version']+')':'',_0x3a483e=await _0x17d0dd[_0x237ec9(0x11d)](getItemFeedback,_0xdf8908,_0x12cb81['id']);if(_0x17d0dd[_0x237ec9(0x155)](_0x3a483e[_0x237ec9(0xf3)][_0x237ec9(0xdb)],0x0)){console[_0x237ec9(0x173)]('Scenario\x20'+(_0x3480e4+0x1)+':\x20\x22'+_0x12cb81['description']+'\x22'+_0x1e5100+_0x237ec9(0x126)+_0x3a483e['unaddressedComments'][_0x237ec9(0xdb)]+'\x20unaddressed\x20comment(s)');for(const _0x588228 of _0x3a483e['unaddressedComments']){const _0x272f36=new Date(_0x588228[_0x237ec9(0x144)])['toLocaleDateString'](_0x17d0dd[_0x237ec9(0x14b)],{'month':_0x17d0dd[_0x237ec9(0xd3)],'day':_0x17d0dd['gtYlJ']}),_0x4bbc43=_0x588228['authorName']||_0x588228['authorEmail']||'Unknown';console[_0x237ec9(0x173)](_0x237ec9(0x16a)+_0x4bbc43+'\x20('+_0x272f36+'):\x20\x22'+_0x588228[_0x237ec9(0x110)]+'\x22');if(_0x588228[_0x237ec9(0xeb)]){const _0x279cfd=await downloadFeedbackImage(_0x588228['assetUrl'],_0x588228['id']);_0x279cfd&&console[_0x237ec9(0x173)](_0x237ec9(0xd1)+_0x279cfd);}if(_0x588228['domRef']){const _0x1b3509=_0x588228['domRef'][_0x237ec9(0x12b)]['split'](_0x17d0dd['cSOGB'])['pop']()?.['split'](':')[0x0]||_0x237ec9(0x148),_0x39626d=_0x588228['domRef']['textContent']?'\x20\x22'+_0x588228[_0x237ec9(0xcb)][_0x237ec9(0xf8)][_0x237ec9(0x146)](0x0,0x3c)+'\x22':'';console['log']('\x20\x20\x20\x20\x20🎯\x20Element:\x20<'+_0x1b3509+'>'+_0x39626d),console[_0x237ec9(0x173)]('\x20\x20\x20\x20\x20📋\x20Selector:\x20'+_0x588228['domRef']['selector']);}else{if(_0x588228['spatial']){const _0x518fba=_0x588228['spatial'][_0x237ec9(0xf2)];_0x588228[_0x237ec9(0xe9)]['type']===_0x237ec9(0x19c)&&_0x17d0dd['FaKUH'](_0x518fba['length'],0x2)?console[_0x237ec9(0x173)]('\x20\x20\x20\x20\x20📍\x20Annotation:\x20point\x20at\x20('+_0x518fba[0x0][_0x237ec9(0x19b)](0x2)+',\x20'+_0x518fba[0x1][_0x237ec9(0x19b)](0x2)+')'):console[_0x237ec9(0x173)]('\x20\x20\x20\x20\x20📍\x20Annotation:\x20'+_0x588228[_0x237ec9(0xe9)]['type']+_0x237ec9(0xfd)+_0x518fba['map'](_0x2759a9=>_0x2759a9[_0x237ec9(0x19b)](0x2))[_0x237ec9(0xcf)](',\x20')+']');}}}if(_0x3a483e[_0x237ec9(0x10f)]){console['log']('\x20\x20Expected\x20flow:');for(const _0x142db9 of _0x3a483e[_0x237ec9(0x10f)][_0x237ec9(0x128)]('\x0a')){console['log'](_0x237ec9(0xcd)+_0x142db9);}}}else console['log'](_0x237ec9(0x101)+_0x17d0dd[_0x237ec9(0xce)](_0x3480e4,0x1)+_0x237ec9(0x12a)+_0x12cb81[_0x237ec9(0xd7)]+'\x22'+_0x1e5100+_0x237ec9(0x17c)),console[_0x237ec9(0x173)](_0x237ec9(0x162));console[_0x237ec9(0x173)]('');}}export async function featureDelete(_0x2b98c5){const _0x2ed8fe=_0x3dcc19,_0x408143={'FpZGF':function(_0x1f6fd6,_0x136236){return _0x1f6fd6+_0x136236;}},_0x22123b=_0x2b98c5||await getActiveFeatureId();if(!_0x22123b)throw new Error(_0x2ed8fe(0xea));const _0x321c23=await getFeature(_0x22123b);await softDeleteFeature(_0x22123b),console['log']('\x0a🗑️\x20\x20Deleted\x20feature\x20review:\x20'+_0x321c23['name']+'\x20('+_0x22123b+')'),console[_0x2ed8fe(0x173)](_0x408143[_0x2ed8fe(0x10d)](_0x2ed8fe(0x157),_0x22123b));}export async function featureRestore(_0xfa5ad5){await restoreFeature(_0xfa5ad5);const _0x4833ce=await getFeature(_0xfa5ad5);console['log']('\x0a✅\x20Restored\x20feature\x20review:\x20'+_0x4833ce['name']+'\x20('+_0xfa5ad5+')'),displayFeature(_0x4833ce,_0x4833ce['checklistItems']);}function _0xa8e7(){const _0x50f5b4=['coordinates','unaddressedComments','tXjpA','258256FiFPDn','iZSEB','\x20unaddressed\x20reviewer\x20comment(s)\x20across\x20','textContent','223595cesVCx','write','closed','GXZqo','\x20at\x20[','blockedReason','AUNvY','.\x20Feature\x20review\x20has\x20','Scenario\x20','SEpAI','\x20\x20\x20Status:\x20','toLocaleDateString','iteration','\x20--current-branch','verified','Step\x20','vmbkb','completed','\x0a✅\x20Resumed\x20feature\x20review:\x20','pqFzz','FpZGF','EHyar','canonicalFlow','content','bIdfl','\x0aGenerating\x20report...','DDQCr','completedAt','\x1b[0m','find','parentItemId','blocked','github.com/','\x0aNon-interactive\x20mode\x20detected.\x20Multiple\x20feature\x20reviews\x20found:','Showing\x20','.md','sORbJ','\x0a❌\x20Invalid\x20scenario\x20number(s):\x20','trim','DedmT','filter','\x20\x20\x20Description:\x20','\x0a✅\x20Session\x20is\x20already\x20completed.','scenario','excludeScenarios','\x20—\x20','terminalReason','split','\x0a❌\x20No\x20scenario\x20number\x20provided.\x20Use\x20--scenario\x20<number>.',':\x20\x22','selector','Not\x20in\x20a\x20git\x20repository.','\x0a⚠️\x20\x20','error','\x20\x20\x20\x20\x20Branch:\x20','stats','cohrh','scenarios','verifiedItems','VRSjl','HGBIF','items','cAtqN','replace','stdin','feedback-images','pipe','dashboardUrl','incomplete','ready','pInNb','name','\x20--limit\x20','arrayBuffer','QksJy','createdAt','assets','slice','gitBranch','element','stdout','oWtlu','UlJMd','2042362muqZQB','linkedSession','version','json','trimEnd','toLocaleString','after','kBeYj','isInteger','SFLgy','\x20\x20\x20Created:\x20','\x20\x20\x20To\x20restore\x20it,\x20run:\x20ranger\x20restore\x20','CLAUDE_SESSION_ID','wokdQ','any','latestReview','git\x20rev-parse\x20--abbrev-ref\x20HEAD','exit','env','No\x20sessions\x20found.','has','screenshotUrls','\x20\x20✅\x20No\x20feedback\x20to\x20address','\x20incomplete','totalCount','uutqs','OgvBr','warn','utf-8','NpRQW','\x20\x20💬\x20','PHxdx','lRCgt','dNrUD','agentResponse','Run:\x20ranger\x20create\x20\x22<name>\x22\x20to\x20create\x20a\x20new\x20feature\x20review','\x20feature\x20review(s)\x20found','\x20\x20\x20▶️\x20Started\x20session\x20','DkFFk','log','BSvVu','\x20of\x20','134124WMSSfM','map','\x0aCreating\x20feature\x20review...','repeat','submittedAt','\x20concluded.','\x20—\x20no\x20comments','VTqxV','gitRepoUrl','\x0a\x20\x20\x20Scenarios:','JLVoO','\x20(v','/api/v1/mcp/browser-sessions/','sDhLB','wBWIQ','PQEjy','vvdTD','RhwRz','aXlXm','DOKkI','24sqTdxl','sessionId','MHwVx','\x20\x20\x20\x20\x20\x20Cancelled:\x20','offset','isTTY','DBQcb','Cannot\x20conclude\x20session\x20with\x20status:\x20','\x0a❌\x20Cannot\x20edit\x20scenario:\x20feature\x20review\x20has\x20an\x20active\x20review.','kiVOF','acQby','Cannot\x20add\x20scenario:\x20feature\x20review\x20has\x20an\x20active\x20review.\x20Please\x20finish\x20your\x20review\x20first:\x20','\x20\x20\x20Completed:\x20','zSnIr','OfvoR','verificationInProgressItems','RwJwZ','toFixed','point','screenshot','fZpqe','git\x20remote\x20get-url\x20origin','OGyIG','checklistItems','comment_','\x0a✅\x20Report\x20generated:\x20','\x20\x20\x20Branch:\x20','416946qxMooY','HTEWP','stqkg','LAMgy','RANGER_TEST_USERNAME','GcXNO','\x0a✅\x20Feature\x20review\x20created:\x20','domRef','location','\x20\x20\x20\x20','JuzkX','join','push','\x20\x20\x20\x20\x20📷\x20Screenshot:\x20','bIpcT','MvJdl','limit','No\x20scenarios\x20found.','incompleteReason','description','selected','\x20\x20\x20Updated\x20branch\x20to:\x20','reports','length','\x20scenario(s).','short','in_progress','Please\x20specify\x20the\x20feature\x20review\x20ID:\x20ranger\x20resume\x20<id>','893692zUcohl','currentSessionId','status','\x20\x20\x20','LqoGE','\x20Session\x20','pmxkc','...','\x20\x20\x20Progress:\x20','spatial','No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','assetUrl','btcMq','includeDeleted','assetType','canceledReason','approved','5999472kXQKuB'];_0xa8e7=function(){return _0x50f5b4;};return _0xa8e7();}
@@ -1 +1 @@
1
- function _0x524c(){const _0x13c80b=['72549hNkXsW','4840pUkNBV','Unknown\x20hook:\x20','273cvUJnQ','once','304375bVyhpE','54vMZneT','987385gHewUu','exit','5100788tscnMN','9888176DSWcfH','error','SIGHUP','32770760kOdvVg','3YAIKGm','240uhJNhC'];_0x524c=function(){return _0x13c80b;};return _0x524c();}(function(_0x343fe3,_0x556f3b){const _0x13fb82=_0x2471,_0x910307=_0x343fe3();while(!![]){try{const _0x5ba01e=-parseInt(_0x13fb82(0x19c))/0x1*(parseInt(_0x13fb82(0x19a))/0x2)+-parseInt(_0x13fb82(0x197))/0x3*(parseInt(_0x13fb82(0x1a2))/0x4)+parseInt(_0x13fb82(0x19e))/0x5+parseInt(_0x13fb82(0x19f))/0x6*(parseInt(_0x13fb82(0x1a0))/0x7)+-parseInt(_0x13fb82(0x1a3))/0x8+parseInt(_0x13fb82(0x199))/0x9*(-parseInt(_0x13fb82(0x198))/0xa)+parseInt(_0x13fb82(0x196))/0xb;if(_0x5ba01e===_0x556f3b)break;else _0x910307['push'](_0x910307['shift']());}catch(_0x2a8688){_0x910307['push'](_0x910307['shift']());}}}(_0x524c,0xe683b));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 _0x2471(_0x5bb6c1,_0x134ea3){_0x5bb6c1=_0x5bb6c1-0x196;const _0x524c1a=_0x524c();let _0x2471d3=_0x524c1a[_0x5bb6c1];return _0x2471d3;}let cancellationHandlersInstalled=![];function installCancellationHandlers(){const _0x1e1dff=_0x2471,_0x4aa57c={'Lczyk':'SIGINT','Lysmc':'SIGTERM','vjJri':_0x1e1dff(0x1a5)};if(cancellationHandlersInstalled)return;const _0x5c66ba=()=>{const _0x3c3c5c=_0x1e1dff;process[_0x3c3c5c(0x1a1)](0x0);};process[_0x1e1dff(0x19d)](_0x4aa57c['Lczyk'],_0x5c66ba),process['once'](_0x4aa57c['Lysmc'],_0x5c66ba),process['once'](_0x4aa57c['vjJri'],_0x5c66ba),cancellationHandlersInstalled=!![];}export async function hook(_0x210dc4,_0x3b6e5d){const _0x6daefb=_0x2471;installCancellationHandlers();const _0x58e2b6=HOOKS[_0x210dc4];if(!_0x58e2b6){const _0x38a83d=Object['keys'](HOOKS)['join'](',\x20');console[_0x6daefb(0x1a4)](_0x6daefb(0x19b)+_0x210dc4),console[_0x6daefb(0x1a4)]('Valid\x20hooks:\x20'+_0x38a83d),process[_0x6daefb(0x1a1)](0x1);}await _0x58e2b6(_0x3b6e5d);}
1
+ (function(_0x59397b,_0xa071d3){const _0x2d7c90=_0xbe3e,_0x37e130=_0x59397b();while(!![]){try{const _0x43495e=-parseInt(_0x2d7c90(0x1d3))/0x1+-parseInt(_0x2d7c90(0x1db))/0x2+-parseInt(_0x2d7c90(0x1dc))/0x3*(parseInt(_0x2d7c90(0x1d7))/0x4)+-parseInt(_0x2d7c90(0x1cf))/0x5*(parseInt(_0x2d7c90(0x1d4))/0x6)+-parseInt(_0x2d7c90(0x1d0))/0x7*(parseInt(_0x2d7c90(0x1de))/0x8)+parseInt(_0x2d7c90(0x1dd))/0x9+parseInt(_0x2d7c90(0x1da))/0xa*(parseInt(_0x2d7c90(0x1d6))/0xb);if(_0x43495e===_0xa071d3)break;else _0x37e130['push'](_0x37e130['shift']());}catch(_0x55a554){_0x37e130['push'](_0x37e130['shift']());}}}(_0x3f9d,0x739f2));function _0x3f9d(){const _0x422ba1=['CjEla','13885MXGymY','7KiJrhE','error','exit','66572PlnGAf','342XbrjMz','once','5229565vWybMB','4AKeUaL','Valid\x20hooks:\x20','SIGINT','20FntsnO','635972MOMUeC','25893skkwcp','5068251hOcImF','3911240pSzWfR'];_0x3f9d=function(){return _0x422ba1;};return _0x3f9d();}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 _0xbe3e(_0x3ea7dd,_0x30d1bd){_0x3ea7dd=_0x3ea7dd-0x1ce;const _0x3f9db5=_0x3f9d();let _0xbe3edd=_0x3f9db5[_0x3ea7dd];return _0xbe3edd;}let cancellationHandlersInstalled=![];function installCancellationHandlers(){const _0x1bd38b=_0xbe3e,_0x3913a9={'CjEla':'SIGTERM'};if(cancellationHandlersInstalled)return;const _0x101c4c=()=>{process['exit'](0x0);};process[_0x1bd38b(0x1d5)](_0x1bd38b(0x1d9),_0x101c4c),process[_0x1bd38b(0x1d5)](_0x3913a9[_0x1bd38b(0x1ce)],_0x101c4c),process[_0x1bd38b(0x1d5)]('SIGHUP',_0x101c4c),cancellationHandlersInstalled=!![];}export async function hook(_0x59d5d5,_0x427794){const _0x52125b=_0xbe3e;installCancellationHandlers();const _0x5156d7=HOOKS[_0x59d5d5];if(!_0x5156d7){const _0x2a1f96=Object['keys'](HOOKS)['join'](',\x20');console[_0x52125b(0x1d1)]('Unknown\x20hook:\x20'+_0x59d5d5),console['error'](_0x52125b(0x1d8)+_0x2a1f96),process[_0x52125b(0x1d2)](0x1);}await _0x5156d7(_0x427794);}
@@ -1 +1 @@
1
- function _0x20db(_0x5bfe2a,_0x613d52){_0x5bfe2a=_0x5bfe2a-0x19e;const _0xf522a9=_0xf522();let _0x20dbd5=_0xf522a9[_0x5bfe2a];return _0x20dbd5;}(function(_0x47adb4,_0x40e9b1){const _0x1b3a82=_0x20db,_0x411836=_0x47adb4();while(!![]){try{const _0x2841cc=parseInt(_0x1b3a82(0x19e))/0x1*(parseInt(_0x1b3a82(0x1a9))/0x2)+parseInt(_0x1b3a82(0x1ad))/0x3+parseInt(_0x1b3a82(0x1ac))/0x4*(-parseInt(_0x1b3a82(0x1a0))/0x5)+parseInt(_0x1b3a82(0x1a4))/0x6*(-parseInt(_0x1b3a82(0x19f))/0x7)+-parseInt(_0x1b3a82(0x1a3))/0x8*(-parseInt(_0x1b3a82(0x1aa))/0x9)+-parseInt(_0x1b3a82(0x1a7))/0xa+-parseInt(_0x1b3a82(0x1a1))/0xb*(-parseInt(_0x1b3a82(0x1a2))/0xc);if(_0x2841cc===_0x40e9b1)break;else _0x411836['push'](_0x411836['shift']());}catch(_0x46606a){_0x411836['push'](_0x411836['shift']());}}}(_0xf522,0x3ef2b));import{readHookInput}from'./output.js';import{isSessionEnabled,hasSessionBeenPrompted,markSessionPrompted}from'../utils/sessionCache.js';const AUTO_PROMPT_TEXT='\x0a🚨\x20🚨\x20[ACTION\x20REQUIRED]\x20🚨\x20🚨\x0aBefore\x20responding\x20to\x20the\x20user\x27s\x20message,\x20consider\x20whether\x20this\x20task\x20will\x20involve\x20ANY\x20frontend,\x20UI,\x20or\x20browser\x20work.\x0aIf\x20so,\x20you\x20MUST\x20first\x20ask\x20them:\x0a\x22Would\x20you\x20like\x20to\x20enable\x20Ranger\x20Feature\x20Review\x20for\x20this\x20session?\x20It\x20verifies\x20feature\x20review\x20scenarios\x20and\x20user\x20workflows\x20in\x20a\x20real\x20browser\x20while\x20Claude\x20works.\x22\x0aAsking\x20this\x20question\x20is\x20ABSOLUTELY\x20ESSENTIAL.\x20DO\x20NOT\x20SKIP\x20THIS\x20STEP.\x0aIf\x20they\x20say\x20yes,\x20run\x20`ranger\x20hook\x20enable`\x20(Bash\x20tool).\x0aIf\x20they\x20say\x20no,\x20say\x20\x22Sounds\x20good.\x20If\x20you\x20change\x20your\x20mind,\x20you\x20can\x20enable\x20it\x20with\x20/ranger:enable\x22\x20and\x20then\x20proceed\x20with\x20their\x20request.\x0aThis\x20is\x20mandatory\x20—\x20do\x20not\x20skip\x20this\x20step.';function _0xf522(){const _0x30bb2c=['264915LpjuFQ','4220yCXIHH','156354jJPjEw','24TsRBfh','24uDjStM','66RSFDTw','JykXE','rsefc','3958490PqAZKb','session_id','975342UpdHkC','1414233BsbSwm','log','1724gwIYCq','1338699ABRtRP','1anUfai'];_0xf522=function(){return _0x30bb2c;};return _0xf522();}export async function autoPrompt(){const _0x55a3a5=_0x20db,_0xccb110={'JykXE':function(_0x4cb9d9,_0x51a83a){return _0x4cb9d9(_0x51a83a);},'rsefc':function(_0x26759a,_0x2fc1da){return _0x26759a(_0x2fc1da);}},_0x4c1fa5=await readHookInput(),_0xf3f754=_0x4c1fa5?.[_0x55a3a5(0x1a8)];if(!_0xf3f754)return;if(_0xccb110['JykXE'](isSessionEnabled,_0xf3f754)||_0xccb110[_0x55a3a5(0x1a5)](hasSessionBeenPrompted,_0xf3f754))return;_0xccb110[_0x55a3a5(0x1a6)](markSessionPrompted,_0xf3f754),console[_0x55a3a5(0x1ab)](AUTO_PROMPT_TEXT);}
1
+ const _0x5a86f9=_0x1988;(function(_0x3c1b0c,_0x2f79aa){const _0x6792d4=_0x1988,_0xf2047=_0x3c1b0c();while(!![]){try{const _0x44a3e7=-parseInt(_0x6792d4(0x1dc))/0x1+parseInt(_0x6792d4(0x1d6))/0x2*(parseInt(_0x6792d4(0x1d3))/0x3)+parseInt(_0x6792d4(0x1d2))/0x4*(-parseInt(_0x6792d4(0x1de))/0x5)+parseInt(_0x6792d4(0x1da))/0x6*(-parseInt(_0x6792d4(0x1dd))/0x7)+-parseInt(_0x6792d4(0x1d5))/0x8*(parseInt(_0x6792d4(0x1d8))/0x9)+-parseInt(_0x6792d4(0x1d1))/0xa*(parseInt(_0x6792d4(0x1d9))/0xb)+parseInt(_0x6792d4(0x1d7))/0xc;if(_0x44a3e7===_0x2f79aa)break;else _0xf2047['push'](_0xf2047['shift']());}catch(_0x16ebaa){_0xf2047['push'](_0xf2047['shift']());}}}(_0x4222,0x315ae));function _0x4222(){const _0x48f600=['7wYJscC','249455eZBbSY','Ybape','10kAsXPO','4IuXliZ','33CZKLls','\x0a🚨\x20🚨\x20[ACTION\x20REQUIRED]\x20🚨\x20🚨\x0aBefore\x20responding\x20to\x20the\x20user\x27s\x20message,\x20consider\x20whether\x20this\x20task\x20will\x20involve\x20ANY\x20frontend,\x20UI,\x20or\x20browser\x20work.\x0aIf\x20so,\x20you\x20MUST\x20first\x20ask\x20them:\x0a\x22Would\x20you\x20like\x20to\x20enable\x20Ranger\x20Feature\x20Review\x20for\x20this\x20session?\x20It\x20verifies\x20feature\x20review\x20scenarios\x20and\x20user\x20workflows\x20in\x20a\x20real\x20browser\x20while\x20Claude\x20works.\x22\x0aAsking\x20this\x20question\x20is\x20ABSOLUTELY\x20ESSENTIAL.\x20DO\x20NOT\x20SKIP\x20THIS\x20STEP.\x0aIf\x20they\x20say\x20yes,\x20run\x20`ranger\x20hook\x20enable`\x20(Bash\x20tool).\x0aIf\x20they\x20say\x20no,\x20say\x20\x22Sounds\x20good.\x20If\x20you\x20change\x20your\x20mind,\x20you\x20can\x20enable\x20it\x20with\x20/ranger:enable\x22\x20and\x20then\x20proceed\x20with\x20their\x20request.\x0aThis\x20is\x20mandatory\x20—\x20do\x20not\x20skip\x20this\x20step.','243424SImdFu','44708xsqpZM','6100032hUCaMF','18TDMQUT','42361IwMbap','976686gsqsoP','log','274693voakRt'];_0x4222=function(){return _0x48f600;};return _0x4222();}import{readHookInput}from'./output.js';function _0x1988(_0x2d6149,_0x3e8d96){_0x2d6149=_0x2d6149-0x1d0;const _0x4222a8=_0x4222();let _0x198837=_0x4222a8[_0x2d6149];return _0x198837;}import{isSessionEnabled,hasSessionBeenPrompted,markSessionPrompted}from'../utils/sessionCache.js';const AUTO_PROMPT_TEXT=_0x5a86f9(0x1d4);export async function autoPrompt(){const _0x4f57fb=_0x5a86f9,_0x536217={'Ybape':function(_0x253a97,_0x41099d){return _0x253a97(_0x41099d);}},_0x3ea268=await readHookInput(),_0x307e81=_0x3ea268?.['session_id'];if(!_0x307e81)return;if(_0x536217['Ybape'](isSessionEnabled,_0x307e81)||_0x536217[_0x4f57fb(0x1d0)](hasSessionBeenPrompted,_0x307e81))return;markSessionPrompted(_0x307e81),console[_0x4f57fb(0x1db)](AUTO_PROMPT_TEXT);}
@@ -1 +1 @@
1
- function _0x42c5(_0xf31d92,_0x95d429){_0xf31d92=_0xf31d92-0xa8;const _0x319c00=_0x319c();let _0x42c59e=_0x319c00[_0xf31d92];return _0x42c59e;}(function(_0x18ed9b,_0x2f36b1){const _0x47d903=_0x42c5,_0x29aad2=_0x18ed9b();while(!![]){try{const _0x49aa1d=parseInt(_0x47d903(0xac))/0x1+-parseInt(_0x47d903(0xad))/0x2+parseInt(_0x47d903(0xb0))/0x3+parseInt(_0x47d903(0xae))/0x4+parseInt(_0x47d903(0xaf))/0x5+-parseInt(_0x47d903(0xb5))/0x6*(parseInt(_0x47d903(0xb3))/0x7)+parseInt(_0x47d903(0xb2))/0x8;if(_0x49aa1d===_0x2f36b1)break;else _0x29aad2['push'](_0x29aad2['shift']());}catch(_0xfd861c){_0x29aad2['push'](_0x29aad2['shift']());}}}(_0x319c,0x68fb7));function _0x319c(){const _0xee0e93=['FsCuj','main','env','\x20and\x20branch\x20\x27','master','130204PoIJMd','1679712ZAWsgI','385068vtTbmN','476210sAcghQ','1210977ptFYRu','.\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`.','6188528QEdevQ','6545IWEujP','ZKmWB','1470CVeMdU','IMGIb'];_0x319c=function(){return _0xee0e93;};return _0x319c();}import{disableSession,disableBranch,getCurrentBranch}from'../utils/sessionCache.js';import{printBlock}from'./output.js';export async function disable(_0x572412){const _0x4ca98f=_0x42c5,_0xfe59a0={'wnlqB':function(_0x3522b9){return _0x3522b9();},'FsCuj':_0x4ca98f(0xa8),'ZKmWB':function(_0x3aa7d2,_0x59bfa6){return _0x3aa7d2(_0x59bfa6);},'IMGIb':function(_0x4234d7,_0x2c1054){return _0x4234d7!==_0x2c1054;}},_0x16d0a2=_0x572412||process[_0x4ca98f(0xa9)]['CLAUDE_SESSION_ID']||'';_0x16d0a2&&disableSession(_0x16d0a2);const _0xa5b80a=_0xfe59a0['wnlqB'](getCurrentBranch);_0xa5b80a&&_0xa5b80a!==_0xfe59a0[_0x4ca98f(0xb7)]&&_0xa5b80a!==_0x4ca98f(0xab)&&_0xfe59a0[_0x4ca98f(0xb4)](disableBranch,_0xa5b80a),printBlock('#\x20RANGER\x20DISABLED\x0a\x0aThe\x20user\x20has\x20expressly\x20disabled\x20Ranger\x20hooks\x20for\x20this\x20session'+(_0xa5b80a&&_0xa5b80a!==_0x4ca98f(0xa8)&&_0xfe59a0[_0x4ca98f(0xb6)](_0xa5b80a,_0x4ca98f(0xab))?_0x4ca98f(0xaa)+_0xa5b80a+'\x27':'')+_0x4ca98f(0xb1));}
1
+ (function(_0xa2b275,_0x3d1de6){const _0xc6696d=_0x5e4e,_0x3407fb=_0xa2b275();while(!![]){try{const _0x43f358=parseInt(_0xc6696d(0x130))/0x1*(-parseInt(_0xc6696d(0x134))/0x2)+-parseInt(_0xc6696d(0x128))/0x3*(-parseInt(_0xc6696d(0x12b))/0x4)+-parseInt(_0xc6696d(0x12a))/0x5+-parseInt(_0xc6696d(0x12d))/0x6+parseInt(_0xc6696d(0x136))/0x7*(parseInt(_0xc6696d(0x132))/0x8)+-parseInt(_0xc6696d(0x12f))/0x9+parseInt(_0xc6696d(0x135))/0xa;if(_0x43f358===_0x3d1de6)break;else _0x3407fb['push'](_0x3407fb['shift']());}catch(_0x425faf){_0x3407fb['push'](_0x3407fb['shift']());}}}(_0x1abc,0xc7076));function _0x1abc(){const _0x43382b=['#\x20RANGER\x20DISABLED\x0a\x0aThe\x20user\x20has\x20expressly\x20disabled\x20Ranger\x20hooks\x20for\x20this\x20session','2PpsJkE','14547170ogEmyc','7rJafnN','main','.\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`.','3YHMfLM','kfGSW','2027185hnGDIz','5143456vuKCtR','HnkTh','7253382rdIsup','master','2195343XSyaxI','203911HeMgFI','env','1094504NcAuQM'];_0x1abc=function(){return _0x43382b;};return _0x1abc();}function _0x5e4e(_0x41b337,_0x5d9175){_0x41b337=_0x41b337-0x127;const _0x1abcfb=_0x1abc();let _0x5e4e88=_0x1abcfb[_0x41b337];return _0x5e4e88;}import{disableSession,disableBranch,getCurrentBranch}from'../utils/sessionCache.js';import{printBlock}from'./output.js';export async function disable(_0x510df5){const _0x4bd64c=_0x5e4e,_0x4890ac={'kfGSW':function(_0x2645da,_0x517498){return _0x2645da(_0x517498);},'HnkTh':function(_0x327dc9,_0x5c1507){return _0x327dc9!==_0x5c1507;},'RFrWv':function(_0x40ed1a,_0x2f9398){return _0x40ed1a(_0x2f9398);},'JsYUk':_0x4bd64c(0x137),'uoANA':function(_0x35944f,_0x279c18){return _0x35944f!==_0x279c18;}},_0x337350=_0x510df5||process[_0x4bd64c(0x131)]['CLAUDE_SESSION_ID']||'';_0x337350&&_0x4890ac[_0x4bd64c(0x129)](disableSession,_0x337350);const _0x2eb81b=getCurrentBranch();_0x2eb81b&&_0x4890ac[_0x4bd64c(0x12c)](_0x2eb81b,'main')&&_0x2eb81b!==_0x4bd64c(0x12e)&&disableBranch(_0x2eb81b),_0x4890ac['RFrWv'](printBlock,_0x4bd64c(0x133)+(_0x2eb81b&&_0x4890ac[_0x4bd64c(0x12c)](_0x2eb81b,_0x4890ac['JsYUk'])&&_0x4890ac['uoANA'](_0x2eb81b,'master')?'\x20and\x20branch\x20\x27'+_0x2eb81b+'\x27':'')+_0x4bd64c(0x127));}
@@ -1 +1 @@
1
- (function(_0x1399f5,_0x1b790b){const _0x445223=_0x3d10,_0x518561=_0x1399f5();while(!![]){try{const _0x705246=parseInt(_0x445223(0x154))/0x1+-parseInt(_0x445223(0x150))/0x2*(-parseInt(_0x445223(0x159))/0x3)+-parseInt(_0x445223(0x15e))/0x4+parseInt(_0x445223(0x14a))/0x5*(parseInt(_0x445223(0x156))/0x6)+-parseInt(_0x445223(0x15b))/0x7*(-parseInt(_0x445223(0x14e))/0x8)+-parseInt(_0x445223(0x158))/0x9*(-parseInt(_0x445223(0x149))/0xa)+-parseInt(_0x445223(0x14b))/0xb;if(_0x705246===_0x1b790b)break;else _0x518561['push'](_0x518561['shift']());}catch(_0x17f80d){_0x518561['push'](_0x518561['shift']());}}}(_0x10a5,0x99923));import{enableSession,getCurrentBranch}from'../utils/sessionCache.js';function _0x10a5(){const _0x3d3da5=['Restart\x20your\x20OpenCode\x20session\x20after\x20setup.','19054syFlEP','Restart\x20your\x20Claude\x20Code\x20session\x20after\x20setup.','KFiII','1712724ppfKvr','ranger\x20setup','190EAgINA','122920YdueYR','26011799JPEhWd','uOIOR','\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`.','736HjUTUa','uWdLG','2431358nTZZJe','ranger\x20setup\x20--opencode','env','zDspT','226680yvwmbT','#\x20RANGER\x20ENABLED','282zEFCCu','master','271746vlSgwx','3PMyYuH'];_0x10a5=function(){return _0x3d3da5;};return _0x10a5();}import{getToken}from'../utils/keychain.js';function _0x3d10(_0x269ba2,_0x59df52){_0x269ba2=_0x269ba2-0x148;const _0x10a541=_0x10a5();let _0x3d1039=_0x10a541[_0x269ba2];return _0x3d1039;}import{getRangerSkillContent}from'../utils/skillContent.js';import{printBlock}from'./output.js';import{update}from'../update.js';export async function enable(_0x30e60f){const _0x2b798b=_0x3d10,_0x3eb62a={'uOIOR':function(_0x352398,_0x124784){return _0x352398(_0x124784);},'KFiII':_0x2b798b(0x148),'cIDhh':_0x2b798b(0x15c),'zDspT':function(_0x38e3cd){return _0x38e3cd();},'xXTMr':function(_0x44ce04){return _0x44ce04();},'EpvyY':'main','uWdLG':function(_0x413203,_0x4e2a4b){return _0x413203(_0x4e2a4b);}},_0x1cbd70=_0x30e60f||process[_0x2b798b(0x152)]['CLAUDE_SESSION_ID']||'',_0x4e8f4f=_0x3eb62a[_0x2b798b(0x14c)](Boolean,_0x30e60f),_0x425652=await getToken();if(!_0x425652){const _0x53283f=_0x4e8f4f?_0x2b798b(0x151):_0x3eb62a[_0x2b798b(0x15d)],_0x44b1ee=_0x4e8f4f?_0x2b798b(0x15a):_0x3eb62a['cIDhh'];_0x3eb62a['uOIOR'](printBlock,'#\x20RANGER\x20SETUP\x20REQUIRED\x0a\x0aThe\x20Ranger\x20CLI\x20is\x20not\x20configured.\x20To\x20get\x20started:\x0a\x0a1.\x20Install:\x20`npm\x20install\x20-g\x20@ranger-testing/ranger-cli`\x0a2.\x20Run:\x20`'+_0x53283f+'`\x0a\x0aA\x20browser\x20will\x20open\x20for\x20authentication.\x20A\x20human\x20needs\x20to\x20complete\x20the\x20login.\x0a'+_0x44b1ee);return;}try{await _0x3eb62a[_0x2b798b(0x153)](update);}catch{}_0x1cbd70&&_0x3eb62a['uOIOR'](enableSession,_0x1cbd70);const _0x557c34=_0x3eb62a['xXTMr'](getCurrentBranch),_0x1994d0=_0x557c34&&_0x557c34!==_0x3eb62a['EpvyY']&&_0x557c34!==_0x2b798b(0x157)?'\x0a\x0a**Branch\x20\x27'+_0x557c34+'\x27\x20is\x20now\x20enabled**\x20-\x20Ranger\x20will\x20stay\x20active\x20on\x20this\x20branch\x20across\x20sessions.':'',_0x28f7f3=_0x3eb62a[_0x2b798b(0x153)](getRangerSkillContent);_0x3eb62a[_0x2b798b(0x14f)](printBlock,_0x2b798b(0x155)+_0x1994d0+'\x0a\x0a**For\x20ANY\x20UI\x20work,\x20you\x20MUST\x20use\x20the\x20/ranger\x20skill.**\x0a\x0a'+_0x28f7f3+_0x2b798b(0x14d));}
1
+ (function(_0x27e757,_0x3aad27){const _0x46ab32=_0x5330,_0x4d21f5=_0x27e757();while(!![]){try{const _0x6b9ca4=-parseInt(_0x46ab32(0x198))/0x1*(-parseInt(_0x46ab32(0x193))/0x2)+-parseInt(_0x46ab32(0x19d))/0x3*(-parseInt(_0x46ab32(0x190))/0x4)+parseInt(_0x46ab32(0x197))/0x5+parseInt(_0x46ab32(0x192))/0x6+-parseInt(_0x46ab32(0x18d))/0x7*(-parseInt(_0x46ab32(0x194))/0x8)+parseInt(_0x46ab32(0x1a1))/0x9+-parseInt(_0x46ab32(0x191))/0xa;if(_0x6b9ca4===_0x3aad27)break;else _0x4d21f5['push'](_0x4d21f5['shift']());}catch(_0x5dd31d){_0x4d21f5['push'](_0x4d21f5['shift']());}}}(_0x1803,0x7073e));import{enableSession,getCurrentBranch}from'../utils/sessionCache.js';function _0x5330(_0x4addfd,_0x487245){_0x4addfd=_0x4addfd-0x18d;const _0x1803b2=_0x1803();let _0x5330a5=_0x1803b2[_0x4addfd];return _0x5330a5;}import{getToken}from'../utils/keychain.js';import{getRangerSkillContent}from'../utils/skillContent.js';function _0x1803(){const _0x57c834=['uIPRT','ranger\x20setup\x20--opencode','968DRHNtS','19963730OcGtPX','1781616FTsZad','160462lLxRjD','16wbtMeU','#\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`','\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`.','1598915MvEMUO','7JMiuge','cDBeL','ranger\x20setup','oGejx','pWKRU','10284QzepGN','Restart\x20your\x20OpenCode\x20session\x20after\x20setup.','Uhjsi','main','1345671XvDWQj','1048418FSxMdM'];_0x1803=function(){return _0x57c834;};return _0x1803();}import{printBlock}from'./output.js';import{update}from'../update.js';export async function enable(_0x206b7b){const _0x1f4232=_0x5330,_0x31af42={'cDBeL':function(_0x2f22ac,_0x2f16d8){return _0x2f22ac(_0x2f16d8);},'Uhjsi':_0x1f4232(0x19a),'pWKRU':_0x1f4232(0x19e),'GMWKG':function(_0xc98e1d,_0x422158){return _0xc98e1d(_0x422158);},'oGejx':function(_0x479b53){return _0x479b53();},'kTQPt':function(_0x81d2b6,_0xd054b9){return _0x81d2b6(_0xd054b9);},'CiuRl':_0x1f4232(0x1a0),'uIPRT':function(_0x1912ac,_0x4d1c64){return _0x1912ac!==_0x4d1c64;},'tpqaL':function(_0x335a06){return _0x335a06();}},_0x582e83=_0x206b7b||process['env']['CLAUDE_SESSION_ID']||'',_0x51211f=_0x31af42[_0x1f4232(0x199)](Boolean,_0x206b7b),_0x5e9c4c=await getToken();if(!_0x5e9c4c){const _0x547e87=_0x51211f?_0x1f4232(0x18f):_0x31af42[_0x1f4232(0x19f)],_0x2fb93a=_0x51211f?_0x31af42[_0x1f4232(0x19c)]:'Restart\x20your\x20Claude\x20Code\x20session\x20after\x20setup.';_0x31af42['GMWKG'](printBlock,_0x1f4232(0x195)+_0x547e87+'`\x0a\x0aA\x20browser\x20will\x20open\x20for\x20authentication.\x20A\x20human\x20needs\x20to\x20complete\x20the\x20login.\x0a'+_0x2fb93a);return;}try{await _0x31af42[_0x1f4232(0x19b)](update);}catch{}_0x582e83&&_0x31af42['kTQPt'](enableSession,_0x582e83);const _0x4f7e85=getCurrentBranch(),_0x4da7f9=_0x4f7e85&&_0x4f7e85!==_0x31af42['CiuRl']&&_0x31af42[_0x1f4232(0x18e)](_0x4f7e85,'master')?'\x0a\x0a**Branch\x20\x27'+_0x4f7e85+'\x27\x20is\x20now\x20enabled**\x20-\x20Ranger\x20will\x20stay\x20active\x20on\x20this\x20branch\x20across\x20sessions.':'',_0x5b2707=_0x31af42['tpqaL'](getRangerSkillContent);_0x31af42['GMWKG'](printBlock,'#\x20RANGER\x20ENABLED'+_0x4da7f9+'\x0a\x0a**For\x20ANY\x20UI\x20work,\x20you\x20MUST\x20use\x20the\x20/ranger\x20skill.**\x0a\x0a'+_0x5b2707+_0x1f4232(0x196));}
@@ -1 +1 @@
1
- (function(_0x5f0bcb,_0x2dcf83){const _0x3ea974=_0x5b0f,_0x330eea=_0x5f0bcb();while(!![]){try{const _0x2919be=-parseInt(_0x3ea974(0x19a))/0x1+parseInt(_0x3ea974(0x196))/0x2+parseInt(_0x3ea974(0x198))/0x3+parseInt(_0x3ea974(0x197))/0x4+parseInt(_0x3ea974(0x195))/0x5+parseInt(_0x3ea974(0x19e))/0x6*(-parseInt(_0x3ea974(0x199))/0x7)+-parseInt(_0x3ea974(0x19c))/0x8*(parseInt(_0x3ea974(0x19d))/0x9);if(_0x2919be===_0x2dcf83)break;else _0x330eea['push'](_0x330eea['shift']());}catch(_0xdfa67c){_0x330eea['push'](_0x330eea['shift']());}}}(_0x38b4,0x9892a));function _0x38b4(){const _0x441c8a=['18zTZrfY','120570hKzivG','1080754DcTKCu','1588560RXnQoS','2709462FhODSH','893571jvvoOl','828267exMeHG','===\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===','8GHKLkf','257589lDtYjJ'];_0x38b4=function(){return _0x441c8a;};return _0x38b4();}function _0x5b0f(_0xc2ccac,_0x367cc4){_0xc2ccac=_0xc2ccac-0x195;const _0x38b460=_0x38b4();let _0x5b0f4e=_0x38b460[_0xc2ccac];return _0x5b0f4e;}import{printBlock,getEnabledSessionId}from'./output.js';export async function exitPlanMode(_0x44abeb){const _0x36cef2=_0x5b0f,_0x170dfe=await getEnabledSessionId(_0x44abeb);if(!_0x170dfe)return;printBlock(_0x36cef2(0x19b));}
1
+ function _0x2b1f(_0x111211,_0x23e90c){_0x111211=_0x111211-0x12c;const _0x3c46c7=_0x3c46();let _0x2b1f4a=_0x3c46c7[_0x111211];return _0x2b1f4a;}(function(_0x1f0d87,_0x432325){const _0x488ad7=_0x2b1f,_0x2bc334=_0x1f0d87();while(!![]){try{const _0x53b18c=parseInt(_0x488ad7(0x132))/0x1+-parseInt(_0x488ad7(0x130))/0x2*(parseInt(_0x488ad7(0x135))/0x3)+-parseInt(_0x488ad7(0x131))/0x4+-parseInt(_0x488ad7(0x134))/0x5*(-parseInt(_0x488ad7(0x133))/0x6)+parseInt(_0x488ad7(0x12f))/0x7+-parseInt(_0x488ad7(0x12c))/0x8*(-parseInt(_0x488ad7(0x136))/0x9)+-parseInt(_0x488ad7(0x12e))/0xa;if(_0x53b18c===_0x432325)break;else _0x2bc334['push'](_0x2bc334['shift']());}catch(_0xc3a118){_0x2bc334['push'](_0x2bc334['shift']());}}}(_0x3c46,0x6468d));function _0x3c46(){const _0x3c20ab=['1043616OEXlnL','742753wKyDDo','1847556lqayFk','10iJNdOP','1116066fnWDGG','16974MyqfJJ','744koLxWg','===\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===','11187580ctXpux','4402706qztuIb','2kMfnNr'];_0x3c46=function(){return _0x3c20ab;};return _0x3c46();}import{printBlock,getEnabledSessionId}from'./output.js';export async function exitPlanMode(_0x427a9d){const _0xfa7336=_0x2b1f,_0x4160db={'EZqvq':function(_0x56e04d,_0x5bbcce){return _0x56e04d(_0x5bbcce);}},_0x24e0cd=await getEnabledSessionId(_0x427a9d);if(!_0x24e0cd)return;_0x4160db['EZqvq'](printBlock,_0xfa7336(0x12d));}
@@ -1 +1 @@
1
- function _0x10ce(){var _0x500379=['4uTDxdl','11864DNwGvs','474867TOkMqU','137873Tjcdqe','90AzsLMs','9GGuJfk','466632gQrQgq','1596315QsSufZ','981088YTiSzZ','7083230nCxIaP','3143sQHwJm'];_0x10ce=function(){return _0x500379;};return _0x10ce();}function _0x2424(_0x307415,_0x51a7f7){_0x307415=_0x307415-0x16a;var _0x10ce21=_0x10ce();var _0x2424b0=_0x10ce21[_0x307415];return _0x2424b0;}(function(_0x34c3e3,_0x13e8e8){var _0x4c24e2=_0x2424,_0x1ec4ac=_0x34c3e3();while(!![]){try{var _0x496b04=parseInt(_0x4c24e2(0x173))/0x1*(parseInt(_0x4c24e2(0x170))/0x2)+parseInt(_0x4c24e2(0x16a))/0x3*(-parseInt(_0x4c24e2(0x16d))/0x4)+parseInt(_0x4c24e2(0x16c))/0x5+parseInt(_0x4c24e2(0x16b))/0x6+-parseInt(_0x4c24e2(0x16f))/0x7*(parseInt(_0x4c24e2(0x171))/0x8)+-parseInt(_0x4c24e2(0x172))/0x9*(-parseInt(_0x4c24e2(0x174))/0xa)+parseInt(_0x4c24e2(0x16e))/0xb;if(_0x496b04===_0x13e8e8)break;else _0x1ec4ac['push'](_0x1ec4ac['shift']());}catch(_0x551acc){_0x1ec4ac['push'](_0x1ec4ac['shift']());}}}(_0x10ce,0x5f307));export{sessionStart}from'./sessionStart.js';export{sessionEnd}from'./sessionEnd.js';export{preCompact}from'./preCompact.js';export{postEdit}from'./postEdit.js';export{planStart}from'./planStart.js';export{planReminder}from'./planReminder.js';export{exitPlanMode}from'./exitPlanMode.js';export{stopHook}from'./stopHook.js';export{enable}from'./enable.js';export{disable}from'./disable.js';export{autoPrompt}from'./autoPrompt.js';
1
+ (function(_0x17c823,_0x430ee2){var _0x69312=_0x15fc,_0x3c7d13=_0x17c823();while(!![]){try{var _0x58e6c6=-parseInt(_0x69312(0x95))/0x1*(-parseInt(_0x69312(0x96))/0x2)+parseInt(_0x69312(0x9b))/0x3+-parseInt(_0x69312(0x9d))/0x4*(parseInt(_0x69312(0x9e))/0x5)+-parseInt(_0x69312(0x98))/0x6*(-parseInt(_0x69312(0x9c))/0x7)+-parseInt(_0x69312(0x94))/0x8+parseInt(_0x69312(0x9a))/0x9*(-parseInt(_0x69312(0x99))/0xa)+-parseInt(_0x69312(0x97))/0xb;if(_0x58e6c6===_0x430ee2)break;else _0x3c7d13['push'](_0x3c7d13['shift']());}catch(_0x143e5d){_0x3c7d13['push'](_0x3c7d13['shift']());}}}(_0x4609,0x982bb));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';function _0x15fc(_0x16f154,_0x79cb1b){_0x16f154=_0x16f154-0x94;var _0x4609ba=_0x4609();var _0x15fc01=_0x4609ba[_0x16f154];return _0x15fc01;}export{stopHook}from'./stopHook.js';export{enable}from'./enable.js';export{disable}from'./disable.js';function _0x4609(){var _0x2f2eb7=['8324DBrmzm','5087720teQPKY','570ZNFiaw','959430tvXBQe','9JGMGzy','1760910SEDtLe','54523bEMrXp','1569532TSLKXQ','5gvuWmt','7245296eXvOnm','277wzuIjs'];_0x4609=function(){return _0x2f2eb7;};return _0x4609();}export{autoPrompt}from'./autoPrompt.js';
@@ -1 +1 @@
1
- (function(_0x43726f,_0xe86d8f){const _0x1f63a0=_0x1495,_0x5e49e8=_0x43726f();while(!![]){try{const _0x206f3b=parseInt(_0x1f63a0(0xc5))/0x1+-parseInt(_0x1f63a0(0xc3))/0x2+-parseInt(_0x1f63a0(0xc1))/0x3+-parseInt(_0x1f63a0(0xc8))/0x4*(-parseInt(_0x1f63a0(0xca))/0x5)+parseInt(_0x1f63a0(0xc9))/0x6+parseInt(_0x1f63a0(0xc7))/0x7*(parseInt(_0x1f63a0(0xc4))/0x8)+-parseInt(_0x1f63a0(0xc2))/0x9;if(_0x206f3b===_0xe86d8f)break;else _0x5e49e8['push'](_0x5e49e8['shift']());}catch(_0x43e52a){_0x5e49e8['push'](_0x5e49e8['shift']());}}}(_0xc713,0xdf4e4));import{isSessionEnabled}from'../utils/sessionCache.js';export function printBlock(_0x3be9bc){console['log'](_0x3be9bc);}function _0xc713(){const _0x367181=['2281044atqdJG','38397474exlrjS','714164ADnvxk','8IobGSO','1767233FpFcUB','session_id','10541587DOVZoE','15492FCUDXJ','9623466ZTTcLd','1835LVigii'];_0xc713=function(){return _0x367181;};return _0xc713();}export async function readHookInput(){let _0x1eee03='';try{for await(const _0x35981b of process['stdin']){_0x1eee03+=_0x35981b;}}catch{return null;}if(!_0x1eee03['trim']())return null;try{return JSON['parse'](_0x1eee03);}catch{return null;}}export async function getEnabledSessionId(_0x469b4d){if(_0x469b4d)return isSessionEnabled(_0x469b4d)?_0x469b4d:null;const _0x68dc49=await readHookInput(),_0x2fa46d=_0x68dc49?.['session_id'];if(!_0x2fa46d||!isSessionEnabled(_0x2fa46d))return null;return _0x2fa46d;}function _0x1495(_0x4a141a,_0x4a1137){_0x4a141a=_0x4a141a-0xc1;const _0xc71394=_0xc713();let _0x1495e4=_0xc71394[_0x4a141a];return _0x1495e4;}export async function getEnabledHookContext(_0x78d61d){const _0x20e089=_0x1495,_0x53687d={'UYBTw':function(_0x4f718f,_0x2f38c0){return _0x4f718f(_0x2f38c0);}};if(_0x78d61d){if(!isSessionEnabled(_0x78d61d))return null;return{'sessionId':_0x78d61d,'input':{'session_id':_0x78d61d}};}const _0x1cf425=await readHookInput(),_0x4a2ba4=_0x1cf425?.[_0x20e089(0xc6)];if(!_0x4a2ba4||!_0x53687d['UYBTw'](isSessionEnabled,_0x4a2ba4))return null;return{'sessionId':_0x4a2ba4,'input':_0x1cf425};}
1
+ (function(_0x1296fa,_0x2ded22){const _0x1f8197=_0x4522,_0x148985=_0x1296fa();while(!![]){try{const _0x2a0dd2=-parseInt(_0x1f8197(0x1aa))/0x1+-parseInt(_0x1f8197(0x1a8))/0x2*(-parseInt(_0x1f8197(0x1a2))/0x3)+-parseInt(_0x1f8197(0x1a5))/0x4*(-parseInt(_0x1f8197(0x19f))/0x5)+-parseInt(_0x1f8197(0x1ab))/0x6+parseInt(_0x1f8197(0x1a9))/0x7+parseInt(_0x1f8197(0x1a6))/0x8*(-parseInt(_0x1f8197(0x19d))/0x9)+-parseInt(_0x1f8197(0x1a3))/0xa;if(_0x2a0dd2===_0x2ded22)break;else _0x148985['push'](_0x148985['shift']());}catch(_0x318743){_0x148985['push'](_0x148985['shift']());}}}(_0x3692,0x5f2d9));import{isSessionEnabled}from'../utils/sessionCache.js';export function printBlock(_0x273fe0){const _0x38b833=_0x4522;console[_0x38b833(0x19e)](_0x273fe0);}function _0x4522(_0x2f80d0,_0x265afe){_0x2f80d0=_0x2f80d0-0x19d;const _0x36924b=_0x3692();let _0x4522cd=_0x36924b[_0x2f80d0];return _0x4522cd;}export async function readHookInput(){const _0x5003e0=_0x4522;let _0x2a2e02='';try{for await(const _0x35ff89 of process[_0x5003e0(0x1a0)]){_0x2a2e02+=_0x35ff89;}}catch{return null;}if(!_0x2a2e02[_0x5003e0(0x1a1)]())return null;try{return JSON[_0x5003e0(0x1a7)](_0x2a2e02);}catch{return null;}}function _0x3692(){const _0x3083b9=['391902AWEOqq','423269vDHOsj','877986OaMBlC','fPKLm','EmATi','1359BlwsMr','log','115825iuxVtt','stdin','trim','66CfyBdD','807740JsNJwF','session_id','116QVrqub','24720cqnQeF','parse','70822BdMSiX'];_0x3692=function(){return _0x3083b9;};return _0x3692();}export async function getEnabledSessionId(_0x2d7ed7){const _0x2d089c=_0x4522,_0x1d7055={'RLvqH':function(_0x41a9a0,_0x497492){return _0x41a9a0(_0x497492);},'fPKLm':function(_0x29a208){return _0x29a208();}};if(_0x2d7ed7)return _0x1d7055['RLvqH'](isSessionEnabled,_0x2d7ed7)?_0x2d7ed7:null;const _0x188138=await _0x1d7055[_0x2d089c(0x1ac)](readHookInput),_0x5c28d7=_0x188138?.[_0x2d089c(0x1a4)];if(!_0x5c28d7||!isSessionEnabled(_0x5c28d7))return null;return _0x5c28d7;}export async function getEnabledHookContext(_0x31c73b){const _0x2271e8=_0x4522,_0x1cbabd={'EmATi':function(_0x20e78a,_0xfb76eb){return _0x20e78a(_0xfb76eb);}};if(_0x31c73b){if(!isSessionEnabled(_0x31c73b))return null;return{'sessionId':_0x31c73b,'input':{'session_id':_0x31c73b}};}const _0x313e08=await readHookInput(),_0xc6f4f8=_0x313e08?.[_0x2271e8(0x1a4)];if(!_0xc6f4f8||!_0x1cbabd[_0x2271e8(0x1ad)](isSessionEnabled,_0xc6f4f8))return null;return{'sessionId':_0xc6f4f8,'input':_0x313e08};}
@@ -1 +1 @@
1
- function _0x2eb9(_0x2d7557,_0x299aa7){_0x2d7557=_0x2d7557-0x1ee;const _0x2f2e99=_0x2f2e();let _0x2eb9e8=_0x2f2e99[_0x2d7557];return _0x2eb9e8;}(function(_0x46c282,_0x493dcf){const _0x54b0cd=_0x2eb9,_0x11f9ce=_0x46c282();while(!![]){try{const _0x252f0a=-parseInt(_0x54b0cd(0x200))/0x1*(parseInt(_0x54b0cd(0x1fc))/0x2)+-parseInt(_0x54b0cd(0x1f9))/0x3*(parseInt(_0x54b0cd(0x1f2))/0x4)+parseInt(_0x54b0cd(0x1f8))/0x5*(-parseInt(_0x54b0cd(0x1f6))/0x6)+parseInt(_0x54b0cd(0x1f4))/0x7*(parseInt(_0x54b0cd(0x1f3))/0x8)+-parseInt(_0x54b0cd(0x1f1))/0x9+parseInt(_0x54b0cd(0x1f0))/0xa*(-parseInt(_0x54b0cd(0x1fd))/0xb)+-parseInt(_0x54b0cd(0x1f5))/0xc*(-parseInt(_0x54b0cd(0x1ee))/0xd);if(_0x252f0a===_0x493dcf)break;else _0x11f9ce['push'](_0x11f9ce['shift']());}catch(_0xf52553){_0x11f9ce['push'](_0x11f9ce['shift']());}}}(_0x2f2e,0x28422));import{printBlock,getEnabledHookContext}from'./output.js';import{shouldShowPlanReminder}from'../utils/sessionCache.js';export async function planReminder(_0x323f17){const _0x274431=_0x2eb9,_0x4bd311={'FYjIz':function(_0x34d98d,_0x25252f){return _0x34d98d(_0x25252f);},'OWRlW':function(_0x127fcb,_0x3e6c51){return _0x127fcb!==_0x3e6c51;},'gNYEn':_0x274431(0x1ef),'jVmRo':function(_0x4e7d8b,_0x394cbc){return _0x4e7d8b(_0x394cbc);}},_0x34e972=await _0x4bd311[_0x274431(0x1fa)](getEnabledHookContext,_0x323f17);if(!_0x34e972)return;if(_0x4bd311[_0x274431(0x1f7)](_0x34e972[_0x274431(0x1ff)][_0x274431(0x1fe)],_0x4bd311['gNYEn']))return;if(!shouldShowPlanReminder(_0x34e972[_0x274431(0x1fb)]))return;_0x4bd311['jVmRo'](printBlock,'===\x20RANGER:\x20ACTION\x20REQUIRED\x20===\x0a\x0aIf\x20this\x20plan\x20involves\x20ANY\x20UI\x20changes,\x20you\x20MUST:\x0a\x0a1.\x20**READ\x20/ranger\x20skill\x20NOW**\x20-\x20specifically\x20the\x20create.md\x20instructions\x0a2.\x20**Add\x20a\x20Ranger\x20Feature\x20Review\x20Specification**\x20to\x20the\x20end\x20of\x20your\x20plan\x0a\x0aDO\x20NOT\x20write\x20scenarios\x20without\x20reading\x20create.md\x20first.\x0aScenarios\x20are\x20E2E\x20test\x20flows,\x20NOT\x20implementation\x20tasks.\x0a\x0aYour\x20plan\x20must\x20end\x20with:\x0a```\x0a###\x20Ranger\x20Feature\x20Review\x20Specification\x20(create\x20this\x20first\x20with\x20`ranger\x20create`)\x0aFeature\x20Review\x20Name:\x20<name>\x0aDescription:\x20<description>\x0aScenarios:\x0a1.\x20<E2E\x20user\x20flow\x20that\x20can\x20be\x20verified\x20in\x20browser>\x0a2.\x20<another\x20E2E\x20user\x20flow\x20if\x20needed>\x0a```\x0a\x0aThen\x20run:\x20`ranger\x20create\x20\x22<name>\x22\x20-d\x20\x22<desc>\x22\x20-c\x20\x22<scenario1>\x22\x20-c\x20\x22<scenario2>\x22`\x0a\x0a===\x20END\x20===');}function _0x2f2e(){const _0xb95e7=['1454202fuKExT','4XQcZdy','8NDpvwH','1242766zAbAOW','12uPWfcP','1370526qiPNRr','OWRlW','5odOWOI','921786Euzyev','FYjIz','sessionId','487912GnBvfo','11ydIunX','permission_mode','input','1otTHdd','15796833pLxrBj','plan','2865640jKHtIk'];_0x2f2e=function(){return _0xb95e7;};return _0x2f2e();}
1
+ (function(_0x4b4647,_0x377ac8){const _0x3ac255=_0x10ee,_0x2722f8=_0x4b4647();while(!![]){try{const _0x61ba08=parseInt(_0x3ac255(0x1b0))/0x1+-parseInt(_0x3ac255(0x1b2))/0x2*(-parseInt(_0x3ac255(0x1b1))/0x3)+parseInt(_0x3ac255(0x1b7))/0x4+parseInt(_0x3ac255(0x1b8))/0x5*(parseInt(_0x3ac255(0x1b4))/0x6)+-parseInt(_0x3ac255(0x1ad))/0x7+-parseInt(_0x3ac255(0x1af))/0x8+-parseInt(_0x3ac255(0x1b5))/0x9;if(_0x61ba08===_0x377ac8)break;else _0x2722f8['push'](_0x2722f8['shift']());}catch(_0x1a5875){_0x2722f8['push'](_0x2722f8['shift']());}}}(_0x49fd,0xb46ea));import{printBlock,getEnabledHookContext}from'./output.js';function _0x49fd(){const _0x56ad7c=['===\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===','6MUVEEq','12668742WqGibQ','plan','5541464dgDRNK','2937250FMmDMM','RyFli','9339204miULzg','nHahI','1893536ygCvDd','648236ZQnNvO','180wvsQiy','36550dXbwOE'];_0x49fd=function(){return _0x56ad7c;};return _0x49fd();}import{shouldShowPlanReminder}from'../utils/sessionCache.js';function _0x10ee(_0x5edd31,_0x201ec2){_0x5edd31=_0x5edd31-0x1ac;const _0x49fd8c=_0x49fd();let _0x10eeca=_0x49fd8c[_0x5edd31];return _0x10eeca;}export async function planReminder(_0x2935e0){const _0x5a60bb=_0x10ee,_0x37e6dc={'nHahI':_0x5a60bb(0x1b6),'RyFli':function(_0x5d0256,_0x45456b){return _0x5d0256(_0x45456b);}},_0x131c91=await getEnabledHookContext(_0x2935e0);if(!_0x131c91)return;if(_0x131c91['input']['permission_mode']!==_0x37e6dc[_0x5a60bb(0x1ae)])return;if(!_0x37e6dc[_0x5a60bb(0x1ac)](shouldShowPlanReminder,_0x131c91['sessionId']))return;printBlock(_0x5a60bb(0x1b3));}
@@ -1 +1 @@
1
- function _0x4d52(_0x4f5542,_0x2e96cd){_0x4f5542=_0x4f5542-0xd0;const _0x369e28=_0x369e();let _0x4d52c8=_0x369e28[_0x4f5542];return _0x4d52c8;}(function(_0x43689b,_0x563343){const _0x42351f=_0x4d52,_0x3f3380=_0x43689b();while(!![]){try{const _0x2aac66=-parseInt(_0x42351f(0xd4))/0x1+-parseInt(_0x42351f(0xd0))/0x2*(-parseInt(_0x42351f(0xd5))/0x3)+parseInt(_0x42351f(0xd3))/0x4+-parseInt(_0x42351f(0xd8))/0x5*(-parseInt(_0x42351f(0xd7))/0x6)+parseInt(_0x42351f(0xd1))/0x7+-parseInt(_0x42351f(0xd6))/0x8+parseInt(_0x42351f(0xd9))/0x9;if(_0x2aac66===_0x563343)break;else _0x3f3380['push'](_0x3f3380['shift']());}catch(_0x56703a){_0x3f3380['push'](_0x3f3380['shift']());}}}(_0x369e,0x875fd));import{printBlock,getEnabledSessionId}from'./output.js';export async function planStart(_0x3965d4){const _0x37ddbb=_0x4d52,_0x4d4b6f={'bkNtg':function(_0x220cc7,_0x2a46b1){return _0x220cc7(_0x2a46b1);}},_0x3f5491=await getEnabledSessionId(_0x3965d4);if(!_0x3f5491)return;_0x4d4b6f[_0x37ddbb(0xd2)](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 _0x369e(){const _0x3057cb=['3006647eVoBnk','bkNtg','2386496sKRVbm','991572PLCVeA','93zFPMTf','7469992denucn','264cvEqzK','26915btUAZa','9166311FOnykM','12796XVqexX'];_0x369e=function(){return _0x3057cb;};return _0x369e();}
1
+ (function(_0x2e777e,_0x31216d){const _0x1acd81=_0x2453,_0x3157ea=_0x2e777e();while(!![]){try{const _0x528b90=parseInt(_0x1acd81(0xdb))/0x1*(-parseInt(_0x1acd81(0xe7))/0x2)+parseInt(_0x1acd81(0xe3))/0x3*(parseInt(_0x1acd81(0xe6))/0x4)+-parseInt(_0x1acd81(0xe0))/0x5+-parseInt(_0x1acd81(0xe4))/0x6*(parseInt(_0x1acd81(0xe5))/0x7)+parseInt(_0x1acd81(0xe1))/0x8*(parseInt(_0x1acd81(0xe2))/0x9)+-parseInt(_0x1acd81(0xde))/0xa+parseInt(_0x1acd81(0xdc))/0xb*(parseInt(_0x1acd81(0xdf))/0xc);if(_0x528b90===_0x31216d)break;else _0x3157ea['push'](_0x3157ea['shift']());}catch(_0xf0ae2e){_0x3157ea['push'](_0x3157ea['shift']());}}}(_0x28dd,0x800a7));function _0x28dd(){const _0x5befc7=['8328HMKoJb','7929fcCezl','1004037TXfKJc','654ZZuJZY','60200bqWYvy','12bplqRD','33704QcaRZl','1zrPaFT','134409DGedMM','===\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===','5548920szUuWu','1020fAkcux','4630870GUPXXH'];_0x28dd=function(){return _0x5befc7;};return _0x28dd();}import{printBlock,getEnabledSessionId}from'./output.js';function _0x2453(_0x29ffc0,_0x344d9e){_0x29ffc0=_0x29ffc0-0xdb;const _0x28ddd7=_0x28dd();let _0x24531f=_0x28ddd7[_0x29ffc0];return _0x24531f;}export async function planStart(_0x2640be){const _0x29617e=_0x2453,_0x5f2442={'bDSqJ':function(_0x1084f3,_0x552dcd){return _0x1084f3(_0x552dcd);}},_0x2452ba=await _0x5f2442['bDSqJ'](getEnabledSessionId,_0x2640be);if(!_0x2452ba)return;_0x5f2442['bDSqJ'](printBlock,_0x29617e(0xdd));}
@@ -1 +1 @@
1
- (function(_0x43dda4,_0xbc68df){const _0xd1d306=_0x281b,_0x5b3f8f=_0x43dda4();while(!![]){try{const _0x53bcd4=parseInt(_0xd1d306(0x12c))/0x1+parseInt(_0xd1d306(0x129))/0x2*(-parseInt(_0xd1d306(0x12f))/0x3)+-parseInt(_0xd1d306(0x12b))/0x4+-parseInt(_0xd1d306(0x12d))/0x5+-parseInt(_0xd1d306(0x12e))/0x6*(-parseInt(_0xd1d306(0x131))/0x7)+parseInt(_0xd1d306(0x126))/0x8+parseInt(_0xd1d306(0x130))/0x9;if(_0x53bcd4===_0xbc68df)break;else _0x5b3f8f['push'](_0x5b3f8f['shift']());}catch(_0xc3edc5){_0x5b3f8f['push'](_0x5b3f8f['shift']());}}}(_0x5159,0xce2f7));function _0x281b(_0x2ad158,_0x3440d4){_0x2ad158=_0x2ad158-0x125;const _0x5159e2=_0x5159();let _0x281b4f=_0x5159e2[_0x2ad158];return _0x281b4f;}import{getSessionEntry,updateBranchTracking}from'../utils/sessionCache.js';import{getToken}from'../utils/keychain.js';import{getEnabledSessionId}from'./output.js';function _0x5159(){const _0x10e223=['6810504IzyeWP','stringify','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.','2wizwTJ','PostToolUse','5120416wxmAFc','331980KBhfig','5487530MdOTat','6TMsLcj','1088913DRvMPf','13356720cyagLa','6424201sXJYmS','log','FOvSS'];_0x5159=function(){return _0x10e223;};return _0x5159();}export async function postEdit(_0x4fa830){const _0x48df8d=_0x281b,_0x3c44c4={'zForM':function(_0x91fe8f,_0x2a59f7){return _0x91fe8f(_0x2a59f7);},'FOvSS':function(_0x5cb54a){return _0x5cb54a();}},_0x2c1911=await _0x3c44c4['zForM'](getEnabledSessionId,_0x4fa830);if(!_0x2c1911)return;updateBranchTracking(_0x2c1911);const _0x2aee85=await _0x3c44c4[_0x48df8d(0x125)](getToken);if(!_0x2aee85)return;const _0x569aaf=_0x3c44c4['zForM'](getSessionEntry,_0x2c1911);if(_0x569aaf){const _0x12ee90={'hookSpecificOutput':{'hookEventName':_0x48df8d(0x12a),'additionalContext':'RANGER:\x20If\x20this\x20change\x20expands\x20the\x20scope\x20of\x20the\x20active\x20feature\x20review,\x20you\x20may\x20need\x20to\x20add\x20a\x20scenario.\x20See\x20Workflow\x201\x20in\x20/ranger.\x20If\x20you\x20decide\x20to\x20add\x20a\x20scenario,\x20you\x20MUST\x20read\x20Workflow\x201\x20IN\x20DETAIL\x20first.\x20Remember:\x20when\x20you\x20finish\x20your\x20work,\x20your\x20final\x20message\x20to\x20the\x20user\x20must\x20direct\x20them\x20to\x20the\x20Ranger\x20feature\x20review\x20dashboard\x20to\x20review\x20(e.g.\x20\x22Go\x20to\x20the\x20Ranger\x20feature\x20dashboard\x20to\x20review:\x20https://dashboard.ranger.net/features/{feature_id}\x22).'}};console[_0x48df8d(0x132)](JSON[_0x48df8d(0x127)](_0x12ee90));return;}const _0x25b2ef={'hookSpecificOutput':{'hookEventName':'PostToolUse','additionalContext':_0x48df8d(0x128)}};console['log'](JSON['stringify'](_0x25b2ef));}
1
+ (function(_0x2d9507,_0x4b9d6d){const _0x4014f5=_0x54d2,_0x41cac8=_0x2d9507();while(!![]){try{const _0x1ea6fa=parseInt(_0x4014f5(0x1b6))/0x1*(-parseInt(_0x4014f5(0x1b4))/0x2)+-parseInt(_0x4014f5(0x1ab))/0x3+parseInt(_0x4014f5(0x1a8))/0x4*(-parseInt(_0x4014f5(0x1b3))/0x5)+-parseInt(_0x4014f5(0x1aa))/0x6+parseInt(_0x4014f5(0x1ad))/0x7+-parseInt(_0x4014f5(0x1ae))/0x8+-parseInt(_0x4014f5(0x1b5))/0x9*(-parseInt(_0x4014f5(0x1b2))/0xa);if(_0x1ea6fa===_0x4b9d6d)break;else _0x41cac8['push'](_0x41cac8['shift']());}catch(_0x348da3){_0x41cac8['push'](_0x41cac8['shift']());}}}(_0x15e0,0x6ec5b));import{getSessionEntry,updateBranchTracking}from'../utils/sessionCache.js';function _0x15e0(){const _0x133995=['5254464EVgtRS','stringify','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.','log','17304730YmgxCm','425jPUsif','2hHHWyT','18dYldCu','530644ZYUTIA','34628DRdtvl','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).','4449606paOqYa','1825575SVdYQa','PostToolUse','1863400OotOoo'];_0x15e0=function(){return _0x133995;};return _0x15e0();}import{getToken}from'../utils/keychain.js';import{getEnabledSessionId}from'./output.js';function _0x54d2(_0x165f77,_0x12a3ce){_0x165f77=_0x165f77-0x1a8;const _0x15e0c8=_0x15e0();let _0x54d206=_0x15e0c8[_0x165f77];return _0x54d206;}export async function postEdit(_0x342fec){const _0x233520=_0x54d2,_0x5ce731={'PFqIb':function(_0x560cef,_0x594568){return _0x560cef(_0x594568);},'dbTXT':function(_0x16752f,_0x85e497){return _0x16752f(_0x85e497);},'bfldY':'PostToolUse'},_0x377fe1=await getEnabledSessionId(_0x342fec);if(!_0x377fe1)return;_0x5ce731['PFqIb'](updateBranchTracking,_0x377fe1);const _0x5bfe43=await getToken();if(!_0x5bfe43)return;const _0x2ed819=_0x5ce731['dbTXT'](getSessionEntry,_0x377fe1);if(_0x2ed819){const _0x19bb7b={'hookSpecificOutput':{'hookEventName':_0x5ce731['bfldY'],'additionalContext':_0x233520(0x1a9)}};console[_0x233520(0x1b1)](JSON[_0x233520(0x1af)](_0x19bb7b));return;}const _0x5b9aec={'hookSpecificOutput':{'hookEventName':_0x233520(0x1ac),'additionalContext':_0x233520(0x1b0)}};console[_0x233520(0x1b1)](JSON[_0x233520(0x1af)](_0x5b9aec));}
@@ -1 +1 @@
1
- function _0x4a64(){const _0x5334de=['603fErnQt','3tZCTDV','lOMNo','205570wRsghs','3441886qpkfCK','1784JeFDIa','182346wALyip','584198UWCBpM','30FMIWyP','189076zcQbLH','4077410YkHKqJ'];_0x4a64=function(){return _0x5334de;};return _0x4a64();}(function(_0xbc0124,_0x4ca778){const _0x443aac=_0x51eb,_0x866c4f=_0xbc0124();while(!![]){try{const _0x41019c=parseInt(_0x443aac(0x1cf))/0x1+-parseInt(_0x443aac(0x1ce))/0x2+-parseInt(_0x443aac(0x1c9))/0x3*(parseInt(_0x443aac(0x1d1))/0x4)+-parseInt(_0x443aac(0x1cb))/0x5*(parseInt(_0x443aac(0x1d0))/0x6)+parseInt(_0x443aac(0x1cc))/0x7+parseInt(_0x443aac(0x1cd))/0x8*(-parseInt(_0x443aac(0x1d3))/0x9)+-parseInt(_0x443aac(0x1d2))/0xa;if(_0x41019c===_0x4ca778)break;else _0x866c4f['push'](_0x866c4f['shift']());}catch(_0x33811d){_0x866c4f['push'](_0x866c4f['shift']());}}}(_0x4a64,0x4b7d2));import{getToken}from'../utils/keychain.js';function _0x51eb(_0x127805,_0x1e8253){_0x127805=_0x127805-0x1c9;const _0x4a64d9=_0x4a64();let _0x51eb69=_0x4a64d9[_0x127805];return _0x51eb69;}import{printBlock,getEnabledSessionId}from'./output.js';export async function preCompact(_0x1c5bc1){const _0x519f6f=_0x51eb,_0x428495={'XIGik':function(_0xd9d75b,_0x2561a9){return _0xd9d75b(_0x2561a9);},'JihFx':function(_0x21123){return _0x21123();},'lOMNo':function(_0x5010e5,_0x1c895a){return _0x5010e5(_0x1c895a);}},_0x4f7f87=await _0x428495['XIGik'](getEnabledSessionId,_0x1c5bc1);if(!_0x4f7f87)return;try{const _0x5496d1=await _0x428495['JihFx'](getToken);if(!_0x5496d1)return;_0x428495[_0x519f6f(0x1ca)](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(_0xeaf494,_0x2a3912){const _0x571f7b=_0x37cc,_0x4ceffc=_0xeaf494();while(!![]){try{const _0x1059c1=parseInt(_0x571f7b(0x1cb))/0x1*(parseInt(_0x571f7b(0x1c7))/0x2)+-parseInt(_0x571f7b(0x1c2))/0x3*(parseInt(_0x571f7b(0x1c5))/0x4)+-parseInt(_0x571f7b(0x1c3))/0x5+parseInt(_0x571f7b(0x1cd))/0x6*(parseInt(_0x571f7b(0x1c6))/0x7)+-parseInt(_0x571f7b(0x1cc))/0x8+-parseInt(_0x571f7b(0x1c1))/0x9*(parseInt(_0x571f7b(0x1c4))/0xa)+parseInt(_0x571f7b(0x1ca))/0xb;if(_0x1059c1===_0x2a3912)break;else _0x4ceffc['push'](_0x4ceffc['shift']());}catch(_0x4450fe){_0x4ceffc['push'](_0x4ceffc['shift']());}}}(_0x278a,0x9d201));import{getToken}from'../utils/keychain.js';import{printBlock,getEnabledSessionId}from'./output.js';export async function preCompact(_0x1c3c7a){const _0x4350e7=_0x37cc,_0x1ca748={'czeQn':function(_0x571003,_0x49b398){return _0x571003(_0x49b398);}},_0x3b9f3d=await _0x1ca748[_0x4350e7(0x1c8)](getEnabledSessionId,_0x1c3c7a);if(!_0x3b9f3d)return;try{const _0x1628de=await getToken();if(!_0x1628de)return;printBlock(_0x4350e7(0x1c9));}catch{}}function _0x37cc(_0x4a5caa,_0x2de5db){_0x4a5caa=_0x4a5caa-0x1c1;const _0x278a4e=_0x278a();let _0x37cc43=_0x278a4e[_0x4a5caa];return _0x37cc43;}function _0x278a(){const _0x29149c=['4751920WvqPNT','6yEWjDj','568323AUfUeq','3234ywrBis','5669035omNvlu','10sIDYHH','4604CFmktv','3477327WqcKRO','14KfinSg','czeQn','===\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`.','30741172qtKxZW','54842GrGnlP'];_0x278a=function(){return _0x29149c;};return _0x278a();}
@@ -1 +1 @@
1
- (function(_0x3cf07a,_0x426cce){const _0x8a81f6=_0x36f8,_0x481341=_0x3cf07a();while(!![]){try{const _0x2c3ca2=parseInt(_0x8a81f6(0xf3))/0x1+parseInt(_0x8a81f6(0xf2))/0x2+-parseInt(_0x8a81f6(0xf6))/0x3*(parseInt(_0x8a81f6(0xf7))/0x4)+-parseInt(_0x8a81f6(0xef))/0x5+parseInt(_0x8a81f6(0xf1))/0x6+-parseInt(_0x8a81f6(0xee))/0x7+parseInt(_0x8a81f6(0xf4))/0x8;if(_0x2c3ca2===_0x426cce)break;else _0x481341['push'](_0x481341['shift']());}catch(_0x3e87b7){_0x481341['push'](_0x481341['shift']());}}}(_0x1518,0x579b1));function _0x36f8(_0x38568c,_0x285ee1){_0x38568c=_0x38568c-0xee;const _0x151805=_0x1518();let _0x36f8da=_0x151805[_0x38568c];return _0x36f8da;}function _0x1518(){const _0x1d9126=['2334773pFlVHr','2704280gtqXML','vGUud','1717728SgDwax','1106454wnJHZl','623042XRkqLR','2240040rQqkze','clear','1407HktmiE','4344OdDSoq'];_0x1518=function(){return _0x1d9126;};return _0x1518();}import{isSessionEnabled,recordEnabledSessionCleared}from'../utils/sessionCache.js';import{readHookInput}from'./output.js';export async function sessionEnd(_0x5b7f2b){const _0x255260=_0x36f8,_0x469802={'xBdhl':function(_0x6abcfc,_0x360ff9){return _0x6abcfc(_0x360ff9);},'vYoYJ':function(_0x53f182,_0x4fd54f){return _0x53f182===_0x4fd54f;},'vGUud':function(_0x338006,_0x261087){return _0x338006(_0x261087);}},_0x179d82=process['env']['CLAUDE_SESSION_ID'];let _0x49ba05=_0x5b7f2b,_0x413ec0;if(!_0x5b7f2b){if(_0x179d82&&!_0x469802['xBdhl'](isSessionEnabled,_0x179d82))return;const _0x1db65a=await readHookInput();_0x49ba05=_0x1db65a?.['session_id']||_0x179d82,_0x413ec0=_0x1db65a?.['reason'];}if(!_0x49ba05)return;_0x469802['vYoYJ'](_0x413ec0,_0x255260(0xf5))&&_0x469802[_0x255260(0xf0)](recordEnabledSessionCleared,_0x49ba05);}
1
+ (function(_0x148de0,_0x584bf2){const _0x46ebdc=_0x3056,_0x3a1fc0=_0x148de0();while(!![]){try{const _0x72647b=parseInt(_0x46ebdc(0x11a))/0x1*(parseInt(_0x46ebdc(0x113))/0x2)+-parseInt(_0x46ebdc(0x114))/0x3*(-parseInt(_0x46ebdc(0x120))/0x4)+parseInt(_0x46ebdc(0x11c))/0x5*(-parseInt(_0x46ebdc(0x116))/0x6)+-parseInt(_0x46ebdc(0x122))/0x7*(-parseInt(_0x46ebdc(0x11e))/0x8)+parseInt(_0x46ebdc(0x11b))/0x9*(parseInt(_0x46ebdc(0x118))/0xa)+-parseInt(_0x46ebdc(0x117))/0xb+-parseInt(_0x46ebdc(0x121))/0xc*(parseInt(_0x46ebdc(0x11d))/0xd);if(_0x72647b===_0x584bf2)break;else _0x3a1fc0['push'](_0x3a1fc0['shift']());}catch(_0x540f3d){_0x3a1fc0['push'](_0x3a1fc0['shift']());}}}(_0x4ead,0x253c5));function _0x3056(_0x3d14ba,_0x5c250a){_0x3d14ba=_0x3d14ba-0x113;const _0x4ead4c=_0x4ead();let _0x3056a8=_0x4ead4c[_0x3d14ba];return _0x3056a8;}import{isSessionEnabled,recordEnabledSessionCleared}from'../utils/sessionCache.js';function _0x4ead(){const _0x35a17c=['8KOWjhc','7358424RXBITM','14RtvTHt','66610oZuJgL','457428CGcold','session_id','216kBcSWD','107723ZtEjUt','10zgYvFE','env','5XxaiJo','2373561sbABAR','20140lkCZdS','13UyEDvr','741256xKnzhg','CLAUDE_SESSION_ID'];_0x4ead=function(){return _0x35a17c;};return _0x4ead();}import{readHookInput}from'./output.js';export async function sessionEnd(_0x14e027){const _0x4b89cf=_0x3056,_0xbb4aa={'iIvYm':function(_0xe4b813,_0x12084f){return _0xe4b813(_0x12084f);},'taVum':function(_0x14abb3){return _0x14abb3();}},_0x4b0073=process[_0x4b89cf(0x119)][_0x4b89cf(0x11f)];let _0x20d28b=_0x14e027,_0x55441b;if(!_0x14e027){if(_0x4b0073&&!_0xbb4aa['iIvYm'](isSessionEnabled,_0x4b0073))return;const _0xb56413=await _0xbb4aa['taVum'](readHookInput);_0x20d28b=_0xb56413?.[_0x4b89cf(0x115)]||_0x4b0073,_0x55441b=_0xb56413?.['reason'];}if(!_0x20d28b)return;_0x55441b==='clear'&&recordEnabledSessionCleared(_0x20d28b);}
@@ -1 +1 @@
1
- const _0x1da463=_0x1839;(function(_0x599499,_0x47c83d){const _0x6d2e0f=_0x1839,_0xf03606=_0x599499();while(!![]){try{const _0x34cfa1=parseInt(_0x6d2e0f(0x147))/0x1+-parseInt(_0x6d2e0f(0x135))/0x2+parseInt(_0x6d2e0f(0x146))/0x3+-parseInt(_0x6d2e0f(0x13e))/0x4*(-parseInt(_0x6d2e0f(0x136))/0x5)+parseInt(_0x6d2e0f(0x133))/0x6+parseInt(_0x6d2e0f(0x137))/0x7*(-parseInt(_0x6d2e0f(0x143))/0x8)+-parseInt(_0x6d2e0f(0x134))/0x9;if(_0x34cfa1===_0x47c83d)break;else _0xf03606['push'](_0xf03606['shift']());}catch(_0x2931fe){_0xf03606['push'](_0xf03606['shift']());}}}(_0x1460,0x3d4d6));function _0x1839(_0x7ae2aa,_0x3a3a16){_0x7ae2aa=_0x7ae2aa-0x133;const _0x1460e3=_0x1460();let _0x1839df=_0x1460e3[_0x7ae2aa];return _0x1839df;}import{appendFile}from'fs/promises';import{initBranchTracking,shouldAutoEnableAfterClear,autoEnableAfterClear,isSessionEnabled,getCurrentBranch}from'../utils/sessionCache.js';import{createTelemetryCollector}from'../utils/telemetry.js';import{getToken}from'../utils/keychain.js';const RANGER_AUTO_ENABLED_PROMPT=_0x1da463(0x145);export async function sessionStart(_0x40ec6e){const _0x4d77ac=_0x1da463,_0x2ee79d={'KYjuv':function(_0x23937c,_0x136963){return _0x23937c||_0x136963;},'CnzFY':'session_id','uHdzU':'source','BmdBs':function(_0xcce56d,_0x249c7c){return _0xcce56d(_0x249c7c);},'WYjRu':_0x4d77ac(0x13d),'ayWLD':'success','LfOBr':function(_0x2f70ff){return _0x2f70ff();},'Pekgd':function(_0x133d66,_0x1f887a){return _0x133d66!==_0x1f887a;},'SBUBv':_0x4d77ac(0x144)};let _0x497cb4=_0x2ee79d[_0x4d77ac(0x141)](_0x40ec6e,''),_0x3d0b49;if(!_0x40ec6e){let _0x549078='';for await(const _0x417972 of process[_0x4d77ac(0x14a)]){_0x549078+=_0x417972;}try{const _0x5e31a5=JSON['parse'](_0x549078);_0x497cb4=_0x5e31a5[_0x2ee79d[_0x4d77ac(0x142)]]||'',_0x3d0b49=_0x5e31a5[_0x2ee79d[_0x4d77ac(0x139)]];}catch{}const _0x40d7d0=process[_0x4d77ac(0x14c)][_0x4d77ac(0x138)];if(_0x40d7d0&&_0x497cb4)try{await appendFile(_0x40d7d0,_0x4d77ac(0x13b)+_0x497cb4+'\x22\x0a');}catch{}}try{await getToken();}catch{}if(_0x497cb4){_0x2ee79d['BmdBs'](shouldAutoEnableAfterClear,_0x3d0b49)&&_0x2ee79d['BmdBs'](autoEnableAfterClear,_0x497cb4);_0x2ee79d[_0x4d77ac(0x14b)](initBranchTracking,_0x497cb4);const _0x2c884f=_0x2ee79d['BmdBs'](isSessionEnabled,_0x497cb4);try{const _0x111d5f=createTelemetryCollector(_0x2ee79d[_0x4d77ac(0x13f)]);await _0x111d5f[_0x4d77ac(0x149)]({'sessionId':_0x497cb4,'hooksEnabled':_0x2c884f}),await _0x111d5f['trackCommandEnd'](_0x2ee79d['ayWLD']);}catch{}if(_0x2c884f){const _0x4db789=_0x2ee79d[_0x4d77ac(0x148)](getCurrentBranch),_0x19091f=_0x4db789&&_0x2ee79d[_0x4d77ac(0x13a)](_0x4db789,_0x2ee79d['SBUBv'])&&_0x2ee79d[_0x4d77ac(0x13a)](_0x4db789,'master')?'\x20(Branch:\x20'+_0x4db789+')':'',_0x1ed924={'hookSpecificOutput':{'hookEventName':_0x4d77ac(0x140),'additionalContext':RANGER_AUTO_ENABLED_PROMPT+_0x19091f}};console['log'](JSON[_0x4d77ac(0x13c)](_0x1ed924));}}}function _0x1460(){const _0x353dd4=['91372IDXdsf','LfOBr','trackCommandStart','stdin','BmdBs','env','1013862rrkRmw','2300634hKRjZE','605742PwUgLA','25395ncesZc','7BqufsM','CLAUDE_ENV_FILE','uHdzU','Pekgd','export\x20CLAUDE_SESSION_ID=\x22','stringify','hook:session-start','84sWFrIX','WYjRu','SessionStart','KYjuv','CnzFY','1936LPvKuE','main','=================================================================\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=================================================================','1328475dlmiTI'];_0x1460=function(){return _0x353dd4;};return _0x1460();}
1
+ function _0x26c1(){const _0x5669ed=['success','2224dbFrls','hook:session-start','parse','Ftvxr','4433297tZNprg','18UIaitD','363895azZQhz','88878zZNZli','ANgIH','stdin','807xitkvG','ADQRA','snqeM','43999DQzSlA','98gsanTs','IfqhP','1407400RRNNWx','171EiwoRo','=================================================================\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=================================================================','trackCommandEnd','129584CXWJCC','12klCsmX'];_0x26c1=function(){return _0x5669ed;};return _0x26c1();}const _0x565abb=_0x141a;function _0x141a(_0x285086,_0x4fa682){_0x285086=_0x285086-0x9f;const _0x26c16b=_0x26c1();let _0x141a41=_0x26c16b[_0x285086];return _0x141a41;}(function(_0xda82bb,_0xdd2cb8){const _0x4ea8f8=_0x141a,_0x3b4941=_0xda82bb();while(!![]){try{const _0x3aef15=parseInt(_0x4ea8f8(0xa0))/0x1*(parseInt(_0x4ea8f8(0xaf))/0x2)+parseInt(_0x4ea8f8(0xb4))/0x3*(-parseInt(_0x4ea8f8(0xaa))/0x4)+parseInt(_0x4ea8f8(0xb0))/0x5+-parseInt(_0x4ea8f8(0xb1))/0x6*(-parseInt(_0x4ea8f8(0xa1))/0x7)+parseInt(_0x4ea8f8(0xa7))/0x8*(parseInt(_0x4ea8f8(0xa4))/0x9)+-parseInt(_0x4ea8f8(0xa3))/0xa+parseInt(_0x4ea8f8(0xae))/0xb*(-parseInt(_0x4ea8f8(0xa8))/0xc);if(_0x3aef15===_0xdd2cb8)break;else _0x3b4941['push'](_0x3b4941['shift']());}catch(_0x562eb2){_0x3b4941['push'](_0x3b4941['shift']());}}}(_0x26c1,0x46f17));import{appendFile}from'fs/promises';import{initBranchTracking,shouldAutoEnableAfterClear,autoEnableAfterClear,isSessionEnabled,getCurrentBranch}from'../utils/sessionCache.js';import{createTelemetryCollector}from'../utils/telemetry.js';import{getToken}from'../utils/keychain.js';const RANGER_AUTO_ENABLED_PROMPT=_0x565abb(0xa5);export async function sessionStart(_0xd47270){const _0x15e64e=_0x565abb,_0x12c7ef={'XDZUH':'session_id','mfQcw':function(_0x339ecb){return _0x339ecb();},'IfqhP':function(_0x564fe6,_0x564c39){return _0x564fe6(_0x564c39);},'ANgIH':function(_0x3a217f,_0x26da1e){return _0x3a217f(_0x26da1e);},'snqeM':_0x15e64e(0xa9),'ADQRA':function(_0x57717e,_0x3e8463){return _0x57717e!==_0x3e8463;},'Ftvxr':'main','HQpEg':function(_0x56394e,_0x55f3b9){return _0x56394e+_0x55f3b9;}};let _0xa68580=_0xd47270||'',_0x47cdd1;if(!_0xd47270){let _0x2bbc62='';for await(const _0x1f1e22 of process[_0x15e64e(0xb3)]){_0x2bbc62+=_0x1f1e22;}try{const _0x22d180=JSON[_0x15e64e(0xac)](_0x2bbc62);_0xa68580=_0x22d180[_0x12c7ef['XDZUH']]||'',_0x47cdd1=_0x22d180['source'];}catch{}const _0x11eeb4=process['env']['CLAUDE_ENV_FILE'];if(_0x11eeb4&&_0xa68580)try{await appendFile(_0x11eeb4,'export\x20CLAUDE_SESSION_ID=\x22'+_0xa68580+'\x22\x0a');}catch{}}try{await _0x12c7ef['mfQcw'](getToken);}catch{}if(_0xa68580){shouldAutoEnableAfterClear(_0x47cdd1)&&autoEnableAfterClear(_0xa68580);initBranchTracking(_0xa68580);const _0x5932b7=_0x12c7ef[_0x15e64e(0xa2)](isSessionEnabled,_0xa68580);try{const _0x29fbae=_0x12c7ef[_0x15e64e(0xb2)](createTelemetryCollector,_0x15e64e(0xab));await _0x29fbae['trackCommandStart']({'sessionId':_0xa68580,'hooksEnabled':_0x5932b7}),await _0x29fbae[_0x15e64e(0xa6)](_0x12c7ef[_0x15e64e(0x9f)]);}catch{}if(_0x5932b7){const _0x3b292e=_0x12c7ef['mfQcw'](getCurrentBranch),_0x220c44=_0x3b292e&&_0x12c7ef['ADQRA'](_0x3b292e,_0x12c7ef[_0x15e64e(0xad)])&&_0x12c7ef[_0x15e64e(0xb5)](_0x3b292e,'master')?'\x20(Branch:\x20'+_0x3b292e+')':'',_0xa92b5c={'hookSpecificOutput':{'hookEventName':'SessionStart','additionalContext':_0x12c7ef['HQpEg'](RANGER_AUTO_ENABLED_PROMPT,_0x220c44)}};console['log'](JSON['stringify'](_0xa92b5c));}}}
@@ -1 +1 @@
1
- function _0x282b(_0x2458dd,_0x294387){_0x2458dd=_0x2458dd-0x6d;const _0x574d6c=_0x574d();let _0x282b38=_0x574d6c[_0x2458dd];return _0x282b38;}(function(_0x28ca99,_0x107671){const _0x171d05=_0x282b,_0x15d995=_0x28ca99();while(!![]){try{const _0x281050=parseInt(_0x171d05(0x72))/0x1*(parseInt(_0x171d05(0x75))/0x2)+parseInt(_0x171d05(0x78))/0x3*(parseInt(_0x171d05(0x71))/0x4)+parseInt(_0x171d05(0x7d))/0x5*(parseInt(_0x171d05(0x81))/0x6)+parseInt(_0x171d05(0x80))/0x7+-parseInt(_0x171d05(0x7e))/0x8+parseInt(_0x171d05(0x84))/0x9*(parseInt(_0x171d05(0x82))/0xa)+parseInt(_0x171d05(0x7a))/0xb*(-parseInt(_0x171d05(0x79))/0xc);if(_0x281050===_0x107671)break;else _0x15d995['push'](_0x15d995['shift']());}catch(_0x56e2a2){_0x15d995['push'](_0x15d995['shift']());}}}(_0x574d,0x27635));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';function _0x574d(){const _0x5c0989=['closed','verified','featureId','16NEpAsF','473rkXmvD','some','Stop','606CAHevE','nqrJF','incomplete','172311KpMrVm','910548tnLQcZ','66CRHmdH','qxzVA','checklistItems','75svMLzJ','351016NIXkid','hook:stop','249319ttVHEi','84834HtLfKp','79430wLtJQt','https://dashboard.ranger.net/features/','45VNZKhE','trackCommandEnd','log'];_0x574d=function(){return _0x5c0989;};return _0x574d();}import{createTelemetryCollector}from'../utils/telemetry.js';export async function stopHook(_0x4aeeaa){const _0x114d94=_0x282b,_0xf22af={'nurzQ':function(_0x5e8bef,_0x836089){return _0x5e8bef(_0x836089);},'LvXhI':function(_0x2340c0){return _0x2340c0();},'QyPCY':function(_0x1d07c2,_0x10afff){return _0x1d07c2&&_0x10afff;},'wfwPV':function(_0x1aef63,_0x530908,_0x51d75a,_0x5b7c8b){return _0x1aef63(_0x530908,_0x51d75a,_0x5b7c8b);}},_0x58da61=await _0xf22af['nurzQ'](getEnabledHookContext,_0x4aeeaa),_0x15aee9=_0x58da61?.['sessionId']??null;let _0x14dc0e=!![];if(!_0x15aee9){await trackStop(_0x15aee9,![],_0x14dc0e);return;}try{const _0x590742=getSessionEntry(_0x15aee9);if(!_0x590742){await trackStop(_0x15aee9,!![],_0x14dc0e);return;}const _0xadfc7c=await _0xf22af['LvXhI'](getToken),_0x417862=_0x114d94(0x83)+_0x590742[_0x114d94(0x70)];let _0x3b7d1d=null,_0x5275f2=![],_0x4e5cde=![];if(_0xadfc7c)try{const _0x282804=await getFeature(_0x590742['featureId']);_0x3b7d1d=_0x282804['currentSessionId']??null;const _0x51e93e=_0x282804[_0x114d94(0x7c)]['filter'](_0xae2988=>_0xae2988['sessionId']===_0x3b7d1d);_0x5275f2=_0x51e93e['some'](_0x528f41=>_0x528f41['status']!==_0x114d94(0x6f)&&_0x528f41['status']!=='blocked'&&_0x528f41['status']!==_0x114d94(0x6e)&&_0x528f41['status']!==_0x114d94(0x77)),_0x4e5cde=_0x51e93e[_0x114d94(0x73)](_0x760e5d=>_0x760e5d['status']==='verification_in_progress');}catch{}if(_0xadfc7c&&_0x3b7d1d&&_0x5275f2){if(!_0x4e5cde&&shouldShowStopReminder(_0x15aee9)){const _0x38f3b3={'hookSpecificOutput':{'hookEventName':_0x114d94(0x74),'additionalContext':'RANGER:\x20The\x20active\x20feature\x20review\x20still\x20has\x20unfinished\x20checklist\x20items.\x20Before\x20responding\x20to\x20the\x20user,\x20if\x20this\x20UI\x20work\x20is\x20ready,\x20run\x20`ranger\x20show`\x20and\x20then\x20`ranger\x20go`\x20for\x20the\x20relevant\x20scenario(s).\x20If\x20it\x20is\x20not\x20ready\x20for\x20browser\x20verification\x20yet,\x20continue\x20implementing.\x20Dashboard:\x20'+_0x417862}};console[_0x114d94(0x6d)](JSON['stringify'](_0x38f3b3));}}if(_0xf22af['QyPCY'](_0xadfc7c,_0x3b7d1d)&&!_0x5275f2)try{await concludeSession(_0x590742['featureId'],_0x3b7d1d);}catch{}await trackStop(_0x15aee9,!![],_0x14dc0e);return;}catch{await _0xf22af['wfwPV'](trackStop,_0x15aee9,!![],_0x14dc0e);return;}}async function trackStop(_0x2a11af,_0x4f5ee8,_0x3cb110){const _0x1bcb78=_0x282b,_0x26c262={'qxzVA':function(_0x533f09,_0x8f9261){return _0x533f09(_0x8f9261);},'nqrJF':function(_0x447e34,_0x573cb2){return _0x447e34??_0x573cb2;},'ECInf':'success'};try{const _0x37950e=_0x26c262[_0x1bcb78(0x7b)](createTelemetryCollector,_0x1bcb78(0x7f));await _0x37950e['trackCommandStart']({'sessionId':_0x26c262[_0x1bcb78(0x76)](_0x2a11af,undefined),'hooksEnabled':_0x4f5ee8,'stopAllowed':_0x3cb110}),await _0x37950e[_0x1bcb78(0x85)](_0x26c262['ECInf']);}catch{}}
1
+ (function(_0x1268ee,_0x5cc03e){const _0x27b49a=_0xea9d,_0x3721af=_0x1268ee();while(!![]){try{const _0x382003=parseInt(_0x27b49a(0x198))/0x1*(parseInt(_0x27b49a(0x19f))/0x2)+parseInt(_0x27b49a(0x1a4))/0x3+-parseInt(_0x27b49a(0x199))/0x4+-parseInt(_0x27b49a(0x192))/0x5+parseInt(_0x27b49a(0x194))/0x6+-parseInt(_0x27b49a(0x1a3))/0x7*(-parseInt(_0x27b49a(0x196))/0x8)+-parseInt(_0x27b49a(0x19c))/0x9;if(_0x382003===_0x5cc03e)break;else _0x3721af['push'](_0x3721af['shift']());}catch(_0x1c914b){_0x3721af['push'](_0x3721af['shift']());}}}(_0x366c,0xc30e4));import{getToken}from'../utils/keychain.js';import{getFeature,concludeSession}from'../utils/featureApi.js';import{getSessionEntry,shouldShowStopReminder}from'../utils/sessionCache.js';function _0x366c(){const _0x39a931=['stringify','4588615LLfRUX','mjPxz','8096376aoXSbT','iebTS','67720SMDndB','wxdsN','72255SHOWSD','3290680DUVLom','verification_in_progress','verified','7037595bcyoKl','status','featureId','24XrOwVw','tVSEA','sessionId','log','462YovqHV','1638450fvljLJ','Stop'];_0x366c=function(){return _0x39a931;};return _0x366c();}function _0xea9d(_0x106a16,_0x9d2332){_0x106a16=_0x106a16-0x192;const _0x366c6f=_0x366c();let _0xea9d14=_0x366c6f[_0x106a16];return _0xea9d14;}import{getEnabledHookContext}from'./output.js';import{createTelemetryCollector}from'../utils/telemetry.js';export async function stopHook(_0x17cfc9){const _0x372fca=_0xea9d,_0x321db0={'IlAUT':function(_0x159839,_0x29a406,_0x12686a,_0x1b657b){return _0x159839(_0x29a406,_0x12686a,_0x1b657b);},'xgdyy':function(_0xe47fba,_0x2c5396){return _0xe47fba(_0x2c5396);},'ZDnCo':function(_0x474dfc,_0x2d87c9){return _0x474dfc&&_0x2d87c9;},'wxdsN':_0x372fca(0x1a5),'oJlDJ':function(_0x17a0b2,_0x3da138,_0x1bb923){return _0x17a0b2(_0x3da138,_0x1bb923);},'mjPxz':function(_0x339b64,_0x1ebf78,_0x4ba672,_0x12c329){return _0x339b64(_0x1ebf78,_0x4ba672,_0x12c329);}},_0x1c6961=await getEnabledHookContext(_0x17cfc9),_0x2fabdf=_0x1c6961?.[_0x372fca(0x1a1)]??null;let _0x3bfd8f=!![];if(!_0x2fabdf){await _0x321db0['IlAUT'](trackStop,_0x2fabdf,![],_0x3bfd8f);return;}try{const _0x30e4cb=getSessionEntry(_0x2fabdf);if(!_0x30e4cb){await _0x321db0['IlAUT'](trackStop,_0x2fabdf,!![],_0x3bfd8f);return;}const _0x3d8558=await getToken(),_0x34a0f5='https://dashboard.ranger.net/features/'+_0x30e4cb[_0x372fca(0x19e)];let _0x4634cd=null,_0x25c77=![],_0x476410=![];if(_0x3d8558)try{const _0x3564a8=await _0x321db0['xgdyy'](getFeature,_0x30e4cb[_0x372fca(0x19e)]);_0x4634cd=_0x3564a8['currentSessionId']??null;const _0x559c0f=_0x3564a8['checklistItems']['filter'](_0x562018=>_0x562018[_0x372fca(0x1a1)]===_0x4634cd);_0x25c77=_0x559c0f['some'](_0x3a0708=>_0x3a0708[_0x372fca(0x19d)]!==_0x372fca(0x19b)&&_0x3a0708[_0x372fca(0x19d)]!=='blocked'&&_0x3a0708['status']!=='closed'&&_0x3a0708[_0x372fca(0x19d)]!=='incomplete'),_0x476410=_0x559c0f['some'](_0x1b3768=>_0x1b3768[_0x372fca(0x19d)]===_0x372fca(0x19a));}catch{}if(_0x321db0['ZDnCo'](_0x3d8558,_0x4634cd)&&_0x25c77){if(!_0x476410&&shouldShowStopReminder(_0x2fabdf)){const _0x3bec5d={'hookSpecificOutput':{'hookEventName':_0x321db0[_0x372fca(0x197)],'additionalContext':'RANGER:\x20The\x20active\x20feature\x20review\x20still\x20has\x20unfinished\x20checklist\x20items.\x20Before\x20responding\x20to\x20the\x20user,\x20if\x20this\x20UI\x20work\x20is\x20ready,\x20run\x20`ranger\x20show`\x20and\x20then\x20`ranger\x20go`\x20for\x20the\x20relevant\x20scenario(s).\x20If\x20it\x20is\x20not\x20ready\x20for\x20browser\x20verification\x20yet,\x20continue\x20implementing.\x20Dashboard:\x20'+_0x34a0f5}};console[_0x372fca(0x1a2)](JSON[_0x372fca(0x1a6)](_0x3bec5d));}}if(_0x3d8558&&_0x4634cd&&!_0x25c77)try{await _0x321db0['oJlDJ'](concludeSession,_0x30e4cb[_0x372fca(0x19e)],_0x4634cd);}catch{}await _0x321db0['mjPxz'](trackStop,_0x2fabdf,!![],_0x3bfd8f);return;}catch{await _0x321db0[_0x372fca(0x193)](trackStop,_0x2fabdf,!![],_0x3bfd8f);return;}}async function trackStop(_0x3e42cf,_0x5145f0,_0x3eb262){const _0xd57a26=_0xea9d,_0x26eab4={'htUPZ':'hook:stop','iebTS':function(_0x2cb4e8,_0x4a1cf0){return _0x2cb4e8??_0x4a1cf0;},'tVSEA':'success'};try{const _0x349104=createTelemetryCollector(_0x26eab4['htUPZ']);await _0x349104['trackCommandStart']({'sessionId':_0x26eab4[_0xd57a26(0x195)](_0x3e42cf,undefined),'hooksEnabled':_0x5145f0,'stopAllowed':_0x3eb262}),await _0x349104['trackCommandEnd'](_0x26eab4[_0xd57a26(0x1a0)]);}catch{}}
@@ -1 +1 @@
1
- (function(_0xacb905,_0x512da9){var _0x388288=_0x297d,_0x406b83=_0xacb905();while(!![]){try{var _0xbd7f92=parseInt(_0x388288(0x111))/0x1*(-parseInt(_0x388288(0x109))/0x2)+parseInt(_0x388288(0x10a))/0x3*(parseInt(_0x388288(0x108))/0x4)+-parseInt(_0x388288(0x10c))/0x5+parseInt(_0x388288(0x110))/0x6+parseInt(_0x388288(0x10f))/0x7*(parseInt(_0x388288(0x106))/0x8)+parseInt(_0x388288(0x107))/0x9*(parseInt(_0x388288(0x10d))/0xa)+-parseInt(_0x388288(0x10b))/0xb*(-parseInt(_0x388288(0x10e))/0xc);if(_0xbd7f92===_0x512da9)break;else _0x406b83['push'](_0x406b83['shift']());}catch(_0xa33bae){_0x406b83['push'](_0x406b83['shift']());}}}(_0x13f5,0xe778d));function _0x297d(_0x902d9,_0x504447){_0x902d9=_0x902d9-0x106;var _0x13f51e=_0x13f5();var _0x297db1=_0x13f51e[_0x902d9];return _0x297db1;}export{addEnv}from'./addEnv.js';export{clean}from'./clean.js';function _0x13f5(){var _0x3d20df=['3NkTVZG','34089vLkfmN','1479350RTBfor','490HokiPh','2472tzanYx','8652lySbCc','2557020ttUYSy','3199QldqJZ','32KpCmuz','235017RxRCrC','2476780yCtUXh','1078rIdCOK'];_0x13f5=function(){return _0x3d20df;};return _0x13f5();}export{login}from'./login.js';export{start,ensureLocalEnv,ensureChromium,authenticate}from'./start.js';export{useEnv}from'./useEnv.js';export{updateEnv}from'./updateEnv.js';export{update}from'./update.js';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';
1
+ (function(_0x1464cc,_0x500ccf){var _0xc54c83=_0x428f,_0x5daca5=_0x1464cc();while(!![]){try{var _0x493e04=parseInt(_0xc54c83(0xf8))/0x1*(parseInt(_0xc54c83(0xf0))/0x2)+-parseInt(_0xc54c83(0xf4))/0x3+-parseInt(_0xc54c83(0xf1))/0x4*(-parseInt(_0xc54c83(0xf5))/0x5)+parseInt(_0xc54c83(0xef))/0x6+-parseInt(_0xc54c83(0xf2))/0x7*(parseInt(_0xc54c83(0xed))/0x8)+-parseInt(_0xc54c83(0xf3))/0x9*(parseInt(_0xc54c83(0xf6))/0xa)+parseInt(_0xc54c83(0xee))/0xb*(parseInt(_0xc54c83(0xf7))/0xc);if(_0x493e04===_0x500ccf)break;else _0x5daca5['push'](_0x5daca5['shift']());}catch(_0x370546){_0x5daca5['push'](_0x5daca5['shift']());}}}(_0x49c6,0xd5bd5));export{addEnv}from'./addEnv.js';export{clean}from'./clean.js';export{login}from'./login.js';export{start,ensureLocalEnv,ensureChromium,authenticate}from'./start.js';export{useEnv}from'./useEnv.js';export{updateEnv}from'./updateEnv.js';export{update}from'./update.js';function _0x49c6(){var _0x11be1f=['28arFtPy','10934838HgnIip','1957446bflxKd','1606390eGGNcW','10uvqyxy','1422108xUpAcA','10woUhwB','1477784eIzKgf','11HGhhqb','7224468wpBZUs','303338zeOdHP','8rEVcle'];_0x49c6=function(){return _0x11be1f;};return _0x49c6();}function _0x428f(_0x4bd1fc,_0x3ca3ab){_0x4bd1fc=_0x4bd1fc-0xed;var _0x49c684=_0x49c6();var _0x428fc8=_0x49c684[_0x4bd1fc];return _0x428fc8;}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';