@ranger-testing/ranger-cli 3.0.1-alpha.bb18058-34 → 3.0.1-alpha.c0b290b-36

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (85) hide show
  1. package/build/cli.js +1 -1
  2. package/build/commands/addEnv.js +1 -1
  3. package/build/commands/authEncrypt.js +1 -1
  4. package/build/commands/clean.js +1 -1
  5. package/build/commands/config.js +1 -1
  6. package/build/commands/deleteProfile.js +1 -1
  7. package/build/commands/env.js +1 -1
  8. package/build/commands/feature.js +1 -1
  9. package/build/commands/hook.js +1 -1
  10. package/build/commands/hooks/autoPrompt.js +1 -1
  11. package/build/commands/hooks/disable.js +1 -1
  12. package/build/commands/hooks/enable.js +1 -1
  13. package/build/commands/hooks/exitPlanMode.js +1 -1
  14. package/build/commands/hooks/index.js +1 -1
  15. package/build/commands/hooks/output.js +1 -1
  16. package/build/commands/hooks/planReminder.js +1 -1
  17. package/build/commands/hooks/planStart.js +1 -1
  18. package/build/commands/hooks/postEdit.js +1 -1
  19. package/build/commands/hooks/preCompact.js +1 -1
  20. package/build/commands/hooks/sessionEnd.js +1 -1
  21. package/build/commands/hooks/sessionStart.js +1 -1
  22. package/build/commands/hooks/stopHook.js +1 -1
  23. package/build/commands/index.js +1 -1
  24. package/build/commands/login.js +1 -1
  25. package/build/commands/mcpBootstrap.js +1 -1
  26. package/build/commands/migrateProfile.js +1 -1
  27. package/build/commands/setup/claude.js +1 -1
  28. package/build/commands/setup/opencode.js +1 -1
  29. package/build/commands/setupCi.js +1 -1
  30. package/build/commands/skillup.js +1 -1
  31. package/build/commands/start.js +1 -1
  32. package/build/commands/status.js +1 -1
  33. package/build/commands/update.js +1 -1
  34. package/build/commands/updateEnv.js +1 -1
  35. package/build/commands/useEnv.js +1 -1
  36. package/build/commands/utils/activeProfile.js +1 -1
  37. package/build/commands/utils/agentEnv.js +1 -1
  38. package/build/commands/utils/browserSessionsApi.js +1 -1
  39. package/build/commands/utils/claudeConfig.js +1 -1
  40. package/build/commands/utils/claudeOverrideSettings.js +1 -1
  41. package/build/commands/utils/claudePlugin.js +1 -1
  42. package/build/commands/utils/cloudProfile.js +1 -1
  43. package/build/commands/utils/cloudProfileSession.js +1 -1
  44. package/build/commands/utils/crypto.js +1 -1
  45. package/build/commands/utils/desirePathLog.js +1 -1
  46. package/build/commands/utils/deviceAuth.js +1 -1
  47. package/build/commands/utils/environment.js +1 -1
  48. package/build/commands/utils/featureApi.js +1 -1
  49. package/build/commands/utils/fixWebmDuration.js +1 -1
  50. package/build/commands/utils/gitTracked.js +1 -1
  51. package/build/commands/utils/keychain.js +1 -1
  52. package/build/commands/utils/legacyWarning.js +1 -1
  53. package/build/commands/utils/localAgentInstallationsApi.js +1 -1
  54. package/build/commands/utils/matchAuthEnvironment.js +1 -1
  55. package/build/commands/utils/mcpImageBase64.js +1 -1
  56. package/build/commands/utils/model.js +1 -1
  57. package/build/commands/utils/novaActCli.js +1 -1
  58. package/build/commands/utils/opencodeConfig.js +1 -1
  59. package/build/commands/utils/organizationEnvApi.js +1 -1
  60. package/build/commands/utils/playwrightCli.js +1 -1
  61. package/build/commands/utils/profileMessages.js +1 -1
  62. package/build/commands/utils/profileSetupBanner.js +1 -1
  63. package/build/commands/utils/projectsConfig.js +1 -1
  64. package/build/commands/utils/rangerConfig.js +1 -1
  65. package/build/commands/utils/rangerRoot.js +1 -1
  66. package/build/commands/utils/rangerwrightCli.js +1 -1
  67. package/build/commands/utils/resolveProfileContext.js +1 -1
  68. package/build/commands/utils/resolveProfileUrl.js +1 -1
  69. package/build/commands/utils/retry.js +1 -1
  70. package/build/commands/utils/sessionCache.js +1 -1
  71. package/build/commands/utils/settings.js +1 -1
  72. package/build/commands/utils/skillContent.js +1 -1
  73. package/build/commands/utils/skills.js +1 -1
  74. package/build/commands/utils/stitchWebmFiles.js +1 -1
  75. package/build/commands/utils/telemetry.js +1 -1
  76. package/build/commands/utils/tokenRefresh.js +1 -1
  77. package/build/commands/utils/traceSnapshotMapper.js +1 -1
  78. package/build/commands/utils/tunnelClient.js +1 -0
  79. package/build/commands/utils/userApi.js +1 -1
  80. package/build/commands/utils/version.js +1 -1
  81. package/build/commands/verifyFeature.js +1 -1
  82. package/build/commands/verifyFeatureCli.js +1 -1
  83. package/build/commands/verifyFeatureNovaCli.js +1 -1
  84. package/build/commands/verifyFeatureRangerwrightCli.js +1 -1
  85. package/package.json +3 -1
@@ -1 +1 @@
1
- const _0x9ecb48=_0x2844;(function(_0x7dfbef,_0x2c2fb7){const _0x4ee99a=_0x2844,_0x57d679=_0x7dfbef();while(!![]){try{const _0x5bd8e5=-parseInt(_0x4ee99a(0x165))/0x1*(-parseInt(_0x4ee99a(0x10b))/0x2)+parseInt(_0x4ee99a(0x17b))/0x3*(parseInt(_0x4ee99a(0x1c3))/0x4)+parseInt(_0x4ee99a(0x1c6))/0x5+parseInt(_0x4ee99a(0x1b8))/0x6*(parseInt(_0x4ee99a(0x1c9))/0x7)+-parseInt(_0x4ee99a(0x111))/0x8+parseInt(_0x4ee99a(0x115))/0x9*(parseInt(_0x4ee99a(0x126))/0xa)+parseInt(_0x4ee99a(0x113))/0xb*(-parseInt(_0x4ee99a(0x198))/0xc);if(_0x5bd8e5===_0x2c2fb7)break;else _0x57d679['push'](_0x57d679['shift']());}catch(_0x102f62){_0x57d679['push'](_0x57d679['shift']());}}}(_0xc53f,0x5c688));import{readFile,writeFile,mkdir}from'fs/promises';import{join}from'path';function _0xc53f(){const _0x20fe88=['VNOXT','assets','.\x20Feature\x20review\x20has\x20','approved','rzwzP','dgTvz','12fOxhAp','spatial','iexJF','cECAg','repeat','\x0a❌\x20Invalid\x20scenario\x20index:\x20','YvRNP','Please\x20finish\x20your\x20review\x20first:','toLocaleDateString','\x20verified','incompleteReason','36XqujXV','sessionId','currentBranch','3665000ZRbRws','stats','completedAt','1151787fStTyN','closed','\x20\x20\x20Created:\x20','Current\x20session\x20not\x20found.','PnWNw','selector','coordinates','pqhmu','\x0a⚠️\x20\x20','all','Jfewy','kiEuv','unaddressedComments','No\x20scenarios\x20found.','description','...','canceledReason','excludeScenarios','verified','\x20scenario(s).','1403756KXtebm','\x0a\x20\x20\x20Scenarios:','xnuhL','toLocaleString','\x20\x20\x20To\x20restore\x20it,\x20run:\x20ranger\x20restore\x20','arrayBuffer','3184536vNYPZW','QgvXr','18018IHVzXm','createdAt','9nKpEvz','CLAUDE_SESSION_ID','\x0aGenerating\x20report...','\x0a❌\x20No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.','\x20\x20💬\x20','split','\x20\x20\x20The\x20feature\x20review\x20is\x20now\x20ready\x20for\x20human\x20review\x20on\x20the\x20Ranger\x20dashboard.','AmGhA','offset','blockedItems','Showing\x20','domRef','utf-8','DnHeZ','\x20unaddressed\x20reviewer\x20comment(s)\x20across\x20','WATjw','\x0a✅\x20Session\x20','5642020UiUAKF','gLWEM','\x20\x20\x20Progress:\x20','\x20\x20\x20\x20\x20\x20Approved','notes','checklistItems','uahir','length','Next\x20page:\x20ranger\x20list\x20--offset\x20','ZPsNq','\x0a❌\x20All\x20scenarios\x20were\x20excluded.','vQrDX','INHxb','No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.','PpjYH','isTTY','lyEFd','zldNk','log','verificationInProgressItems','ixErN','submittedAt','totalCount','scenario','elKbr','\x0a✅\x20Scenario\x20updated','iteration','version','linkedSession','\x20unaddressed\x20comment(s)','stringify','\x0a❌\x20No\x20scenarios\x20found\x20to\x20edit.','AeXbo','nQnmn','\x20\x20\x20Updated\x20branch\x20to:\x20','status','dBNAy','QogtB','GaBbm','Unknown','hMbCx','\x0aAvailable\x20scenarios:','No\x20active\x20session\x20for\x20this\x20feature\x20review.','fXdCq','iyCgB','name','OztCE','type','active-feature.txt','list','ySrGQ','sdIyL','\x20\x20\x20\x20\x20📍\x20Annotation:\x20point\x20at\x20(','gitRepoUrl','has','nMDCT','git\x20rev-parse\x20--abbrev-ref\x20HEAD','HQsQm','Not\x20in\x20a\x20git\x20repository.','No\x20sessions\x20found.','replace','McGkK','point','1KBxSxX','lrEju','short','APbHg','from','currentSessionId','kMsgl','assetType','\x1b[0m','\x20feature\x20review(s)\x20found','.md','map','write','yHIWU','screenshot','git\x20remote\x20get-url\x20origin','4|5|2|1|0|3','emiEc','\x20in\x20progress','trim',':\x20\x22','xFcJo','54465MdifNB','\x20\x20\x20ID:\x20','exit','DMOqV','\x20(v','dAEaF','output','numeric','error','push','vaFav','Scenario\x20','\x0a❌\x20Invalid\x20scenario\x20number(s):\x20','toFixed','.png','browserSessionId','txpMk','textContent','filter','No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','\x20\x20\x20\x20','reports','limit','Please\x20specify\x20the\x20feature\x20review\x20ID:\x20ranger\x20resume\x20<id>','find','\x20\x20\x20Run\x20`ranger\x20get-review`\x20to\x20see\x20what\x20needs\x20to\x20be\x20fixed.','qbFnt','rvkbn','\x20--include-deleted','12564dVWaoU','XnYQn','\x0a🗑️\x20\x20Deleted\x20feature\x20review:\x20','gRTAj','XNasI','kLlOK','IIwCS','xosLQ','XMfZs','oGFLw','\x20scenarios.','gJOwZ','mELlw','pop','RANGER_TEST_USERNAME','items','UwCCj','\x20\x20\x20Completed:\x20','pipe','gitBranch','blockedReason','\x0a➡️\x20\x20Set\x20as\x20active\x20feature\x20review','hquPc','2|5|3|1|0|4','LIrlx','canonicalFlow'];_0xc53f=function(){return _0x20fe88;};return _0xc53f();}import{existsSync}from'fs';import{execSync}from'child_process';import _0x28a028 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=_0x9ecb48(0x156),bold=_0x5bc939=>'\x1b[1m'+_0x5bc939+_0x9ecb48(0x16d);function getGitRepoUrl(){const _0x3e746e=_0x9ecb48,_0x4a31a5={'HZSeF':function(_0xde0155,_0x30bacb,_0x46c9d3){return _0xde0155(_0x30bacb,_0x46c9d3);},'QgvXr':'utf-8','XMfZs':'pipe','zcTZN':'github.com/'};try{const _0x1b1e77=_0x4a31a5['HZSeF'](execSync,_0x3e746e(0x174),{'encoding':_0x4a31a5[_0x3e746e(0x112)],'stdio':['pipe',_0x4a31a5['XMfZs'],_0x4a31a5[_0x3e746e(0x1a0)]]})['trim']();return _0x1b1e77['replace'](/\.git$/,'')['replace'](/^git@github\.com:/,_0x4a31a5['zcTZN'])[_0x3e746e(0x162)](/^https?:\/\//,'');}catch{return undefined;}}function getGitBranch(){const _0x19f6f9=_0x9ecb48,_0x288109={'qFWIT':function(_0x177b58,_0x3a0a4a,_0x55e4e8){return _0x177b58(_0x3a0a4a,_0x55e4e8);},'GuPwz':_0x19f6f9(0x121)};try{return _0x288109['qFWIT'](execSync,_0x19f6f9(0x15e),{'encoding':_0x288109['GuPwz'],'stdio':['pipe',_0x19f6f9(0x1aa),_0x19f6f9(0x1aa)]})[_0x19f6f9(0x178)]();}catch{return undefined;}}export async function getActiveFeatureId(){const _0x399bb8=_0x9ecb48,_0x39bfaf={'ddXXw':function(_0x23ac99,_0x1db564,_0x432f99){return _0x23ac99(_0x1db564,_0x432f99);},'DnHeZ':function(_0x1d2ea4){return _0x1d2ea4();},'gRTAj':function(_0x55917e,_0x18bd62){return _0x55917e(_0x18bd62);},'WrDor':function(_0x29c058,_0x2723f6,_0x3f235c){return _0x29c058(_0x2723f6,_0x3f235c);},'QogtB':'utf-8'},_0x3fce94=_0x39bfaf['ddXXw'](join,_0x39bfaf[_0x399bb8(0x122)](getRangerDir),ACTIVE_FEATURE_FILE);if(!_0x39bfaf[_0x399bb8(0x19b)](existsSync,_0x3fce94))return null;try{const _0x109a39=await _0x39bfaf['WrDor'](readFile,_0x3fce94,_0x39bfaf[_0x399bb8(0x14b)]);return _0x109a39[_0x399bb8(0x178)]()||null;}catch{return null;}}async function setActiveFeatureId(_0x2e0ba2){const _0x240cc4=_0x9ecb48,_0x17a209={'uCUfd':function(_0x5c3c6b){return _0x5c3c6b();},'GSyGG':function(_0x41eff4,_0x24384e,_0x28882c){return _0x41eff4(_0x24384e,_0x28882c);},'lyEFd':'utf-8'},_0x25d949=_0x17a209['uCUfd'](getRangerDir),_0xdc73a=join(_0x25d949,ACTIVE_FEATURE_FILE);!existsSync(_0x25d949)&&await _0x17a209['GSyGG'](mkdir,_0x25d949,{'recursive':!![]}),await writeFile(_0xdc73a,_0x2e0ba2,_0x17a209[_0x240cc4(0x136)]);}function _0x2844(_0x27a7e6,_0x1c67d7){_0x27a7e6=_0x27a7e6-0x10a;const _0xc53fb5=_0xc53f();let _0x2844c6=_0xc53fb5[_0x27a7e6];return _0x2844c6;}function getProgressDisplay(_0x20ddd3){const _0x582541=_0x9ecb48,_0x99ec37={'vmoAQ':function(_0x52fcfc,_0x153971){return _0x52fcfc+_0x153971;},'Jfewy':function(_0x432161,_0x5c9c68){return _0x432161+_0x5c9c68;},'nQnmn':function(_0x3fe297,_0x1534f9){return _0x3fe297===_0x1534f9;},'HQsQm':function(_0x4e63ba,_0x5d71bc){return _0x4e63ba/_0x5d71bc;},'elKbr':function(_0x44acfb,_0x294e4c){return _0x44acfb>_0x294e4c;}},_0x56a1c5=_0x20ddd3['verifiedItems']||0x0,_0x5c3d4c=_0x20ddd3[_0x582541(0x139)]||0x0,_0xaec8d5=_0x20ddd3[_0x582541(0x11e)]||0x0,_0x3fd403=_0x20ddd3['incompleteItems']||0x0,_0x16b2f2=_0x20ddd3['pendingItems']||0x0,_0x41b94c=_0x99ec37['vmoAQ'](_0x99ec37[_0x582541(0x1d3)](_0x56a1c5,_0x5c3d4c)+_0xaec8d5+_0x3fd403,_0x16b2f2);if(_0x99ec37[_0x582541(0x147)](_0x41b94c,0x0))return'-';const _0x2f9f1c=0xa,_0x57b6cb=Math['round'](_0x99ec37[_0x582541(0x15f)](_0x56a1c5,_0x41b94c)*_0x2f9f1c),_0x822718='█'[_0x582541(0x1bc)](_0x57b6cb)+'░'[_0x582541(0x1bc)](_0x2f9f1c-_0x57b6cb),_0x30dce1=[];if(_0x99ec37[_0x582541(0x13e)](_0xaec8d5,0x0))_0x30dce1[_0x582541(0x184)](_0xaec8d5+'\x20blocked');if(_0x3fd403>0x0)_0x30dce1['push'](_0x3fd403+'\x20incomplete');if(_0x5c3d4c>0x0)_0x30dce1[_0x582541(0x184)](_0x5c3d4c+_0x582541(0x177));const _0xccf3e4=_0x99ec37[_0x582541(0x13e)](_0x30dce1[_0x582541(0x12d)],0x0)?'\x20('+_0x30dce1['join'](',\x20')+')':'';return _0x822718+'\x20'+_0x56a1c5+'/'+_0x41b94c+_0x582541(0x1c1)+_0xccf3e4;}function getCurrentSessionItems(_0x422d5a,_0x55a5d1){const _0x47849f=_0x9ecb48;if(!_0x422d5a[_0x47849f(0x16a)])return _0x55a5d1['filter'](_0x351aff=>!_0x351aff[_0x47849f(0x1c4)]);return _0x55a5d1[_0x47849f(0x18d)](_0x4e8569=>_0x4e8569[_0x47849f(0x1c4)]===_0x422d5a[_0x47849f(0x16a)]||!_0x4e8569[_0x47849f(0x1c4)]);}function displayFeature(_0x5a5e23,_0x2aa9cb){const _0xedaee9=_0x9ecb48,_0x196899={'NsKjA':function(_0x534b40,_0x108da9){return _0x534b40(_0x108da9);},'UwCCj':_0xedaee9(0x10c),'zKYnx':function(_0x98b5c9,_0x165b05){return _0x98b5c9<_0x165b05;},'sdIyL':function(_0x2e577b,_0xa24b23){return _0x2e577b===_0xa24b23;},'AmGhA':'closed','YAQgK':function(_0x6af918,_0x54c7c8){return _0x6af918===_0x54c7c8;},'qbFnt':_0xedaee9(0x1b5),'McGkK':_0xedaee9(0x1db),'XyXpB':'incomplete','gLWEM':'verification_in_progress','xOpCI':function(_0x1a73c3,_0x1c8e94){return _0x1a73c3!==_0x1c8e94;},'OztCE':function(_0x388077,_0x1ee0b6){return _0x388077!==_0x1ee0b6;},'nMDCT':'\x20[has\x20reviewer\x20feedback]','NBXYP':function(_0xa5186b,_0x34c929){return _0xa5186b+_0x34c929;},'APbHg':function(_0x13f0da,_0x135293){return _0x13f0da===_0x135293;}};console['log']('\x0a'+_0x5a5e23['name']+'\x20('+_0x5a5e23['dashboardUrl']+')');_0x5a5e23['stats']&&console[_0xedaee9(0x138)](_0xedaee9(0x128)+_0x196899['NsKjA'](getProgressDisplay,_0x5a5e23['stats']));_0x5a5e23['description']&&console[_0xedaee9(0x138)]('\x20\x20\x20Description:\x20'+_0x5a5e23[_0xedaee9(0x1d7)]);_0x5a5e23[_0xedaee9(0x15b)]&&console['log']('\x20\x20\x20Repository:\x20'+_0x5a5e23[_0xedaee9(0x15b)]);_0x5a5e23['gitBranch']&&console[_0xedaee9(0x138)]('\x20\x20\x20Branch:\x20'+_0x5a5e23[_0xedaee9(0x1ab)]);console[_0xedaee9(0x138)]('\x20\x20\x20Created:\x20'+new Date(_0x5a5e23[_0xedaee9(0x114)])[_0xedaee9(0x10e)]());_0x5a5e23[_0xedaee9(0x1c8)]&&console['log'](_0xedaee9(0x1a9)+new Date(_0x5a5e23['completedAt'])[_0xedaee9(0x10e)]());if(_0x2aa9cb&&_0x2aa9cb[_0xedaee9(0x12d)]>0x0){console[_0xedaee9(0x138)](_0x196899[_0xedaee9(0x1a8)]);for(let _0x1fb3a0=0x0;_0x196899['zKYnx'](_0x1fb3a0,_0x2aa9cb[_0xedaee9(0x12d)]);_0x1fb3a0++){const _0x4e41a9=_0x2aa9cb[_0x1fb3a0];let _0x451664;if(_0x196899[_0xedaee9(0x159)](_0x4e41a9['status'],_0x196899[_0xedaee9(0x11c)])&&_0x196899['YAQgK'](_0x4e41a9['terminalReason'],_0x196899[_0xedaee9(0x195)]))_0x451664='✅';else{if(_0x4e41a9['status']===_0x196899[_0xedaee9(0x163)])_0x451664='🟢';else{if(_0x4e41a9['status']===_0x196899['XyXpB'])_0x451664='🟠';else{if(_0x4e41a9['status']==='blocked')_0x451664='🛑';else{if(_0x4e41a9[_0xedaee9(0x149)]===_0x196899[_0xedaee9(0x11c)])_0x451664='⛔';else _0x196899['YAQgK'](_0x4e41a9[_0xedaee9(0x149)],_0x196899[_0xedaee9(0x127)])?_0x451664='⏳':_0x451664='⬜';}}}}const _0x35edaa=_0x4e41a9[_0xedaee9(0x141)]>0x1?'\x20(v'+_0x4e41a9['version']+')':'',_0x8a213e=_0x4e41a9['version']>0x1&&_0x4e41a9['parentItemId']&&_0x196899['xOpCI'](_0x4e41a9[_0xedaee9(0x149)],'closed')&&_0x196899[_0xedaee9(0x154)](_0x4e41a9[_0xedaee9(0x149)],'verified')?_0x196899[_0xedaee9(0x15d)]:'';console[_0xedaee9(0x138)]('\x20\x20\x20'+_0x196899['NBXYP'](_0x1fb3a0,0x1)+'.\x20'+_0x451664+'\x20'+_0x4e41a9[_0xedaee9(0x1d7)]+_0x35edaa+_0x8a213e);_0x196899['YAQgK'](_0x4e41a9['status'],'blocked')&&_0x4e41a9['blockedReason']&&console[_0xedaee9(0x138)]('\x20\x20\x20\x20\x20\x20Blocked:\x20'+_0x4e41a9[_0xedaee9(0x1ac)]);_0x196899['YAQgK'](_0x4e41a9['status'],_0x196899['XyXpB'])&&_0x4e41a9['incompleteReason']&&console['log']('\x20\x20\x20\x20\x20\x20Incomplete:\x20'+_0x4e41a9[_0xedaee9(0x1c2)]);if(_0x196899[_0xedaee9(0x168)](_0x4e41a9['status'],'closed')&&_0x196899['APbHg'](_0x4e41a9['terminalReason'],_0x196899['qbFnt']))console[_0xedaee9(0x138)](_0xedaee9(0x129));else _0x196899['sdIyL'](_0x4e41a9[_0xedaee9(0x149)],'closed')&&_0x4e41a9[_0xedaee9(0x1d9)]&&console['log']('\x20\x20\x20\x20\x20\x20Cancelled:\x20'+_0x4e41a9[_0xedaee9(0x1d9)]);}}}export async function featureCreate(_0x4f335c,_0x41697a){const _0x4afa58=_0x9ecb48,_0x82a8ab={'emiEc':'\x0aCreating\x20feature\x20review...','zpJGP':function(_0x11c96f,_0x32f761){return _0x11c96f(_0x32f761);},'txpMk':function(_0x5c5df9,_0x283812,_0xfb03fb){return _0x5c5df9(_0x283812,_0xfb03fb);}},{envNames:_0x823541}=await getEnvNames();if(_0x823541['length']===0x0&&!process['env'][_0x4afa58(0x1a6)]){let _0x512c5f=0x0;try{_0x512c5f=(await listCloudProfiles())[_0x4afa58(0x12d)];}catch{_0x512c5f=0x1;}_0x512c5f===0x0&&console['warn']('\x0a'+formatProfileRequiredMessage(_0x282083=>bold(_0x282083)));}const _0x44f0ef=_0x41697a['scenarios']?_0x41697a['scenarios']['map'](_0x3662bb=>_0x3662bb[_0x4afa58(0x178)]()):[],_0xca7f59=getGitRepoUrl(),_0x4dcb34=getGitBranch();console[_0x4afa58(0x138)](_0x82a8ab[_0x4afa58(0x176)]);const _0x42d905=await _0x82a8ab['zpJGP'](createFeature,{'name':_0x4f335c,'description':_0x41697a[_0x4afa58(0x1d7)],'checklist':_0x44f0ef,'gitRepoUrl':_0xca7f59,'gitBranch':_0x4dcb34});await setActiveFeatureId(_0x42d905['id']),await tryStartCurrentSession(_0x42d905['id']);const _0x351344=process['env'][_0x4afa58(0x116)];_0x351344&&_0x82a8ab[_0x4afa58(0x18b)](registerSession,_0x351344,_0x42d905['id']),console['log']('\x0a✅\x20Feature\x20review\x20created:\x20'+_0x42d905['id']),displayFeature(_0x42d905,_0x42d905['checklistItems']),console[_0x4afa58(0x138)](_0x4afa58(0x1ad));}export async function featureList(_0x4f582e){const _0x5d4a2f=_0x9ecb48,_0x438165={'vFGvm':function(_0x18747a,_0x4d051f){return _0x18747a===_0x4d051f;},'uafeb':function(_0x3de7ac,_0x210cf7){return _0x3de7ac>_0x210cf7;},'BvsWM':function(_0x25af79,_0x317579){return _0x25af79(_0x317579);},'hMbCx':function(_0x467a48,_0x30e231){return _0x467a48<_0x30e231;},'DMOqV':'\x20--current-branch','ytYvW':_0x5d4a2f(0x197)},_0x326b57={'limit':_0x4f582e[_0x5d4a2f(0x191)]??0xa,'offset':_0x4f582e[_0x5d4a2f(0x11d)]??0x0,'includeDeleted':_0x4f582e['includeDeleted']};_0x4f582e[_0x5d4a2f(0x1c5)]&&(_0x326b57['gitRepoUrl']=getGitRepoUrl(),_0x326b57[_0x5d4a2f(0x1ab)]=getGitBranch());const _0x57ac61=await listFeatures(_0x326b57);if(_0x438165['vFGvm'](_0x57ac61[_0x5d4a2f(0x1a7)][_0x5d4a2f(0x12d)],0x0)){console['log']('\x0aNo\x20feature\x20reviews\x20found.');return;}const _0x1f435=_0x438165['uafeb'](_0x57ac61[_0x5d4a2f(0x13c)],_0x57ac61['items'][_0x5d4a2f(0x12d)])?_0x5d4a2f(0x11f)+_0x57ac61['items'][_0x5d4a2f(0x12d)]+'\x20of\x20'+_0x57ac61[_0x5d4a2f(0x13c)]:_0x57ac61['totalCount']+_0x5d4a2f(0x16e);console[_0x5d4a2f(0x138)]('\x0a'+_0x1f435+':\x0a');for(const _0x4ee8cf of _0x57ac61['items']){const _0x260569=_0x5d4a2f(0x175)['split']('|');let _0x16b078=0x0;while(!![]){switch(_0x260569[_0x16b078++]){case'0':console['log'](_0x5d4a2f(0x1cb)+new Date(_0x4ee8cf['createdAt'])[_0x5d4a2f(0x1c0)]());continue;case'1':_0x4ee8cf['gitBranch']&&console['log']('\x20\x20\x20Branch:\x20'+_0x4ee8cf['gitBranch']);continue;case'2':_0x4ee8cf['stats']&&console[_0x5d4a2f(0x138)](_0x5d4a2f(0x128)+_0x438165['BvsWM'](getProgressDisplay,_0x4ee8cf['stats']));continue;case'3':console['log']('');continue;case'4':console[_0x5d4a2f(0x138)](''+_0x4ee8cf[_0x5d4a2f(0x153)]);continue;case'5':console['log'](_0x5d4a2f(0x17c)+_0x4ee8cf['id']);continue;}break;}}const _0x23be68=_0x326b57['limit']??0xa,_0x4576f6=(_0x326b57['offset']??0x0)+_0x57ac61['items']['length'];if(_0x438165[_0x5d4a2f(0x14e)](_0x4576f6,_0x57ac61['totalCount'])){const _0x4f5ec5=_0x23be68!==0xa?'\x20--limit\x20'+_0x23be68:'',_0x4e475b=_0x4f582e[_0x5d4a2f(0x1c5)]?_0x438165[_0x5d4a2f(0x17e)]:'',_0x187739=_0x4f582e['includeDeleted']?_0x438165['ytYvW']:'';console['log'](_0x5d4a2f(0x12e)+_0x4576f6+_0x4f5ec5+_0x4e475b+_0x187739);}}export async function featureShow(_0x2a102d){const _0x2d0ae1={'JPRCZ':'No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review'},_0x39f725=_0x2a102d||await getActiveFeatureId();if(!_0x39f725)throw new Error(_0x2d0ae1['JPRCZ']);const _0x2baa84=await getFeature(_0x39f725);displayFeature(_0x2baa84,_0x2baa84['checklistItems']);}export async function featureResume(_0x1960e4){const _0x97bf41=_0x9ecb48,_0x39286f={'vPzFe':function(_0x2164f6){return _0x2164f6();},'lrEju':function(_0x42ed7b,_0x3599bb){return _0x42ed7b!==_0x3599bb;},'ixErN':function(_0xf03ae1,_0x15c568,_0x380007){return _0xf03ae1(_0x15c568,_0x380007);},'AeXbo':function(_0xde7440,_0x8660d){return _0xde7440(_0x8660d);},'kMsgl':function(_0x190898){return _0x190898();},'gJOwZ':function(_0x35c98a,_0x604416){return _0x35c98a&&_0x604416;},'YvRNP':_0x97bf41(0x160),'xFcJo':function(_0x3ee4cf,_0x42d671){return _0x3ee4cf||_0x42d671;},'XnYQn':'any','AotTZ':function(_0x3cff8e,_0x2c293d){return _0x3cff8e===_0x2c293d;},'NcneB':'selected','XOKCY':function(_0xd056e8,_0x3c27ba){return _0xd056e8!==_0x3c27ba;},'ySrGQ':function(_0x169e58,_0x488306){return _0x169e58(_0x488306);}};if(_0x1960e4){const _0x38f8c7=await getFeature(_0x1960e4);await setActiveFeatureId(_0x38f8c7['id']);const _0x468c74=_0x39286f['vPzFe'](getGitBranch);_0x468c74&&_0x39286f[_0x97bf41(0x166)](_0x468c74,_0x38f8c7[_0x97bf41(0x1ab)])&&(await updateFeature(_0x38f8c7['id'],{'gitBranch':_0x468c74}),console[_0x97bf41(0x138)]('\x20\x20\x20Updated\x20branch\x20to:\x20'+_0x468c74));console[_0x97bf41(0x138)]('\x0a✅\x20Resumed\x20feature\x20review:\x20'+_0x38f8c7['name']+'\x20('+_0x38f8c7['id']+')'),await tryStartCurrentSession(_0x38f8c7['id']);const _0x545552=process['env'][_0x97bf41(0x116)];_0x545552&&_0x39286f[_0x97bf41(0x13a)](registerSession,_0x545552,_0x38f8c7['id']);displayFeature(_0x38f8c7,_0x38f8c7[_0x97bf41(0x12b)]),await _0x39286f[_0x97bf41(0x146)](printFeedbackNudge,_0x38f8c7['id']);return;}const _0x2042df=_0x39286f[_0x97bf41(0x16b)](getGitRepoUrl),_0x3ad167=getGitBranch();if(_0x39286f[_0x97bf41(0x1a3)](!_0x2042df,!_0x3ad167))throw new Error(_0x39286f[_0x97bf41(0x1be)]);console['log']('\x0aSearching\x20for\x20feature\x20reviews\x20matching:\x20'+_0x39286f['xFcJo'](_0x2042df,_0x39286f[_0x97bf41(0x199)])+'\x20/\x20'+_0x39286f[_0x97bf41(0x17a)](_0x3ad167,_0x39286f[_0x97bf41(0x199)])+_0x97bf41(0x1d8));const _0x295dbf=await _0x39286f['AeXbo'](listFeatures,{'gitRepoUrl':_0x2042df,'gitBranch':_0x3ad167}),_0x134407=_0x295dbf['items']['filter'](_0x1274b4=>_0x1274b4[_0x97bf41(0x149)]?_0x1274b4[_0x97bf41(0x149)]!==_0x97bf41(0x1db):!_0x1274b4['completedAt']);if(_0x134407['length']===0x0){console[_0x97bf41(0x138)]('\x0aNo\x20matching\x20active\x20feature\x20reviews\x20found.'),console[_0x97bf41(0x138)]('Run:\x20ranger\x20create\x20\x22<name>\x22\x20to\x20create\x20a\x20new\x20feature\x20review');return;}let _0x4af2d8;if(_0x39286f['AotTZ'](_0x134407['length'],0x1))_0x4af2d8=_0x134407[0x0];else{const _0x22b3cf=process['stdin'][_0x97bf41(0x135)]&&process['stdout']['isTTY'];if(!_0x22b3cf){console['log']('\x0aNon-interactive\x20mode\x20detected.\x20Multiple\x20feature\x20reviews\x20found:');for(const _0x476459 of _0x134407){console[_0x97bf41(0x138)]('\x20\x20'+_0x476459['name']),console[_0x97bf41(0x138)]('\x20\x20\x20\x20\x20ID:\x20'+_0x476459['id']),_0x476459[_0x97bf41(0x1c7)]&&console[_0x97bf41(0x138)]('\x20\x20\x20\x20\x20Progress:\x20'+_0x39286f['AeXbo'](getProgressDisplay,_0x476459[_0x97bf41(0x1c7)])),_0x476459[_0x97bf41(0x1ab)]&&console['log']('\x20\x20\x20\x20\x20Branch:\x20'+_0x476459[_0x97bf41(0x1ab)]);}throw new Error(_0x97bf41(0x192));}const {selected:_0xda7b13}=await _0x28a028['prompt']([{'type':_0x97bf41(0x157),'name':_0x39286f['NcneB'],'message':'Multiple\x20feature\x20reviews\x20found.\x20Select\x20one:','choices':_0x134407['map'](_0xa5e6ff=>({'name':_0xa5e6ff['name']+'\x20('+_0xa5e6ff['id']+')','value':_0xa5e6ff['id']}))}]);_0x4af2d8=_0x134407[_0x97bf41(0x193)](_0x4cad4b=>_0x4cad4b['id']===_0xda7b13);}await setActiveFeatureId(_0x4af2d8['id']);_0x3ad167&&_0x39286f['XOKCY'](_0x3ad167,_0x4af2d8[_0x97bf41(0x1ab)])&&(await _0x39286f['ixErN'](updateFeature,_0x4af2d8['id'],{'gitBranch':_0x3ad167}),console['log'](_0x97bf41(0x148)+_0x3ad167));console['log']('\x0a✅\x20Resumed\x20feature\x20review:\x20'+_0x4af2d8['name']+'\x20('+_0x4af2d8['id']+')'),await _0x39286f[_0x97bf41(0x158)](tryStartCurrentSession,_0x4af2d8['id']);const _0x557d3b=await getFeature(_0x4af2d8['id']),_0x353b02=process['env']['CLAUDE_SESSION_ID'];_0x353b02&&_0x39286f['ixErN'](registerSession,_0x353b02,_0x557d3b['id']),displayFeature(_0x557d3b,_0x557d3b['checklistItems']),await printFeedbackNudge(_0x557d3b['id']);}async function printFeedbackNudge(_0x2742a4){const _0x302d42=_0x9ecb48,_0x178d4b={'LIrlx':function(_0x41e635,_0x519ff9){return _0x41e635>_0x519ff9;},'dgTvz':_0x302d42(0x194)};try{const {items:_0x379989}=await getActionItems(_0x2742a4);let _0x264cef=0x0,_0x4c199a=0x0;for(const _0x2d0fa6 of _0x379989){const _0x220235=await getItemFeedback(_0x2742a4,_0x2d0fa6['id']);_0x178d4b[_0x302d42(0x1b0)](_0x220235[_0x302d42(0x1d5)][_0x302d42(0x12d)],0x0)&&(_0x264cef+=_0x220235['unaddressedComments']['length'],_0x4c199a++);}_0x178d4b[_0x302d42(0x1b0)](_0x264cef,0x0)&&(console['log'](_0x302d42(0x1d1)+_0x264cef+_0x302d42(0x123)+_0x4c199a+_0x302d42(0x10a)),console[_0x302d42(0x138)](_0x178d4b[_0x302d42(0x1b7)]));}catch{}}async function tryStartCurrentSession(_0x416f6d){const _0x1ac55e=_0x9ecb48,_0x126efa={'dAEaF':function(_0x4a5dcb,_0x32b2ba){return _0x4a5dcb(_0x32b2ba);}};try{const {sessions:_0x27392f}=await _0x126efa[_0x1ac55e(0x180)](listFeatureSessions,_0x416f6d),_0x56764f=_0x27392f['find'](_0x14fa7c=>_0x14fa7c[_0x1ac55e(0x149)]==='ready');_0x56764f&&(await startSession(_0x416f6d,_0x56764f['id']),console['log']('\x20\x20\x20▶️\x20Started\x20session\x20'+_0x56764f[_0x1ac55e(0x140)]));}catch{}}export async function featureReport(_0x401133,_0x395026){const _0xd1c2e0=_0x9ecb48,_0x13aff3={'itCnp':function(_0xd495aa,_0x1a754e,_0x4c9437){return _0xd495aa(_0x1a754e,_0x4c9437);},'NPZIC':function(_0x5d0ce9,_0xb0ea56,_0x2ff8fa,_0x578fee){return _0x5d0ce9(_0xb0ea56,_0x2ff8fa,_0x578fee);},'CSPCh':_0xd1c2e0(0x190),'hquPc':_0xd1c2e0(0x121)},_0x561fb8=_0x401133||await getActiveFeatureId();if(!_0x561fb8)throw new Error(_0xd1c2e0(0x133));console[_0xd1c2e0(0x138)](_0xd1c2e0(0x117));const _0x103746=await _0x13aff3['itCnp'](getFeatureReportMarkdown,_0x561fb8,{'style':_0x395026['style']}),_0x9028b3=_0x395026[_0xd1c2e0(0x181)]||_0x13aff3['NPZIC'](join,getRangerDir(),_0x13aff3['CSPCh'],_0x561fb8+_0xd1c2e0(0x16f)),_0x45e710=join(_0x9028b3,'..');!existsSync(_0x45e710)&&await mkdir(_0x45e710,{'recursive':!![]}),await writeFile(_0x9028b3,_0x103746,_0x13aff3[_0xd1c2e0(0x1ae)]),console[_0xd1c2e0(0x138)]('\x0a✅\x20Report\x20generated:\x20'+_0x9028b3);}function getScenarioResult(_0x21354f){const _0x51856d=_0x9ecb48,_0x4edb73={'XNasI':_0x51856d(0x1ca),'mELlw':function(_0x29cfec,_0x55b01d){return _0x29cfec===_0x55b01d;},'OMkLA':'verification_in_progress'};if(_0x21354f['status']===_0x4edb73[_0x51856d(0x19c)])return _0x21354f['terminalReason']??_0x4edb73['XNasI'];if(_0x4edb73[_0x51856d(0x1a4)](_0x21354f['status'],_0x4edb73['OMkLA']))return'in_progress';return _0x21354f['status'];}function getScenarioRationale(_0x19446b,_0x25255c){const _0x130704=_0x9ecb48,_0x2057a5=_0x130704(0x1af)[_0x130704(0x11a)]('|');let _0x3a61cb=0x0;while(!![]){switch(_0x2057a5[_0x3a61cb++]){case'0':if(_0x19446b['notes'])return _0x19446b[_0x130704(0x12a)];continue;case'1':if(_0x19446b['canceledReason'])return _0x19446b[_0x130704(0x1d9)];continue;case'2':if(_0x25255c)return _0x25255c;continue;case'3':if(_0x19446b['incompleteReason'])return _0x19446b[_0x130704(0x1c2)];continue;case'4':return null;case'5':if(_0x19446b[_0x130704(0x1ac)])return _0x19446b[_0x130704(0x1ac)];continue;}break;}}export async function featureReportPrDescription(_0x3b2b4f,_0x242372){const _0x5c7adb=_0x9ecb48,_0x1192f6={'GNvIE':function(_0x40333e){return _0x40333e();},'dBNAy':'No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.','rvkbn':function(_0x294085,_0x45aa0c){return _0x294085===_0x45aa0c;},'sPWNt':_0x5c7adb(0x14f),'ojLpM':function(_0x265f6e,_0x1248ff){return _0x265f6e+_0x1248ff;},'rlBWY':function(_0x5912c6,_0x1ec113,_0xbea60d,_0x61fe2e){return _0x5912c6(_0x1ec113,_0xbea60d,_0x61fe2e);}},_0x30533b=_0x3b2b4f||await _0x1192f6['GNvIE'](getActiveFeatureId);if(!_0x30533b)throw new Error(_0x1192f6[_0x5c7adb(0x14a)]);const _0x31e210=await getFeature(_0x30533b),_0x2c0c7b=_0x31e210['checklistItems']||[],_0x4a44ef=getCurrentSessionItems(_0x31e210,_0x2c0c7b);_0x1192f6[_0x5c7adb(0x196)](_0x4a44ef[_0x5c7adb(0x12d)],0x0)&&(console[_0x5c7adb(0x183)]('\x0a❌\x20No\x20scenarios\x20found\x20to\x20include.'),process['exit'](0x1));const _0x24ca4a=_0x242372[_0x5c7adb(0x1da)]??[],_0x653fe2=_0x24ca4a[_0x5c7adb(0x18d)](_0x2f8c41=>!Number['isInteger'](_0x2f8c41)||_0x2f8c41<0x1||_0x2f8c41>_0x4a44ef[_0x5c7adb(0x12d)]);if(_0x653fe2['length']>0x0){console[_0x5c7adb(0x183)](_0x5c7adb(0x187)+_0x653fe2['join'](',\x20')),console['log'](_0x1192f6['sPWNt']);for(let _0x1fe62c=0x0;_0x1fe62c<_0x4a44ef[_0x5c7adb(0x12d)];_0x1fe62c++){console[_0x5c7adb(0x138)]('\x20\x20'+_0x1192f6['ojLpM'](_0x1fe62c,0x1)+'.\x20'+_0x4a44ef[_0x1fe62c]['description']);}process[_0x5c7adb(0x17d)](0x1);}const _0x3f2189=new Set(_0x24ca4a['map'](_0x45db70=>_0x45db70-0x1)),_0x1e4a27=_0x4a44ef[_0x5c7adb(0x18d)]((_0x561876,_0x2d5e73)=>!_0x3f2189[_0x5c7adb(0x15c)](_0x2d5e73));_0x1e4a27['length']===0x0&&(console['error'](_0x5c7adb(0x130)),process['exit'](0x1));if(_0x242372['json'])await _0x1192f6['rlBWY'](outputJsonReport,_0x30533b,_0x31e210,_0x1e4a27);else{const _0x4af784=await getFeatureReportMarkdown(_0x30533b,{'itemIds':_0x1e4a27[_0x5c7adb(0x170)](_0x155d12=>_0x155d12['id'])});process['stdout']['write'](_0x4af784['trimEnd']()+'\x0a');}}async function outputJsonReport(_0x3bf3ab,_0x38d2c9,_0x4494f2){const _0x17cbbd=_0x9ecb48,_0x3dbe64={'fXdCq':function(_0x3d7afe,_0x52403c){return _0x3d7afe(_0x52403c);},'rzwzP':function(_0x433b32,_0x2337f2){return _0x433b32>_0x2337f2;},'cECAg':function(_0x1020a3,_0x297358,_0x2b1cc0){return _0x1020a3(_0x297358,_0x2b1cc0);},'oGFLw':function(_0x234598){return _0x234598();}},_0x2c756b=_0x3dbe64[_0x17cbbd(0x1a1)](getApiBaseUrl),_0x5e1738=await getFeatureReport(_0x3bf3ab),_0x3a00e0=new Map(_0x5e1738[_0x17cbbd(0x12b)]['map'](_0x65ea36=>[_0x65ea36['id'],_0x65ea36])),_0x25c92=await Promise[_0x17cbbd(0x1d2)](_0x4494f2['map'](async _0x2d4adb=>{const _0x402365=_0x17cbbd,_0x492f6f=_0x3a00e0['get'](_0x2d4adb['id']),_0x1c5552=_0x492f6f?.[_0x402365(0x142)]??null;let _0x14c0fe=[];if(_0x2d4adb[_0x402365(0x18a)])try{const {steps:_0x3aa028}=await _0x3dbe64['fXdCq'](getBrowserSessionSteps,_0x2d4adb['browserSessionId']);_0x3dbe64[_0x402365(0x1b6)](_0x3aa028['length'],0x0)&&(_0x14c0fe=_0x3aa028[_0x402365(0x170)](_0x489b44=>{const _0x208456=_0x402365,_0x35e512=_0x489b44[_0x208456(0x1b3)]['find'](_0x13cab9=>_0x13cab9['assetType']===_0x208456(0x173)&&_0x13cab9['timing']==='after')??_0x489b44[_0x208456(0x1b3)][_0x208456(0x193)](_0x3f0956=>_0x3f0956[_0x208456(0x16c)]==='screenshot');let _0x73c816=null,_0x335ed6=null;if(_0x35e512){const _0x4cd7f6=_0x35e512['storage']['location'][_0x208456(0x11a)]('/')[_0x208456(0x1a5)]();_0x73c816=_0x2c756b+'/api/v1/mcp/browser-sessions/'+_0x2d4adb['browserSessionId']+'/artifacts/'+_0x4cd7f6,_0x4cd7f6&&(_0x335ed6=_0x4cd7f6['replace'](/\.\w+$/,'')['replace'](/^(key_)?\d+_/,'')[_0x208456(0x162)](/[-_]/g,'\x20'));}return{'description':_0x335ed6||_0x489b44[_0x208456(0x1d7)]||_0x489b44['stepName']||'Step\x20'+_0x489b44['position'],'screenshot':_0x73c816,'is_key_step':_0x489b44['isKeyStep']};}));}catch{}return _0x14c0fe['length']===0x0&&_0x1c5552?.['screenshotUrls']&&(_0x14c0fe=_0x1c5552['screenshotUrls']['map']((_0x3bfee4,_0x4cec9e)=>({'description':'Screenshot\x20'+(_0x4cec9e+0x1),'screenshot':_0x3bfee4,'is_key_step':![]}))),{'description':_0x2d4adb['description'],'result':_0x3dbe64[_0x402365(0x151)](getScenarioResult,_0x2d4adb),'rationale':_0x3dbe64[_0x402365(0x1bb)](getScenarioRationale,_0x2d4adb,_0x1c5552?.['agentResponse']),'steps':_0x14c0fe};})),_0x4d8fbe={'url':_0x38d2c9['dashboardUrl'],'scenarios':_0x25c92};process['stdout'][_0x17cbbd(0x171)](JSON[_0x17cbbd(0x144)](_0x4d8fbe,null,0x2)+'\x0a');}export async function featureConcludeSession(_0x1111b8){const _0x3583ef=_0x9ecb48,_0x162db7={'tixDy':function(_0x16de9f){return _0x16de9f();},'SPWzL':function(_0xcddc7e,_0x5e7fa7){return _0xcddc7e(_0x5e7fa7);},'vQrDX':_0x3583ef(0x150),'jXYfR':function(_0x46866c,_0x48aab7){return _0x46866c(_0x48aab7);},'lnIgN':_0x3583ef(0x1cc),'QQLRE':function(_0x2ff499,_0x33174f){return _0x2ff499===_0x33174f;},'qCAKC':function(_0x1b738e,_0x4ae165){return _0x1b738e!==_0x4ae165;},'PnWNw':'in_progress','SWmlI':'\x0aConcluding\x20session...','kIBEW':function(_0x3adbe,_0x44b976,_0x4cb748){return _0x3adbe(_0x44b976,_0x4cb748);}},_0x2d0d3a=_0x1111b8||await _0x162db7['tixDy'](getActiveFeatureId);if(!_0x2d0d3a)throw new Error(_0x3583ef(0x18e));const _0x4bcb23=await _0x162db7['SPWzL'](getFeature,_0x2d0d3a);if(!_0x4bcb23['currentSessionId'])throw new Error(_0x162db7[_0x3583ef(0x131)]);const {sessions:_0x49a2f3}=await _0x162db7['jXYfR'](listFeatureSessions,_0x2d0d3a),_0x56b562=_0x49a2f3['find'](_0x2ba33b=>_0x2ba33b['id']===_0x4bcb23['currentSessionId']);if(!_0x56b562)throw new Error(_0x162db7['lnIgN']);if(_0x162db7['QQLRE'](_0x56b562[_0x3583ef(0x149)],'completed')){console['log']('\x0a✅\x20Session\x20is\x20already\x20completed.');return;}if(_0x162db7['qCAKC'](_0x56b562[_0x3583ef(0x149)],_0x162db7[_0x3583ef(0x1cd)]))throw new Error('Cannot\x20conclude\x20session\x20with\x20status:\x20'+_0x56b562['status']);console['log'](_0x162db7['SWmlI']),await _0x162db7['kIBEW'](concludeSession,_0x2d0d3a,_0x4bcb23[_0x3583ef(0x16a)]),console[_0x3583ef(0x138)](_0x3583ef(0x125)+_0x56b562['iteration']+'\x20concluded.'),console['log'](_0x3583ef(0x11b));}export async function featureSessions(_0x59121a){const _0x17a2db=_0x9ecb48,_0x5c0db0={'WATjw':function(_0x551c49){return _0x551c49();},'okiFS':function(_0xb85ce2,_0x5e6ac6){return _0xb85ce2(_0x5e6ac6);},'kLlOK':_0x17a2db(0x161),'iyCgB':function(_0x4a6943,_0x4f39e4){return _0x4a6943===_0x4f39e4;},'uahir':'in_progress'},_0x4b0f7b=_0x59121a||await _0x5c0db0[_0x17a2db(0x124)](getActiveFeatureId);if(!_0x4b0f7b)throw new Error(_0x17a2db(0x133));const _0x50addb=await _0x5c0db0['okiFS'](getFeature,_0x4b0f7b);console[_0x17a2db(0x138)]('\x0a📁\x20Sessions\x20for\x20feature\x20review:\x20'+_0x50addb[_0x17a2db(0x153)]+'\x0a');const {sessions:_0x38337e}=await listFeatureSessions(_0x4b0f7b);if(_0x38337e['length']===0x0){console[_0x17a2db(0x138)](_0x5c0db0[_0x17a2db(0x19d)]);return;}for(const _0x470d6c of _0x38337e){const _0x29b8b2=_0x470d6c[_0x17a2db(0x149)]==='completed'?'✅':_0x5c0db0[_0x17a2db(0x152)](_0x470d6c['status'],_0x5c0db0[_0x17a2db(0x12c)])?'🔄':'▶️';console['log'](_0x29b8b2+'\x20Session\x20'+_0x470d6c['iteration']+'\x20('+_0x470d6c['id']+')'),console[_0x17a2db(0x138)]('\x20\x20\x20Status:\x20'+_0x470d6c['status']),console['log']('\x20\x20\x20Created:\x20'+new Date(_0x470d6c[_0x17a2db(0x114)])['toLocaleString']()),_0x470d6c['completedAt']&&console[_0x17a2db(0x138)](_0x17a2db(0x1a9)+new Date(_0x470d6c[_0x17a2db(0x1c8)])['toLocaleString']()),console['log']('');}}export async function featureAddScenario(_0x350147,_0x3365a8){const _0xe585ff=_0x9ecb48,_0x4a20ec={'INHxb':function(_0x4803f4,_0x37bafc){return _0x4803f4(_0x37bafc);},'zldNk':function(_0x3f7486,_0x5706eb,_0x603267){return _0x3f7486(_0x5706eb,_0x603267);},'iagtz':function(_0x1c7218,_0x5dde67){return _0x1c7218(_0x5dde67);},'ZPsNq':function(_0x3f4377,_0x3ca9ec,_0x219432){return _0x3f4377(_0x3ca9ec,_0x219432);}},_0x179824=_0x3365a8||await getActiveFeatureId();if(!_0x179824)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 _0x2cda9d=await _0x4a20ec[_0xe585ff(0x132)](getFeature,_0x179824);if(_0x2cda9d['latestReview']&&!_0x2cda9d['latestReview'][_0xe585ff(0x13b)])throw new Error('Cannot\x20add\x20scenario:\x20feature\x20review\x20has\x20an\x20active\x20review.\x20Please\x20finish\x20your\x20review\x20first:\x20'+_0x2cda9d['dashboardUrl']);await _0x4a20ec[_0xe585ff(0x137)](createChecklistItem,_0x179824,_0x350147);const _0x104f07=await _0x4a20ec['iagtz'](getFeature,_0x179824);console[_0xe585ff(0x138)]('\x0a✅\x20Scenario\x20added'),_0x4a20ec[_0xe585ff(0x12f)](displayFeature,_0x104f07,_0x104f07[_0xe585ff(0x12b)]);}export async function featureEditScenario(_0x17816a,_0x349dca){const _0x1a68a6=_0x9ecb48,_0x57116e={'axOLB':function(_0x147181){return _0x147181();},'xosLQ':function(_0x58f2b9,_0x2c0f94){return _0x58f2b9(_0x2c0f94);},'xnuhL':'\x0a❌\x20Cannot\x20edit\x20scenario:\x20feature\x20review\x20has\x20an\x20active\x20review.','ATsTB':_0x1a68a6(0x1bf),'ODOpO':function(_0x3ea24e,_0x50b21c){return _0x3ea24e===_0x50b21c;},'pqhmu':'\x0a❌\x20No\x20scenario\x20number\x20provided.\x20Use\x20--scenario\x20<number>.','IeOYU':'\x0aAvailable\x20scenarios:','wticm':function(_0x31e4e0,_0x4d2989){return _0x31e4e0+_0x4d2989;},'sRQxJ':function(_0x3b9291,_0xc04b4b,_0x391f8b){return _0x3b9291(_0xc04b4b,_0x391f8b);}},_0x35ca2a=_0x349dca['id']||await _0x57116e['axOLB'](getActiveFeatureId);!_0x35ca2a&&(console['error'](_0x1a68a6(0x118)),console[_0x1a68a6(0x183)]('Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review'),process[_0x1a68a6(0x17d)](0x1));const _0x3b3cbb=await _0x57116e[_0x1a68a6(0x19f)](getFeature,_0x35ca2a);_0x3b3cbb['latestReview']&&!_0x3b3cbb['latestReview'][_0x1a68a6(0x13b)]&&(console['error'](_0x57116e[_0x1a68a6(0x10d)]),console['error'](_0x57116e['ATsTB']),console['error']('\x20\x20'+_0x3b3cbb['dashboardUrl']),process[_0x1a68a6(0x17d)](0x1));const _0x35ddf9=_0x3b3cbb[_0x1a68a6(0x12b)]||[];_0x57116e['ODOpO'](_0x35ddf9['length'],0x0)&&(console[_0x1a68a6(0x183)](_0x1a68a6(0x145)),process['exit'](0x1));if(_0x57116e['ODOpO'](_0x349dca['scenario'],undefined)){console[_0x1a68a6(0x183)](_0x57116e[_0x1a68a6(0x1d0)]),console[_0x1a68a6(0x138)](_0x57116e['IeOYU']);for(let _0x1d7a50=0x0;_0x1d7a50<_0x35ddf9['length'];_0x1d7a50++){console[_0x1a68a6(0x138)]('\x20\x20'+_0x57116e['wticm'](_0x1d7a50,0x1)+'.\x20'+_0x35ddf9[_0x1d7a50][_0x1a68a6(0x1d7)]);}process[_0x1a68a6(0x17d)](0x1);}const _0x572ecf=_0x349dca[_0x1a68a6(0x13d)]-0x1;if(_0x572ecf<0x0||_0x572ecf>=_0x35ddf9['length']){console['error'](_0x1a68a6(0x1bd)+_0x349dca['scenario']+_0x1a68a6(0x1b4)+_0x35ddf9['length']+_0x1a68a6(0x1a2)),console[_0x1a68a6(0x138)](_0x57116e['IeOYU']);for(let _0x1b6909=0x0;_0x1b6909<_0x35ddf9['length'];_0x1b6909++){console['log']('\x20\x20'+(_0x1b6909+0x1)+'.\x20'+_0x35ddf9[_0x1b6909][_0x1a68a6(0x1d7)]);}process['exit'](0x1);}const _0x2438f9=_0x35ddf9[_0x572ecf];await updateChecklistItem(_0x35ca2a,_0x2438f9['id'],{'description':_0x17816a});const _0x28d9e5=await getFeature(_0x35ca2a);console['log'](_0x1a68a6(0x13f)),_0x57116e['sRQxJ'](displayFeature,_0x28d9e5,_0x28d9e5['checklistItems']);}async function downloadFeedbackImage(_0x2b657e,_0x22373c){const _0x3e156b=_0x9ecb48,_0x21d5f8={'PpjYH':function(_0x4f8ffd,_0x16ffcf,_0x444702){return _0x4f8ffd(_0x16ffcf,_0x444702);},'ACAAt':'feedback-images','vMDHI':function(_0x518bcd,_0x12a59a,_0x2de785){return _0x518bcd(_0x12a59a,_0x2de785);},'OnBWg':function(_0x299933,_0x59b7cb){return _0x299933(_0x59b7cb);}};try{const _0x31dde0=_0x21d5f8[_0x3e156b(0x134)](join,getRangerDir(),_0x21d5f8['ACAAt']);await _0x21d5f8['vMDHI'](mkdir,_0x31dde0,{'recursive':!![]});const _0x1baa94=join(_0x31dde0,'comment_'+_0x22373c+_0x3e156b(0x189)),_0x31e43d=await _0x21d5f8['OnBWg'](fetch,_0x2b657e);if(!_0x31e43d['ok'])return null;const _0x5ee525=Buffer[_0x3e156b(0x169)](await _0x31e43d[_0x3e156b(0x110)]());return await writeFile(_0x1baa94,_0x5ee525),_0x1baa94;}catch{return null;}}export async function featureGetReview(_0x5a94df){const _0x4d7ff3=_0x9ecb48,_0x97fa7d={'yHIWU':function(_0x41f5c8,_0x242e5f){return _0x41f5c8(_0x242e5f);},'iexJF':function(_0x510213,_0x42be76){return _0x510213(_0x42be76);},'kiEuv':function(_0x2621fd,_0x226636){return _0x2621fd===_0x226636;},'gLPPZ':_0x4d7ff3(0x1d6),'GaBbm':function(_0x45d498,_0x5cb96f){return _0x45d498>_0x5cb96f;},'UcIil':'en-US','xCKUZ':_0x4d7ff3(0x182),'ghrkp':function(_0x5f5d58,_0x57353a,_0x1b842a){return _0x5f5d58(_0x57353a,_0x1b842a);},'VNOXT':'element','AWZcz':function(_0x28f294,_0xd3b0b4){return _0x28f294+_0xd3b0b4;}},_0x52ed39=_0x5a94df||await getActiveFeatureId();if(!_0x52ed39)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 _0x20fa1a=await _0x97fa7d[_0x4d7ff3(0x172)](getFeature,_0x52ed39),{items:_0x36c3a5}=await _0x97fa7d[_0x4d7ff3(0x1ba)](getActionItems,_0x52ed39);console['log']('\x0a📋\x20Feedback\x20for:\x20'+_0x20fa1a['name']+'\x20('+_0x20fa1a['id']+')\x0a');if(_0x97fa7d[_0x4d7ff3(0x1d4)](_0x36c3a5['length'],0x0)){console[_0x4d7ff3(0x138)](_0x97fa7d['gLPPZ']);return;}for(let _0x20e576=0x0;_0x20e576<_0x36c3a5[_0x4d7ff3(0x12d)];_0x20e576++){const _0x555756=_0x36c3a5[_0x20e576],_0x19b261=_0x97fa7d[_0x4d7ff3(0x14c)](_0x555756['version'],0x1)?_0x4d7ff3(0x17f)+_0x555756['version']+')':'',_0x307c4b=await getItemFeedback(_0x52ed39,_0x555756['id']);if(_0x307c4b['unaddressedComments']['length']>0x0){console[_0x4d7ff3(0x138)](_0x4d7ff3(0x186)+(_0x20e576+0x1)+_0x4d7ff3(0x179)+_0x555756[_0x4d7ff3(0x1d7)]+'\x22'+_0x19b261+'\x20—\x20'+_0x307c4b['unaddressedComments'][_0x4d7ff3(0x12d)]+_0x4d7ff3(0x143));for(const _0x5ad677 of _0x307c4b['unaddressedComments']){const _0x37e3f2=new Date(_0x5ad677['createdAt'])['toLocaleDateString'](_0x97fa7d['UcIil'],{'month':_0x4d7ff3(0x167),'day':_0x97fa7d['xCKUZ']}),_0x52922d=_0x5ad677['authorName']||_0x5ad677['authorEmail']||_0x4d7ff3(0x14d);console['log'](_0x4d7ff3(0x119)+_0x52922d+'\x20('+_0x37e3f2+'):\x20\x22'+_0x5ad677['content']+'\x22');if(_0x5ad677['assetUrl']){const _0x3a8b19=await _0x97fa7d['ghrkp'](downloadFeedbackImage,_0x5ad677['assetUrl'],_0x5ad677['id']);_0x3a8b19&&console[_0x4d7ff3(0x138)]('\x20\x20\x20\x20\x20📷\x20Screenshot:\x20'+_0x3a8b19);}if(_0x5ad677['domRef']){const _0x758719=_0x5ad677[_0x4d7ff3(0x120)]['selector']['split']('\x20>\x20')['pop']()?.[_0x4d7ff3(0x11a)](':')[0x0]||_0x97fa7d[_0x4d7ff3(0x1b2)],_0xebab9f=_0x5ad677[_0x4d7ff3(0x120)][_0x4d7ff3(0x18c)]?'\x20\x22'+_0x5ad677[_0x4d7ff3(0x120)]['textContent']['slice'](0x0,0x3c)+'\x22':'';console[_0x4d7ff3(0x138)]('\x20\x20\x20\x20\x20🎯\x20Element:\x20<'+_0x758719+'>'+_0xebab9f),console['log']('\x20\x20\x20\x20\x20📋\x20Selector:\x20'+_0x5ad677['domRef'][_0x4d7ff3(0x1ce)]);}else{if(_0x5ad677['spatial']){const _0xcafc51=_0x5ad677[_0x4d7ff3(0x1b9)][_0x4d7ff3(0x1cf)];_0x5ad677['spatial'][_0x4d7ff3(0x155)]===_0x4d7ff3(0x164)&&_0xcafc51[_0x4d7ff3(0x12d)]>=0x2?console[_0x4d7ff3(0x138)](_0x4d7ff3(0x15a)+_0xcafc51[0x0]['toFixed'](0x2)+',\x20'+_0xcafc51[0x1][_0x4d7ff3(0x188)](0x2)+')'):console[_0x4d7ff3(0x138)]('\x20\x20\x20\x20\x20📍\x20Annotation:\x20'+_0x5ad677[_0x4d7ff3(0x1b9)][_0x4d7ff3(0x155)]+'\x20at\x20['+_0xcafc51['map'](_0x411cf6=>_0x411cf6['toFixed'](0x2))['join'](',\x20')+']');}}}if(_0x307c4b[_0x4d7ff3(0x1b1)]){console['log']('\x20\x20Expected\x20flow:');for(const _0x292a7d of _0x307c4b[_0x4d7ff3(0x1b1)][_0x4d7ff3(0x11a)]('\x0a')){console['log'](_0x4d7ff3(0x18f)+_0x292a7d);}}}else console[_0x4d7ff3(0x138)]('Scenario\x20'+_0x97fa7d['AWZcz'](_0x20e576,0x1)+_0x4d7ff3(0x179)+_0x555756[_0x4d7ff3(0x1d7)]+'\x22'+_0x19b261+'\x20—\x20no\x20comments'),console[_0x4d7ff3(0x138)]('\x20\x20✅\x20No\x20feedback\x20to\x20address');console['log']('');}}export async function featureDelete(_0x46991f){const _0x1e3079=_0x9ecb48,_0x374a60={'eXFAj':function(_0x19ca55){return _0x19ca55();},'iIsoW':'No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','IIwCS':function(_0x51f9cb,_0x5d6ac5){return _0x51f9cb(_0x5d6ac5);},'qaTfc':function(_0x35e59c,_0x5830cc){return _0x35e59c(_0x5830cc);},'WoEmA':_0x1e3079(0x10f)},_0xcfc4dd=_0x46991f||await _0x374a60['eXFAj'](getActiveFeatureId);if(!_0xcfc4dd)throw new Error(_0x374a60['iIsoW']);const _0x5629a6=await _0x374a60[_0x1e3079(0x19e)](getFeature,_0xcfc4dd);await _0x374a60['qaTfc'](softDeleteFeature,_0xcfc4dd),console[_0x1e3079(0x138)](_0x1e3079(0x19a)+_0x5629a6['name']+'\x20('+_0xcfc4dd+')'),console['log'](_0x374a60['WoEmA']+_0xcfc4dd);}export async function featureRestore(_0x2501fc){const _0x18f6cf=_0x9ecb48,_0x3bf347={'qqOcy':function(_0xef184b,_0x144fe9){return _0xef184b(_0x144fe9);},'vaFav':function(_0xf8274d,_0x1ca572,_0xc9704e){return _0xf8274d(_0x1ca572,_0xc9704e);}};await restoreFeature(_0x2501fc);const _0x5b8bb1=await _0x3bf347['qqOcy'](getFeature,_0x2501fc);console['log']('\x0a✅\x20Restored\x20feature\x20review:\x20'+_0x5b8bb1[_0x18f6cf(0x153)]+'\x20('+_0x2501fc+')'),_0x3bf347[_0x18f6cf(0x185)](displayFeature,_0x5b8bb1,_0x5b8bb1['checklistItems']);}
1
+ const _0x48b567=_0x59f8;(function(_0x38701c,_0x463d9a){const _0x240bf8=_0x59f8,_0x48b3a8=_0x38701c();while(!![]){try{const _0x8b16d9=parseInt(_0x240bf8(0x20e))/0x1+-parseInt(_0x240bf8(0x296))/0x2+-parseInt(_0x240bf8(0x1e6))/0x3*(-parseInt(_0x240bf8(0x1f8))/0x4)+parseInt(_0x240bf8(0x298))/0x5*(-parseInt(_0x240bf8(0x239))/0x6)+parseInt(_0x240bf8(0x2a7))/0x7+parseInt(_0x240bf8(0x211))/0x8+parseInt(_0x240bf8(0x228))/0x9;if(_0x8b16d9===_0x463d9a)break;else _0x48b3a8['push'](_0x48b3a8['shift']());}catch(_0x169fcf){_0x48b3a8['push'](_0x48b3a8['shift']());}}}(_0x23df,0xa117f));import{readFile,writeFile,mkdir}from'fs/promises';import{join}from'path';import{existsSync}from'fs';import{execSync}from'child_process';import _0x549fb from'inquirer';import{createFeature,listFeatures,getFeature,updateFeature,getFeatureReport,getFeatureReportMarkdown,listFeatureSessions,startSession,concludeSession,createChecklistItem,getActionItems,getItemFeedback,softDeleteFeature,restoreFeature,updateChecklistItem}from'./utils/featureApi.js';function _0x59f8(_0x494e81,_0x715aa2){_0x494e81=_0x494e81-0x1d8;const _0x23dfd6=_0x23df();let _0x59f80a=_0x23dfd6[_0x494e81];return _0x59f80a;}import{getBrowserSessionSteps}from'./utils/browserSessionsApi.js';import{getApiBaseUrl}from'./utils/environment.js';import{getRangerDir}from'./utils/rangerRoot.js';function _0x23df(){const _0x36b191=['incomplete','selected','\x20—\x20no\x20comments','\x20\x20\x20Created:\x20','oGowI','incompleteReason','KJCpp','\x20Session\x20','RANGER_TEST_USERNAME','IRDIM','zRqqo','verificationInProgressItems','unaddressedComments','assetType','MpByp','\x0a➡️\x20\x20Set\x20as\x20active\x20feature\x20review','HlAsQ','notes','TWykT','scenario','\x20\x20\x20Status:\x20','\x20scenarios.','description','LuYjU','CACLv','No\x20sessions\x20found.','stats','status','\x20\x20\x20Updated\x20branch\x20to:\x20','tWxDk','IhlOs','QeluD','\x20\x20\x20\x20\x20📋\x20Selector:\x20','msNpM','\x0a✅\x20Scenario\x20added','checklistItems','uPusG','rXCtR','\x0aNo\x20feature\x20reviews\x20found.','output','blockedReason','terminalReason','NxdUv','\x20\x20\x20\x20\x20\x20Blocked:\x20','join','AooTr','scenarios','completed','AcEUO','ZTsSz','wfKtD','offset','repeat','env','\x20--current-branch','authorEmail','\x20\x20\x20Run\x20`ranger\x20get-review`\x20to\x20see\x20what\x20needs\x20to\x20be\x20fixed.','items','LXxwG','push','\x20in\x20progress','Multiple\x20feature\x20reviews\x20found.\x20Select\x20one:','WDitd','gBbLE','\x0aGenerating\x20report...','AViLi','filter','approved','completedAt','github.com/','GleYh','ymMpz','map','USzWs','Not\x20in\x20a\x20git\x20repository.','name','storage','.md','oZlmq','qenJD','ymjMD','):\x20\x22','browserSessionId','totalCount','rhDtl','\x20\x20\x20\x20\x20📍\x20Annotation:\x20point\x20at\x20(','\x0a✅\x20Resumed\x20feature\x20review:\x20','SbLhZ','version','error','linkedSession','feedback-images','1364420PZxXCl','.\x20Feature\x20review\x20has\x20','5cuknpz','submittedAt','type','\x20unaddressed\x20reviewer\x20comment(s)\x20across\x20','reports','\x20\x20\x20\x20\x20📍\x20Annotation:\x20','\x20of\x20','\x20\x20✅\x20No\x20feedback\x20to\x20address','prompt','currentBranch','\x0a❌\x20No\x20scenarios\x20found\x20to\x20edit.','toFixed','find','log','isTTY','3934567KAFZhr','\x20(v','\x20[has\x20reviewer\x20feedback]','Run:\x20ranger\x20create\x20\x22<name>\x22\x20to\x20create\x20a\x20new\x20feature\x20review','toLocaleString','element','arrayBuffer','get','\x20\x20\x20▶️\x20Started\x20session\x20','bYjVC','numeric','\x20\x20\x20\x20\x20\x20Approved','AjcMk','verification_in_progress','\x0a📁\x20Sessions\x20for\x20feature\x20review:\x20','CLAUDE_SESSION_ID','spatial','currentSessionId','\x0a❌\x20Invalid\x20scenario\x20number(s):\x20','pendingItems','VQtRH','BhmUC','OoOyh','authorName','exit','ULGgT','\x0a⚠️\x20\x20','\x0a✅\x20Session\x20','length','ynjuq','split','PHBJF','WhLAu','FnzkG','latestReview','stdout','blockedItems','402819qCbaQi','dashboardUrl','canceledReason','pipe','qhAqn',':\x20\x22','pGExp','dVEyJ','jhpZK','round','\x20blocked','assets','No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.','\x0a❌\x20No\x20scenario\x20number\x20provided.\x20Use\x20--scenario\x20<number>.','sessionId','Next\x20page:\x20ranger\x20list\x20--offset\x20','geDrW','selector','4aqvBEQ','\x20incomplete','No\x20scenarios\x20found.','\x20\x20💬\x20','in_progress','\x1b[0m','\x20\x20\x20Progress:\x20','trim','screenshotUrls','Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','uMoex','wPCfo','No\x20active\x20session\x20for\x20this\x20feature\x20review.','hoxLk','Scenario\x20','includeDeleted','position','TIJmQ','createdAt','vDcGF','yZIjr','tlypn','966388bhFLBW','verified','nEDBW','2966552Mmzlbx','\x20—\x20','\x0a❌\x20Invalid\x20scenario\x20index:\x20','No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','domRef','blocked','\x20\x20\x20Branch:\x20','\x20\x20\x20\x20\x20Branch:\x20','utf-8','pop','short','\x0a❌\x20No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.','NVxDI','\x20\x20\x20To\x20restore\x20it,\x20run:\x20ranger\x20restore\x20','\x20\x20\x20\x20\x20Progress:\x20','any','toLocaleDateString','\x20\x20Expected\x20flow:','\x20\x20\x20','gjPZr','excludeScenarios','YdgBA','TfuFI','243738DcblCf','write','replace','FdkIQ','style','Harvx','warn','tkHSH','gitBranch','rMTgC','\x0aSearching\x20for\x20feature\x20reviews\x20matching:\x20','timing','iteration','closed','textContent','active-feature.txt','stepName','4311564mdzEjV'];_0x23df=function(){return _0x36b191;};return _0x23df();}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=_0x48b567(0x237),bold=_0x2274d8=>'\x1b[1m'+_0x2274d8+_0x48b567(0x1fd);function getGitRepoUrl(){const _0x2a49fb=_0x48b567,_0x131fd9={'qjxsL':_0x2a49fb(0x1e9),'tkHSH':_0x2a49fb(0x27f)};try{const _0x36f01c=execSync('git\x20remote\x20get-url\x20origin',{'encoding':'utf-8','stdio':[_0x131fd9['qjxsL'],'pipe',_0x2a49fb(0x1e9)]})[_0x2a49fb(0x1ff)]();return _0x36f01c[_0x2a49fb(0x22a)](/\.git$/,'')['replace'](/^git@github\.com:/,_0x131fd9[_0x2a49fb(0x22f)])['replace'](/^https?:\/\//,'');}catch{return undefined;}}function getGitBranch(){const _0x27eed0=_0x48b567,_0x5ad265={'oGowI':_0x27eed0(0x219)};try{return execSync('git\x20rev-parse\x20--abbrev-ref\x20HEAD',{'encoding':_0x5ad265[_0x27eed0(0x23e)],'stdio':['pipe','pipe','pipe']})[_0x27eed0(0x1ff)]();}catch{return undefined;}}export async function getActiveFeatureId(){const _0x2c9ddb=join(getRangerDir(),ACTIVE_FEATURE_FILE);if(!existsSync(_0x2c9ddb))return null;try{const _0x17e201=await readFile(_0x2c9ddb,'utf-8');return _0x17e201['trim']()||null;}catch{return null;}}async function setActiveFeatureId(_0x48e40b){const _0x6d64f2=_0x48b567,_0x6ceea5={'rhDtl':function(_0x4f9213){return _0x4f9213();},'fhNcb':function(_0x309af2,_0x32f116,_0x555952){return _0x309af2(_0x32f116,_0x555952);},'uANqE':function(_0x3df976,_0x7692ff,_0xf85f92){return _0x3df976(_0x7692ff,_0xf85f92);},'ZnPBt':function(_0x13fc11,_0x44d9c0,_0x1423d6,_0x1e08b6){return _0x13fc11(_0x44d9c0,_0x1423d6,_0x1e08b6);}},_0x1420b4=_0x6ceea5[_0x6d64f2(0x28e)](getRangerDir),_0x3e49bd=_0x6ceea5['fhNcb'](join,_0x1420b4,ACTIVE_FEATURE_FILE);!existsSync(_0x1420b4)&&await _0x6ceea5['uANqE'](mkdir,_0x1420b4,{'recursive':!![]}),await _0x6ceea5['ZnPBt'](writeFile,_0x3e49bd,_0x48e40b,_0x6d64f2(0x219));}function getProgressDisplay(_0x1ae2a6){const _0x48875a=_0x48b567,_0x30a053={'PHBJF':function(_0x2e3d96,_0x5b270c){return _0x2e3d96+_0x5b270c;},'FnzkG':function(_0x91a30b,_0x3e61fb){return _0x91a30b+_0x3e61fb;},'JlTZA':function(_0x32ee5a,_0x23aaed){return _0x32ee5a===_0x23aaed;},'YdgBA':function(_0x4e7f27,_0x31cfeb){return _0x4e7f27+_0x31cfeb;},'jXJSC':function(_0x35bb5b,_0x463c06){return _0x35bb5b-_0x463c06;},'fkImb':function(_0x5bf7e4,_0x434130){return _0x5bf7e4>_0x434130;}},_0x42227e=_0x1ae2a6['verifiedItems']||0x0,_0x22353b=_0x1ae2a6[_0x48875a(0x245)]||0x0,_0x34d0f3=_0x1ae2a6[_0x48875a(0x1e5)]||0x0,_0x61d32d=_0x1ae2a6['incompleteItems']||0x0,_0x1f6fba=_0x1ae2a6[_0x48875a(0x2ba)]||0x0,_0x22e665=_0x30a053[_0x48875a(0x1e0)](_0x30a053[_0x48875a(0x1e2)](_0x30a053[_0x48875a(0x1e0)](_0x42227e,_0x22353b),_0x34d0f3),_0x61d32d)+_0x1f6fba;if(_0x30a053['JlTZA'](_0x22e665,0x0))return'-';const _0x5ab289=0xa,_0x4930f8=Math[_0x48875a(0x1ef)](_0x42227e/_0x22e665*_0x5ab289),_0x4d481d=_0x30a053[_0x48875a(0x226)]('█'['repeat'](_0x4930f8),'░'[_0x48875a(0x26e)](_0x30a053['jXJSC'](_0x5ab289,_0x4930f8))),_0x248c2b=[];if(_0x34d0f3>0x0)_0x248c2b[_0x48875a(0x275)](_0x34d0f3+_0x48875a(0x1f0));if(_0x30a053['fkImb'](_0x61d32d,0x0))_0x248c2b[_0x48875a(0x275)](_0x61d32d+_0x48875a(0x1f9));if(_0x22353b>0x0)_0x248c2b[_0x48875a(0x275)](_0x22353b+_0x48875a(0x276));const _0x16fa06=_0x30a053['fkImb'](_0x248c2b['length'],0x0)?'\x20('+_0x248c2b[_0x48875a(0x266)](',\x20')+')':'';return _0x4d481d+'\x20'+_0x42227e+'/'+_0x22e665+'\x20verified'+_0x16fa06;}function getCurrentSessionItems(_0x3b4d08,_0x486643){const _0x198ff4=_0x48b567;if(!_0x3b4d08['currentSessionId'])return _0x486643[_0x198ff4(0x27c)](_0x5f12fe=>!_0x5f12fe['sessionId']);return _0x486643[_0x198ff4(0x27c)](_0x290439=>_0x290439[_0x198ff4(0x1f4)]===_0x3b4d08['currentSessionId']||!_0x290439['sessionId']);}function displayFeature(_0x20d731,_0x5dbb79){const _0x17c066=_0x48b567,_0x33c611={'IxjvT':'\x0a\x20\x20\x20Scenarios:','NxdUv':function(_0x2be13d,_0x38d437){return _0x2be13d<_0x38d437;},'CuhUn':'closed','IhlOs':function(_0x15f9fc,_0x53ca5b){return _0x15f9fc===_0x53ca5b;},'nHLdD':function(_0x290465,_0x5c7f14){return _0x290465===_0x5c7f14;},'aEbeT':function(_0x497f1e,_0x44af6f){return _0x497f1e===_0x44af6f;},'pGExp':_0x17c066(0x23a),'KJCpp':_0x17c066(0x216),'ZTsSz':_0x17c066(0x2b4),'xhHTj':function(_0x3330e9,_0x1b597c){return _0x3330e9>_0x1b597c;},'QeluD':function(_0x1d23ff,_0x33d1c1){return _0x1d23ff>_0x33d1c1;},'jhpZK':function(_0x14a8eb,_0x144407){return _0x14a8eb!==_0x144407;},'qenJD':_0x17c066(0x2a9),'tcnwg':function(_0x168df0,_0x58ef52){return _0x168df0+_0x58ef52;},'lAwjw':'approved'};console[_0x17c066(0x2a5)]('\x0a'+_0x20d731[_0x17c066(0x285)]+'\x20('+_0x20d731['dashboardUrl']+')');_0x20d731['stats']&&console['log'](_0x17c066(0x1fe)+getProgressDisplay(_0x20d731['stats']));_0x20d731[_0x17c066(0x250)]&&console[_0x17c066(0x2a5)]('\x20\x20\x20Description:\x20'+_0x20d731['description']);_0x20d731['gitRepoUrl']&&console[_0x17c066(0x2a5)]('\x20\x20\x20Repository:\x20'+_0x20d731['gitRepoUrl']);_0x20d731['gitBranch']&&console[_0x17c066(0x2a5)]('\x20\x20\x20Branch:\x20'+_0x20d731[_0x17c066(0x230)]);console[_0x17c066(0x2a5)]('\x20\x20\x20Created:\x20'+new Date(_0x20d731[_0x17c066(0x20a)])['toLocaleString']());_0x20d731['completedAt']&&console[_0x17c066(0x2a5)]('\x20\x20\x20Completed:\x20'+new Date(_0x20d731['completedAt'])[_0x17c066(0x2ab)]());if(_0x5dbb79&&_0x5dbb79['length']>0x0){console['log'](_0x33c611['IxjvT']);for(let _0x504ae1=0x0;_0x33c611[_0x17c066(0x264)](_0x504ae1,_0x5dbb79[_0x17c066(0x1dd)]);_0x504ae1++){const _0x561218=_0x5dbb79[_0x504ae1];let _0x40035b;if(_0x561218['status']===_0x33c611['CuhUn']&&_0x33c611[_0x17c066(0x258)](_0x561218['terminalReason'],_0x17c066(0x27d)))_0x40035b='✅';else{if(_0x33c611['nHLdD'](_0x561218['status'],_0x17c066(0x20f)))_0x40035b='🟢';else{if(_0x33c611['aEbeT'](_0x561218['status'],_0x33c611['pGExp']))_0x40035b='🟠';else{if(_0x561218['status']===_0x33c611[_0x17c066(0x240)])_0x40035b='🛑';else{if(_0x33c611['aEbeT'](_0x561218[_0x17c066(0x255)],_0x17c066(0x235)))_0x40035b='⛔';else _0x561218['status']===_0x33c611[_0x17c066(0x26b)]?_0x40035b='⏳':_0x40035b='⬜';}}}}const _0x68e3ae=_0x33c611['xhHTj'](_0x561218[_0x17c066(0x292)],0x1)?'\x20(v'+_0x561218['version']+')':'',_0x5f443a=_0x33c611[_0x17c066(0x259)](_0x561218[_0x17c066(0x292)],0x1)&&_0x561218['parentItemId']&&_0x561218['status']!=='closed'&&_0x33c611[_0x17c066(0x1ee)](_0x561218['status'],_0x17c066(0x20f))?_0x33c611[_0x17c066(0x289)]:'';console[_0x17c066(0x2a5)](_0x17c066(0x223)+_0x33c611['tcnwg'](_0x504ae1,0x1)+'.\x20'+_0x40035b+'\x20'+_0x561218['description']+_0x68e3ae+_0x5f443a);_0x561218['status']===_0x33c611[_0x17c066(0x240)]&&_0x561218[_0x17c066(0x262)]&&console['log'](_0x17c066(0x265)+_0x561218[_0x17c066(0x262)]);_0x561218['status']===_0x33c611[_0x17c066(0x1ec)]&&_0x561218['incompleteReason']&&console['log']('\x20\x20\x20\x20\x20\x20Incomplete:\x20'+_0x561218[_0x17c066(0x23f)]);if(_0x33c611['aEbeT'](_0x561218[_0x17c066(0x255)],_0x33c611['CuhUn'])&&_0x561218[_0x17c066(0x263)]===_0x33c611['lAwjw'])console[_0x17c066(0x2a5)](_0x17c066(0x2b2));else _0x561218['status']===_0x33c611['CuhUn']&&_0x561218['canceledReason']&&console['log']('\x20\x20\x20\x20\x20\x20Cancelled:\x20'+_0x561218[_0x17c066(0x1e8)]);}}}export async function featureCreate(_0x540009,_0x29dea0){const _0xc07d1d=_0x48b567,_0x23111c={'uPusG':function(_0x1d0c45){return _0x1d0c45();},'prFOh':function(_0x50b777,_0x4460c9){return _0x50b777===_0x4460c9;},'nnRlB':function(_0x18fffd,_0x7d331b){return _0x18fffd===_0x7d331b;},'WDitd':function(_0x5db590,_0x24f0e8){return _0x5db590(_0x24f0e8);},'CneIV':function(_0x14880b){return _0x14880b();},'vDcGF':function(_0x47adea,_0x577109,_0x415549){return _0x47adea(_0x577109,_0x415549);}},{envNames:_0x5e5e34}=await _0x23111c[_0xc07d1d(0x25e)](getEnvNames);if(_0x23111c['prFOh'](_0x5e5e34['length'],0x0)&&!process[_0xc07d1d(0x26f)][_0xc07d1d(0x242)]){let _0x2e7c79=0x0;try{_0x2e7c79=(await listCloudProfiles())[_0xc07d1d(0x1dd)];}catch{_0x2e7c79=0x1;}_0x23111c['nnRlB'](_0x2e7c79,0x0)&&console[_0xc07d1d(0x22e)]('\x0a'+_0x23111c[_0xc07d1d(0x278)](formatProfileRequiredMessage,_0xd0b76b=>bold(_0xd0b76b)));}const _0x5728b8=_0x29dea0[_0xc07d1d(0x268)]?_0x29dea0['scenarios']['map'](_0x362cc4=>_0x362cc4['trim']()):[],_0x36cb7f=getGitRepoUrl(),_0x3a755c=_0x23111c['CneIV'](getGitBranch);console[_0xc07d1d(0x2a5)]('\x0aCreating\x20feature\x20review...');const _0xa8aed3=await createFeature({'name':_0x540009,'description':_0x29dea0['description'],'checklist':_0x5728b8,'gitRepoUrl':_0x36cb7f,'gitBranch':_0x3a755c});await _0x23111c['WDitd'](setActiveFeatureId,_0xa8aed3['id']),await _0x23111c['WDitd'](tryStartCurrentSession,_0xa8aed3['id']);const _0x33ec62=process['env']['CLAUDE_SESSION_ID'];_0x33ec62&&_0x23111c[_0xc07d1d(0x20b)](registerSession,_0x33ec62,_0xa8aed3['id']),console[_0xc07d1d(0x2a5)]('\x0a✅\x20Feature\x20review\x20created:\x20'+_0xa8aed3['id']),displayFeature(_0xa8aed3,_0xa8aed3['checklistItems']),console[_0xc07d1d(0x2a5)](_0xc07d1d(0x249));}export async function featureList(_0x5c0335){const _0x1322d5=_0x48b567,_0x556e8c={'SbLhZ':function(_0x5a4937){return _0x5a4937();},'TIJmQ':function(_0x5140a1,_0x31dd43){return _0x5140a1(_0x31dd43);},'TvUIO':_0x1322d5(0x260),'uQIIP':function(_0x678eba,_0x406e90){return _0x678eba(_0x406e90);},'gQIUf':function(_0x4e8731,_0x160843){return _0x4e8731<_0x160843;},'ynjuq':'\x20--include-deleted'},_0x46edd8={'limit':_0x5c0335['limit']??0xa,'offset':_0x5c0335[_0x1322d5(0x26d)]??0x0,'includeDeleted':_0x5c0335[_0x1322d5(0x207)]};_0x5c0335['currentBranch']&&(_0x46edd8['gitRepoUrl']=_0x556e8c[_0x1322d5(0x291)](getGitRepoUrl),_0x46edd8[_0x1322d5(0x230)]=_0x556e8c[_0x1322d5(0x291)](getGitBranch));const _0x4fa647=await _0x556e8c[_0x1322d5(0x209)](listFeatures,_0x46edd8);if(_0x4fa647[_0x1322d5(0x273)][_0x1322d5(0x1dd)]===0x0){console['log'](_0x556e8c['TvUIO']);return;}const _0x2fd92c=_0x4fa647['totalCount']>_0x4fa647['items'][_0x1322d5(0x1dd)]?'Showing\x20'+_0x4fa647[_0x1322d5(0x273)]['length']+_0x1322d5(0x29e)+_0x4fa647[_0x1322d5(0x28d)]:_0x4fa647[_0x1322d5(0x28d)]+'\x20feature\x20review(s)\x20found';console[_0x1322d5(0x2a5)]('\x0a'+_0x2fd92c+':\x0a');for(const _0x48b4ca of _0x4fa647['items']){console['log'](''+_0x48b4ca[_0x1322d5(0x285)]),console[_0x1322d5(0x2a5)]('\x20\x20\x20ID:\x20'+_0x48b4ca['id']),_0x48b4ca[_0x1322d5(0x254)]&&console[_0x1322d5(0x2a5)](_0x1322d5(0x1fe)+_0x556e8c['uQIIP'](getProgressDisplay,_0x48b4ca[_0x1322d5(0x254)])),_0x48b4ca[_0x1322d5(0x230)]&&console[_0x1322d5(0x2a5)](_0x1322d5(0x217)+_0x48b4ca['gitBranch']),console[_0x1322d5(0x2a5)]('\x20\x20\x20Created:\x20'+new Date(_0x48b4ca['createdAt'])['toLocaleDateString']()),console[_0x1322d5(0x2a5)]('');}const _0x3b1698=_0x46edd8['limit']??0xa,_0x8c18=(_0x46edd8['offset']??0x0)+_0x4fa647['items']['length'];if(_0x556e8c['gQIUf'](_0x8c18,_0x4fa647['totalCount'])){const _0x42e251=_0x3b1698!==0xa?'\x20--limit\x20'+_0x3b1698:'',_0x150330=_0x5c0335[_0x1322d5(0x2a1)]?_0x1322d5(0x270):'',_0x5e8b26=_0x5c0335['includeDeleted']?_0x556e8c[_0x1322d5(0x1de)]:'';console[_0x1322d5(0x2a5)](_0x1322d5(0x1f5)+_0x8c18+_0x42e251+_0x150330+_0x5e8b26);}}export async function featureShow(_0xe894ba){const _0x1ab008=_0x48b567,_0x567ce8={'YNjZz':function(_0x15e3e4){return _0x15e3e4();}},_0x22dcab=_0xe894ba||await _0x567ce8['YNjZz'](getActiveFeatureId);if(!_0x22dcab)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 _0x220f4d=await getFeature(_0x22dcab);displayFeature(_0x220f4d,_0x220f4d[_0x1ab008(0x25d)]);}export async function featureResume(_0xb8e9b7){const _0x11f6a6=_0x48b567,_0x41808d={'geDrW':function(_0x3b2b50,_0x5c6d7d){return _0x3b2b50(_0x5c6d7d);},'oZlmq':function(_0x52ee37,_0x143736,_0x429b73){return _0x52ee37(_0x143736,_0x429b73);},'mVnnt':function(_0x32700e){return _0x32700e();},'BfVst':function(_0x4f5433,_0x4a0f8b){return _0x4f5433&&_0x4a0f8b;},'MpByp':_0x11f6a6(0x284),'vsjAm':function(_0x4ba979,_0x298211){return _0x4ba979||_0x298211;},'SBLGq':_0x11f6a6(0x2aa),'uhDrw':'list','wPCfo':_0x11f6a6(0x23b),'rSNfd':_0x11f6a6(0x277),'hpudJ':function(_0x13120b,_0xb0b265){return _0x13120b(_0xb0b265);}};if(_0xb8e9b7){const _0x45ff12=await _0x41808d[_0x11f6a6(0x1f6)](getFeature,_0xb8e9b7);await _0x41808d[_0x11f6a6(0x1f6)](setActiveFeatureId,_0x45ff12['id']);const _0x14ab3b=getGitBranch();_0x14ab3b&&_0x14ab3b!==_0x45ff12[_0x11f6a6(0x230)]&&(await _0x41808d['oZlmq'](updateFeature,_0x45ff12['id'],{'gitBranch':_0x14ab3b}),console['log'](_0x11f6a6(0x256)+_0x14ab3b));console[_0x11f6a6(0x2a5)](_0x11f6a6(0x290)+_0x45ff12['name']+'\x20('+_0x45ff12['id']+')'),await tryStartCurrentSession(_0x45ff12['id']);const _0xe3e45=process['env'][_0x11f6a6(0x2b6)];_0xe3e45&&registerSession(_0xe3e45,_0x45ff12['id']);displayFeature(_0x45ff12,_0x45ff12['checklistItems']),await printFeedbackNudge(_0x45ff12['id']);return;}const _0x7db952=getGitRepoUrl(),_0x4cf036=_0x41808d['mVnnt'](getGitBranch);if(_0x41808d['BfVst'](!_0x7db952,!_0x4cf036))throw new Error(_0x41808d[_0x11f6a6(0x248)]);console[_0x11f6a6(0x2a5)](_0x11f6a6(0x232)+_0x41808d['vsjAm'](_0x7db952,_0x11f6a6(0x220))+'\x20/\x20'+_0x41808d['vsjAm'](_0x4cf036,_0x11f6a6(0x220))+'...');const _0x461853=await listFeatures({'gitRepoUrl':_0x7db952,'gitBranch':_0x4cf036}),_0x57d29a=_0x461853['items'][_0x11f6a6(0x27c)](_0x23935d=>_0x23935d[_0x11f6a6(0x255)]?_0x23935d[_0x11f6a6(0x255)]!=='verified':!_0x23935d[_0x11f6a6(0x27e)]);if(_0x57d29a[_0x11f6a6(0x1dd)]===0x0){console['log']('\x0aNo\x20matching\x20active\x20feature\x20reviews\x20found.'),console[_0x11f6a6(0x2a5)](_0x41808d['SBLGq']);return;}let _0x200370;if(_0x57d29a[_0x11f6a6(0x1dd)]===0x1)_0x200370=_0x57d29a[0x0];else{const _0x15c66d=process['stdin'][_0x11f6a6(0x2a6)]&&process['stdout'][_0x11f6a6(0x2a6)];if(!_0x15c66d){console['log']('\x0aNon-interactive\x20mode\x20detected.\x20Multiple\x20feature\x20reviews\x20found:');for(const _0x583fd0 of _0x57d29a){console['log']('\x20\x20'+_0x583fd0['name']),console['log']('\x20\x20\x20\x20\x20ID:\x20'+_0x583fd0['id']),_0x583fd0['stats']&&console[_0x11f6a6(0x2a5)](_0x11f6a6(0x21f)+getProgressDisplay(_0x583fd0['stats'])),_0x583fd0['gitBranch']&&console[_0x11f6a6(0x2a5)](_0x11f6a6(0x218)+_0x583fd0['gitBranch']);}throw new Error('Please\x20specify\x20the\x20feature\x20review\x20ID:\x20ranger\x20resume\x20<id>');}const {selected:_0x49f92c}=await _0x549fb[_0x11f6a6(0x2a0)]([{'type':_0x41808d['uhDrw'],'name':_0x41808d[_0x11f6a6(0x203)],'message':_0x41808d['rSNfd'],'choices':_0x57d29a['map'](_0x15ee40=>({'name':_0x15ee40['name']+'\x20('+_0x15ee40['id']+')','value':_0x15ee40['id']}))}]);_0x200370=_0x57d29a['find'](_0x247123=>_0x247123['id']===_0x49f92c);}await setActiveFeatureId(_0x200370['id']);_0x4cf036&&_0x4cf036!==_0x200370['gitBranch']&&(await _0x41808d[_0x11f6a6(0x288)](updateFeature,_0x200370['id'],{'gitBranch':_0x4cf036}),console['log'](_0x11f6a6(0x256)+_0x4cf036));console[_0x11f6a6(0x2a5)](_0x11f6a6(0x290)+_0x200370[_0x11f6a6(0x285)]+'\x20('+_0x200370['id']+')'),await _0x41808d['geDrW'](tryStartCurrentSession,_0x200370['id']);const _0x2a8dd8=await _0x41808d['hpudJ'](getFeature,_0x200370['id']),_0x15c40c=process['env']['CLAUDE_SESSION_ID'];_0x15c40c&&registerSession(_0x15c40c,_0x2a8dd8['id']),displayFeature(_0x2a8dd8,_0x2a8dd8['checklistItems']),await _0x41808d['hpudJ'](printFeedbackNudge,_0x2a8dd8['id']);}async function printFeedbackNudge(_0xb2f401){const _0x10fb2e=_0x48b567,_0x278db7={'tlypn':function(_0x8dc27f,_0x9012ec,_0x41d814){return _0x8dc27f(_0x9012ec,_0x41d814);},'tWxDk':function(_0x22c742,_0x22ea49){return _0x22c742>_0x22ea49;},'msNpM':_0x10fb2e(0x272)};try{const {items:_0x2de4b2}=await getActionItems(_0xb2f401);let _0x23396e=0x0,_0x252f14=0x0;for(const _0x45e00a of _0x2de4b2){const _0x19d232=await _0x278db7[_0x10fb2e(0x20d)](getItemFeedback,_0xb2f401,_0x45e00a['id']);_0x278db7[_0x10fb2e(0x257)](_0x19d232[_0x10fb2e(0x246)]['length'],0x0)&&(_0x23396e+=_0x19d232[_0x10fb2e(0x246)]['length'],_0x252f14++);}_0x23396e>0x0&&(console['log'](_0x10fb2e(0x1db)+_0x23396e+_0x10fb2e(0x29b)+_0x252f14+'\x20scenario(s).'),console[_0x10fb2e(0x2a5)](_0x278db7[_0x10fb2e(0x25b)]));}catch{}}async function tryStartCurrentSession(_0x419331){const _0x573af8=_0x48b567;try{const {sessions:_0x234ec3}=await listFeatureSessions(_0x419331),_0x1b7ee8=_0x234ec3['find'](_0x3a7c40=>_0x3a7c40['status']==='ready');_0x1b7ee8&&(await startSession(_0x419331,_0x1b7ee8['id']),console['log'](_0x573af8(0x2af)+_0x1b7ee8[_0x573af8(0x234)]));}catch{}}export async function featureReport(_0x57c51d,_0x2cd307){const _0x4f60f7=_0x48b567,_0xc9b84c={'nEDBW':'No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.','zRqqo':_0x4f60f7(0x27a),'qhAqn':function(_0xd827be,_0x548dad,_0x41075d){return _0xd827be(_0x548dad,_0x41075d);},'BhmUC':function(_0xcf8c8f){return _0xcf8c8f();},'MBwht':function(_0x2af30a,_0x18bd17){return _0x2af30a(_0x18bd17);},'yZIjr':function(_0x307032,_0x50e098,_0x459a3f){return _0x307032(_0x50e098,_0x459a3f);},'AjcMk':function(_0x16dd81,_0x31a74f,_0x2676b6,_0x5eaf39){return _0x16dd81(_0x31a74f,_0x2676b6,_0x5eaf39);}},_0x4f6deb=_0x57c51d||await getActiveFeatureId();if(!_0x4f6deb)throw new Error(_0xc9b84c[_0x4f60f7(0x210)]);console[_0x4f60f7(0x2a5)](_0xc9b84c[_0x4f60f7(0x244)]);const _0x3cc236=await _0xc9b84c[_0x4f60f7(0x1ea)](getFeatureReportMarkdown,_0x4f6deb,{'style':_0x2cd307[_0x4f60f7(0x22c)]}),_0x6bbd10=_0x2cd307[_0x4f60f7(0x261)]||join(_0xc9b84c[_0x4f60f7(0x2bc)](getRangerDir),_0x4f60f7(0x29c),_0x4f6deb+_0x4f60f7(0x287)),_0x51cd35=_0xc9b84c['qhAqn'](join,_0x6bbd10,'..');!_0xc9b84c['MBwht'](existsSync,_0x51cd35)&&await _0xc9b84c[_0x4f60f7(0x20c)](mkdir,_0x51cd35,{'recursive':!![]}),await _0xc9b84c[_0x4f60f7(0x2b3)](writeFile,_0x6bbd10,_0x3cc236,_0x4f60f7(0x219)),console[_0x4f60f7(0x2a5)]('\x0a✅\x20Report\x20generated:\x20'+_0x6bbd10);}function getScenarioResult(_0xca513a){const _0x3672ad=_0x48b567,_0x2bac8a={'KwNJG':_0x3672ad(0x2b4),'LHYvM':'in_progress'};if(_0xca513a['status']===_0x3672ad(0x235))return _0xca513a['terminalReason']??'closed';if(_0xca513a['status']===_0x2bac8a['KwNJG'])return _0x2bac8a['LHYvM'];return _0xca513a[_0x3672ad(0x255)];}function getScenarioRationale(_0x5d3e1e,_0x53698a){const _0x173bb8=_0x48b567;if(_0x53698a)return _0x53698a;if(_0x5d3e1e['blockedReason'])return _0x5d3e1e['blockedReason'];if(_0x5d3e1e['incompleteReason'])return _0x5d3e1e['incompleteReason'];if(_0x5d3e1e['canceledReason'])return _0x5d3e1e['canceledReason'];if(_0x5d3e1e['notes'])return _0x5d3e1e[_0x173bb8(0x24b)];return null;}export async function featureReportPrDescription(_0x551fc9,_0x3ae233){const _0x5e9d19=_0x48b567,_0x3a7afb={'AMpQZ':function(_0x2b3aa8){return _0x2b3aa8();},'JMtwj':function(_0x130eb1,_0x5e6562){return _0x130eb1(_0x5e6562);},'TWykT':function(_0xf38ee9,_0x239741,_0x14c4b9){return _0xf38ee9(_0x239741,_0x14c4b9);},'TGDwr':'\x0a❌\x20No\x20scenarios\x20found\x20to\x20include.','NVxDI':function(_0x128aa9,_0x5d0340){return _0x128aa9>_0x5d0340;},'WNVWU':'\x0aAvailable\x20scenarios:','ULGgT':function(_0x14bf15,_0x270e6c){return _0x14bf15<_0x270e6c;},'Harvx':function(_0x4ba411,_0x478433){return _0x4ba411===_0x478433;},'bYjVC':'\x0a❌\x20All\x20scenarios\x20were\x20excluded.','jUWKL':function(_0x3e6c40,_0x5cc764,_0x216442,_0x4d89e0){return _0x3e6c40(_0x5cc764,_0x216442,_0x4d89e0);}},_0x1ca5b2=_0x551fc9||await _0x3a7afb['AMpQZ'](getActiveFeatureId);if(!_0x1ca5b2)throw new Error('No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.');const _0x2430e4=await _0x3a7afb['JMtwj'](getFeature,_0x1ca5b2),_0x3c2c48=_0x2430e4['checklistItems']||[],_0x40a06d=_0x3a7afb[_0x5e9d19(0x24c)](getCurrentSessionItems,_0x2430e4,_0x3c2c48);_0x40a06d[_0x5e9d19(0x1dd)]===0x0&&(console['error'](_0x3a7afb['TGDwr']),process['exit'](0x1));const _0x516050=_0x3ae233[_0x5e9d19(0x225)]??[],_0xb80617=_0x516050[_0x5e9d19(0x27c)](_0x47772a=>!Number['isInteger'](_0x47772a)||_0x47772a<0x1||_0x47772a>_0x40a06d['length']);if(_0x3a7afb[_0x5e9d19(0x21d)](_0xb80617['length'],0x0)){console[_0x5e9d19(0x293)](_0x5e9d19(0x2b9)+_0xb80617['join'](',\x20')),console['log'](_0x3a7afb['WNVWU']);for(let _0x505ef0=0x0;_0x3a7afb[_0x5e9d19(0x1da)](_0x505ef0,_0x40a06d['length']);_0x505ef0++){console['log']('\x20\x20'+(_0x505ef0+0x1)+'.\x20'+_0x40a06d[_0x505ef0]['description']);}process['exit'](0x1);}const _0x21d042=new Set(_0x516050[_0x5e9d19(0x282)](_0x3a7ed3=>_0x3a7ed3-0x1)),_0x4d50b5=_0x40a06d[_0x5e9d19(0x27c)]((_0x53418c,_0x1f3eba)=>!_0x21d042['has'](_0x1f3eba));_0x3a7afb[_0x5e9d19(0x22d)](_0x4d50b5[_0x5e9d19(0x1dd)],0x0)&&(console[_0x5e9d19(0x293)](_0x3a7afb[_0x5e9d19(0x2b0)]),process['exit'](0x1));if(_0x3ae233['json'])await _0x3a7afb['jUWKL'](outputJsonReport,_0x1ca5b2,_0x2430e4,_0x4d50b5);else{const _0x311826=await getFeatureReportMarkdown(_0x1ca5b2,{'itemIds':_0x4d50b5[_0x5e9d19(0x282)](_0x5a64e6=>_0x5a64e6['id'])});process[_0x5e9d19(0x1e4)][_0x5e9d19(0x229)](_0x311826['trimEnd']()+'\x0a');}}async function outputJsonReport(_0x405d45,_0x4e0228,_0x52161b){const _0x4de308=_0x48b567,_0x106c81={'CACLv':function(_0x4dc3b9,_0x13daa4){return _0x4dc3b9>_0x13daa4;},'KfVuu':function(_0x9ef7f7,_0x336a21,_0x3c79aa){return _0x9ef7f7(_0x336a21,_0x3c79aa);},'AViLi':function(_0x5121f1){return _0x5121f1();},'ekvEe':function(_0x361100,_0x5ec96a){return _0x361100(_0x5ec96a);},'DdNZP':function(_0x2ca3e4,_0x215266){return _0x2ca3e4+_0x215266;}},_0x368274=_0x106c81[_0x4de308(0x27b)](getApiBaseUrl),_0x1f435d=await _0x106c81['ekvEe'](getFeatureReport,_0x405d45),_0x416bd5=new Map(_0x1f435d['checklistItems']['map'](_0x3405cb=>[_0x3405cb['id'],_0x3405cb])),_0x337952=await Promise['all'](_0x52161b['map'](async _0x450b22=>{const _0x11705a=_0x4de308,_0x2abdc7=_0x416bd5[_0x11705a(0x2ae)](_0x450b22['id']),_0x36c568=_0x2abdc7?.[_0x11705a(0x294)]??null;let _0x504a7a=[];if(_0x450b22[_0x11705a(0x28c)])try{const {steps:_0x2a826c}=await getBrowserSessionSteps(_0x450b22[_0x11705a(0x28c)]);_0x106c81[_0x11705a(0x252)](_0x2a826c[_0x11705a(0x1dd)],0x0)&&(_0x504a7a=_0x2a826c[_0x11705a(0x282)](_0x12a0ae=>{const _0x40e765=_0x11705a,_0x497018=_0x12a0ae[_0x40e765(0x1f1)][_0x40e765(0x2a4)](_0x5e6880=>_0x5e6880[_0x40e765(0x247)]==='screenshot'&&_0x5e6880[_0x40e765(0x233)]==='after')??_0x12a0ae['assets'][_0x40e765(0x2a4)](_0xe64768=>_0xe64768[_0x40e765(0x247)]==='screenshot');let _0x383a12=null,_0x51347f=null;if(_0x497018){const _0x1ea6d0=_0x497018[_0x40e765(0x286)]['location'][_0x40e765(0x1df)]('/')[_0x40e765(0x21a)]();_0x383a12=_0x368274+'/api/v1/mcp/browser-sessions/'+_0x450b22['browserSessionId']+'/artifacts/'+_0x1ea6d0,_0x1ea6d0&&(_0x51347f=_0x1ea6d0[_0x40e765(0x22a)](/\.\w+$/,'')[_0x40e765(0x22a)](/^(key_)?\d+_/,'')[_0x40e765(0x22a)](/[-_]/g,'\x20'));}return{'description':_0x51347f||_0x12a0ae[_0x40e765(0x250)]||_0x12a0ae[_0x40e765(0x238)]||'Step\x20'+_0x12a0ae[_0x40e765(0x208)],'screenshot':_0x383a12,'is_key_step':_0x12a0ae['isKeyStep']};}));}catch{}return _0x504a7a['length']===0x0&&_0x36c568?.[_0x11705a(0x200)]&&(_0x504a7a=_0x36c568['screenshotUrls']['map']((_0x5452dd,_0x3d2544)=>({'description':'Screenshot\x20'+(_0x3d2544+0x1),'screenshot':_0x5452dd,'is_key_step':![]}))),{'description':_0x450b22[_0x11705a(0x250)],'result':getScenarioResult(_0x450b22),'rationale':_0x106c81['KfVuu'](getScenarioRationale,_0x450b22,_0x36c568?.['agentResponse']),'steps':_0x504a7a};})),_0x4520e2={'url':_0x4e0228[_0x4de308(0x1e7)],'scenarios':_0x337952};process[_0x4de308(0x1e4)][_0x4de308(0x229)](_0x106c81['DdNZP'](JSON['stringify'](_0x4520e2,null,0x2),'\x0a'));}export async function featureConcludeSession(_0x5bb36c){const _0x5b5d13=_0x48b567,_0x463bef={'LjTbb':_0x5b5d13(0x204),'zxQjG':'Current\x20session\x20not\x20found.','gjPZr':'completed','gBbLE':'\x0a✅\x20Session\x20is\x20already\x20completed.'},_0x188f01=_0x5bb36c||await getActiveFeatureId();if(!_0x188f01)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 _0x25378e=await getFeature(_0x188f01);if(!_0x25378e[_0x5b5d13(0x2b8)])throw new Error(_0x463bef['LjTbb']);const {sessions:_0x5831fb}=await listFeatureSessions(_0x188f01),_0x45d067=_0x5831fb[_0x5b5d13(0x2a4)](_0x1c0dde=>_0x1c0dde['id']===_0x25378e[_0x5b5d13(0x2b8)]);if(!_0x45d067)throw new Error(_0x463bef['zxQjG']);if(_0x45d067[_0x5b5d13(0x255)]===_0x463bef[_0x5b5d13(0x224)]){console[_0x5b5d13(0x2a5)](_0x463bef[_0x5b5d13(0x279)]);return;}if(_0x45d067[_0x5b5d13(0x255)]!==_0x5b5d13(0x1fc))throw new Error('Cannot\x20conclude\x20session\x20with\x20status:\x20'+_0x45d067[_0x5b5d13(0x255)]);console['log']('\x0aConcluding\x20session...'),await concludeSession(_0x188f01,_0x25378e[_0x5b5d13(0x2b8)]),console['log'](_0x5b5d13(0x1dc)+_0x45d067[_0x5b5d13(0x234)]+'\x20concluded.'),console[_0x5b5d13(0x2a5)]('\x20\x20\x20The\x20feature\x20review\x20is\x20now\x20ready\x20for\x20human\x20review\x20on\x20the\x20Ranger\x20dashboard.');}export async function featureSessions(_0x1f7ed1){const _0x3abda0=_0x48b567,_0x2e24b3={'LuYjU':function(_0x4ba8ff){return _0x4ba8ff();},'ugoQu':_0x3abda0(0x1f2),'USzWs':function(_0x285b1c,_0x779663){return _0x285b1c(_0x779663);},'odhmV':_0x3abda0(0x253),'nxLhR':_0x3abda0(0x269),'ehOPt':function(_0x1558de,_0x2ab9ef){return _0x1558de===_0x2ab9ef;},'ymMpz':_0x3abda0(0x1fc)},_0x26c397=_0x1f7ed1||await _0x2e24b3[_0x3abda0(0x251)](getActiveFeatureId);if(!_0x26c397)throw new Error(_0x2e24b3['ugoQu']);const _0x4e6f8e=await getFeature(_0x26c397);console['log'](_0x3abda0(0x2b5)+_0x4e6f8e['name']+'\x0a');const {sessions:_0xc2c7b0}=await _0x2e24b3[_0x3abda0(0x283)](listFeatureSessions,_0x26c397);if(_0xc2c7b0[_0x3abda0(0x1dd)]===0x0){console['log'](_0x2e24b3['odhmV']);return;}for(const _0x1cb0d0 of _0xc2c7b0){const _0x4d96f3=_0x1cb0d0['status']===_0x2e24b3['nxLhR']?'✅':_0x2e24b3['ehOPt'](_0x1cb0d0[_0x3abda0(0x255)],_0x2e24b3[_0x3abda0(0x281)])?'🔄':'▶️';console['log'](_0x4d96f3+_0x3abda0(0x241)+_0x1cb0d0[_0x3abda0(0x234)]+'\x20('+_0x1cb0d0['id']+')'),console[_0x3abda0(0x2a5)](_0x3abda0(0x24e)+_0x1cb0d0[_0x3abda0(0x255)]),console['log'](_0x3abda0(0x23d)+new Date(_0x1cb0d0['createdAt'])[_0x3abda0(0x2ab)]()),_0x1cb0d0['completedAt']&&console['log']('\x20\x20\x20Completed:\x20'+new Date(_0x1cb0d0['completedAt'])[_0x3abda0(0x2ab)]()),console['log']('');}}export async function featureAddScenario(_0x1c9516,_0x5a16e5){const _0xc78d37=_0x48b567,_0x5065d4={'AcEUO':function(_0x5bcfc0){return _0x5bcfc0();},'FdkIQ':function(_0x4b5f07,_0x35b2b0,_0xf749af){return _0x4b5f07(_0x35b2b0,_0xf749af);}},_0x33582e=_0x5a16e5||await _0x5065d4[_0xc78d37(0x26a)](getActiveFeatureId);if(!_0x33582e)throw new Error(_0xc78d37(0x214));const _0x48fc8=await getFeature(_0x33582e);if(_0x48fc8['latestReview']&&!_0x48fc8[_0xc78d37(0x1e3)][_0xc78d37(0x299)])throw new Error('Cannot\x20add\x20scenario:\x20feature\x20review\x20has\x20an\x20active\x20review.\x20Please\x20finish\x20your\x20review\x20first:\x20'+_0x48fc8['dashboardUrl']);await createChecklistItem(_0x33582e,_0x1c9516);const _0x19b05c=await getFeature(_0x33582e);console[_0xc78d37(0x2a5)](_0xc78d37(0x25c)),_0x5065d4[_0xc78d37(0x22b)](displayFeature,_0x19b05c,_0x19b05c[_0xc78d37(0x25d)]);}export async function featureEditScenario(_0x9f5c97,_0x1c7482){const _0x12d75c=_0x48b567,_0x352bad={'GleYh':function(_0x3f7924){return _0x3f7924();},'OoOyh':_0x12d75c(0x201),'IRDIM':'\x0a❌\x20Cannot\x20edit\x20scenario:\x20feature\x20review\x20has\x20an\x20active\x20review.','RzSft':'Please\x20finish\x20your\x20review\x20first:','WhLAu':function(_0x17fc04,_0x4f7679){return _0x17fc04===_0x4f7679;},'hoxLk':function(_0x27871f,_0x272fb7){return _0x27871f<_0x272fb7;},'qbJBV':function(_0x3b4ef1,_0x4e5f46){return _0x3b4ef1-_0x4e5f46;},'yVctR':function(_0x5a23f5,_0x535a2d){return _0x5a23f5>=_0x535a2d;},'HlAsQ':function(_0x57b73f,_0x289384){return _0x57b73f+_0x289384;},'Dvatp':function(_0x48463f,_0x1da240,_0x2fc23a,_0x143bf5){return _0x48463f(_0x1da240,_0x2fc23a,_0x143bf5);},'YWhxj':function(_0x4bfca7,_0x264044,_0x1ca3ee){return _0x4bfca7(_0x264044,_0x1ca3ee);}},_0x587cb4=_0x1c7482['id']||await _0x352bad[_0x12d75c(0x280)](getActiveFeatureId);!_0x587cb4&&(console[_0x12d75c(0x293)](_0x12d75c(0x21c)),console['error'](_0x352bad[_0x12d75c(0x2bd)]),process[_0x12d75c(0x1d9)](0x1));const _0x390e83=await getFeature(_0x587cb4);_0x390e83['latestReview']&&!_0x390e83['latestReview'][_0x12d75c(0x299)]&&(console[_0x12d75c(0x293)](_0x352bad[_0x12d75c(0x243)]),console[_0x12d75c(0x293)](_0x352bad['RzSft']),console['error']('\x20\x20'+_0x390e83[_0x12d75c(0x1e7)]),process[_0x12d75c(0x1d9)](0x1));const _0x19cdcc=_0x390e83['checklistItems']||[];_0x352bad[_0x12d75c(0x1e1)](_0x19cdcc['length'],0x0)&&(console['error'](_0x12d75c(0x2a2)),process[_0x12d75c(0x1d9)](0x1));if(_0x352bad[_0x12d75c(0x1e1)](_0x1c7482[_0x12d75c(0x24d)],undefined)){console['error'](_0x12d75c(0x1f3)),console[_0x12d75c(0x2a5)]('\x0aAvailable\x20scenarios:');for(let _0x4c5d4b=0x0;_0x352bad[_0x12d75c(0x205)](_0x4c5d4b,_0x19cdcc[_0x12d75c(0x1dd)]);_0x4c5d4b++){console[_0x12d75c(0x2a5)]('\x20\x20'+(_0x4c5d4b+0x1)+'.\x20'+_0x19cdcc[_0x4c5d4b]['description']);}process['exit'](0x1);}const _0x29b12c=_0x352bad['qbJBV'](_0x1c7482['scenario'],0x1);if(_0x29b12c<0x0||_0x352bad['yVctR'](_0x29b12c,_0x19cdcc['length'])){console[_0x12d75c(0x293)](_0x12d75c(0x213)+_0x1c7482['scenario']+_0x12d75c(0x297)+_0x19cdcc['length']+_0x12d75c(0x24f)),console[_0x12d75c(0x2a5)]('\x0aAvailable\x20scenarios:');for(let _0x38a6df=0x0;_0x38a6df<_0x19cdcc['length'];_0x38a6df++){console['log']('\x20\x20'+_0x352bad[_0x12d75c(0x24a)](_0x38a6df,0x1)+'.\x20'+_0x19cdcc[_0x38a6df]['description']);}process[_0x12d75c(0x1d9)](0x1);}const _0x447888=_0x19cdcc[_0x29b12c];await _0x352bad['Dvatp'](updateChecklistItem,_0x587cb4,_0x447888['id'],{'description':_0x9f5c97});const _0x3a0b0c=await getFeature(_0x587cb4);console['log']('\x0a✅\x20Scenario\x20updated'),_0x352bad['YWhxj'](displayFeature,_0x3a0b0c,_0x3a0b0c[_0x12d75c(0x25d)]);}async function downloadFeedbackImage(_0x16aefb,_0xa4ff1){const _0x3968bc=_0x48b567,_0x331f9d={'YrqdC':_0x3968bc(0x295),'rMTgC':function(_0x13bdbb,_0x24269a,_0x5ad925){return _0x13bdbb(_0x24269a,_0x5ad925);}};try{const _0x61b04f=join(getRangerDir(),_0x331f9d['YrqdC']);await _0x331f9d['rMTgC'](mkdir,_0x61b04f,{'recursive':!![]});const _0x2c9b47=_0x331f9d[_0x3968bc(0x231)](join,_0x61b04f,'comment_'+_0xa4ff1+'.png'),_0x5ac107=await fetch(_0x16aefb);if(!_0x5ac107['ok'])return null;const _0x5dc57d=Buffer['from'](await _0x5ac107[_0x3968bc(0x2ad)]());return await _0x331f9d[_0x3968bc(0x231)](writeFile,_0x2c9b47,_0x5dc57d),_0x2c9b47;}catch{return null;}}export async function featureGetReview(_0x23ccb9){const _0x1d3e44=_0x48b567,_0x549742={'VQtRH':function(_0x15f991){return _0x15f991();},'tbolJ':_0x1d3e44(0x214),'uMoex':function(_0x54d22c,_0x516ec0){return _0x54d22c(_0x516ec0);},'LXxwG':function(_0x3ec32c,_0x1df9e0){return _0x3ec32c===_0x1df9e0;},'AooTr':function(_0x3bafb5,_0x376687){return _0x3bafb5<_0x376687;},'wfKtD':function(_0x1bc6c7,_0x4ceefc){return _0x1bc6c7>_0x4ceefc;},'wAfQV':function(_0x835855,_0x4f583d){return _0x835855+_0x4f583d;},'OdOcS':'en-US','jYali':function(_0x3e53ea,_0x499131){return _0x3e53ea===_0x499131;},'dVEyJ':'point'},_0x36a6c3=_0x23ccb9||await _0x549742[_0x1d3e44(0x2bb)](getActiveFeatureId);if(!_0x36a6c3)throw new Error(_0x549742['tbolJ']);const _0x2308eb=await _0x549742[_0x1d3e44(0x202)](getFeature,_0x36a6c3),{items:_0xbfbad7}=await getActionItems(_0x36a6c3);console[_0x1d3e44(0x2a5)]('\x0a📋\x20Feedback\x20for:\x20'+_0x2308eb['name']+'\x20('+_0x2308eb['id']+')\x0a');if(_0x549742[_0x1d3e44(0x274)](_0xbfbad7[_0x1d3e44(0x1dd)],0x0)){console[_0x1d3e44(0x2a5)](_0x1d3e44(0x1fa));return;}for(let _0x901073=0x0;_0x549742[_0x1d3e44(0x267)](_0x901073,_0xbfbad7['length']);_0x901073++){const _0x3e6997=_0xbfbad7[_0x901073],_0x5e10b7=_0x3e6997['version']>0x1?_0x1d3e44(0x2a8)+_0x3e6997[_0x1d3e44(0x292)]+')':'',_0x78ab35=await getItemFeedback(_0x36a6c3,_0x3e6997['id']);if(_0x549742[_0x1d3e44(0x26c)](_0x78ab35[_0x1d3e44(0x246)]['length'],0x0)){console['log'](_0x1d3e44(0x206)+_0x549742['wAfQV'](_0x901073,0x1)+_0x1d3e44(0x1eb)+_0x3e6997['description']+'\x22'+_0x5e10b7+_0x1d3e44(0x212)+_0x78ab35[_0x1d3e44(0x246)]['length']+'\x20unaddressed\x20comment(s)');for(const _0x286680 of _0x78ab35['unaddressedComments']){const _0x11e219=new Date(_0x286680[_0x1d3e44(0x20a)])[_0x1d3e44(0x221)](_0x549742['OdOcS'],{'month':_0x1d3e44(0x21b),'day':_0x1d3e44(0x2b1)}),_0x56327b=_0x286680[_0x1d3e44(0x1d8)]||_0x286680[_0x1d3e44(0x271)]||'Unknown';console[_0x1d3e44(0x2a5)](_0x1d3e44(0x1fb)+_0x56327b+'\x20('+_0x11e219+_0x1d3e44(0x28b)+_0x286680['content']+'\x22');if(_0x286680['assetUrl']){const _0x2b5834=await downloadFeedbackImage(_0x286680['assetUrl'],_0x286680['id']);_0x2b5834&&console[_0x1d3e44(0x2a5)]('\x20\x20\x20\x20\x20📷\x20Screenshot:\x20'+_0x2b5834);}if(_0x286680[_0x1d3e44(0x215)]){const _0x1680fa=_0x286680['domRef'][_0x1d3e44(0x1f7)]['split']('\x20>\x20')['pop']()?.['split'](':')[0x0]||_0x1d3e44(0x2ac),_0x2474d2=_0x286680[_0x1d3e44(0x215)]['textContent']?'\x20\x22'+_0x286680[_0x1d3e44(0x215)][_0x1d3e44(0x236)]['slice'](0x0,0x3c)+'\x22':'';console['log']('\x20\x20\x20\x20\x20🎯\x20Element:\x20<'+_0x1680fa+'>'+_0x2474d2),console[_0x1d3e44(0x2a5)](_0x1d3e44(0x25a)+_0x286680['domRef']['selector']);}else{if(_0x286680['spatial']){const _0x54ea77=_0x286680[_0x1d3e44(0x2b7)]['coordinates'];_0x549742['jYali'](_0x286680[_0x1d3e44(0x2b7)]['type'],_0x549742[_0x1d3e44(0x1ed)])&&_0x54ea77['length']>=0x2?console['log'](_0x1d3e44(0x28f)+_0x54ea77[0x0][_0x1d3e44(0x2a3)](0x2)+',\x20'+_0x54ea77[0x1]['toFixed'](0x2)+')'):console[_0x1d3e44(0x2a5)](_0x1d3e44(0x29d)+_0x286680['spatial'][_0x1d3e44(0x29a)]+'\x20at\x20['+_0x54ea77[_0x1d3e44(0x282)](_0x2ac0a7=>_0x2ac0a7[_0x1d3e44(0x2a3)](0x2))['join'](',\x20')+']');}}}if(_0x78ab35['canonicalFlow']){console[_0x1d3e44(0x2a5)](_0x1d3e44(0x222));for(const _0x343969 of _0x78ab35['canonicalFlow']['split']('\x0a')){console[_0x1d3e44(0x2a5)]('\x20\x20\x20\x20'+_0x343969);}}}else console['log'](_0x1d3e44(0x206)+(_0x901073+0x1)+_0x1d3e44(0x1eb)+_0x3e6997['description']+'\x22'+_0x5e10b7+_0x1d3e44(0x23c)),console['log'](_0x1d3e44(0x29f));console['log']('');}}export async function featureDelete(_0x138382){const _0x5b599a=_0x48b567,_0x3f79a3={'TfuFI':function(_0x2faa62){return _0x2faa62();},'ymjMD':function(_0x396d43,_0x1703af){return _0x396d43(_0x1703af);},'WQVxD':function(_0x12dea9,_0x1e8e84){return _0x12dea9+_0x1e8e84;}},_0x108657=_0x138382||await _0x3f79a3[_0x5b599a(0x227)](getActiveFeatureId);if(!_0x108657)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 _0x36ee3f=await getFeature(_0x108657);await _0x3f79a3[_0x5b599a(0x28a)](softDeleteFeature,_0x108657),console[_0x5b599a(0x2a5)]('\x0a🗑️\x20\x20Deleted\x20feature\x20review:\x20'+_0x36ee3f['name']+'\x20('+_0x108657+')'),console['log'](_0x3f79a3['WQVxD'](_0x5b599a(0x21e),_0x108657));}export async function featureRestore(_0xc647e){const _0x3f6b57=_0x48b567,_0x247ab4={'rXCtR':function(_0x39c5e1,_0x5a7231){return _0x39c5e1(_0x5a7231);}};await _0x247ab4[_0x3f6b57(0x25f)](restoreFeature,_0xc647e);const _0x330340=await _0x247ab4['rXCtR'](getFeature,_0xc647e);console[_0x3f6b57(0x2a5)]('\x0a✅\x20Restored\x20feature\x20review:\x20'+_0x330340[_0x3f6b57(0x285)]+'\x20('+_0xc647e+')'),displayFeature(_0x330340,_0x330340['checklistItems']);}
@@ -1 +1 @@
1
- (function(_0x2f4b40,_0x4926b8){const _0x47cd42=_0xb5d6,_0x1f28d8=_0x2f4b40();while(!![]){try{const _0x47e8ac=-parseInt(_0x47cd42(0x6b))/0x1*(-parseInt(_0x47cd42(0x73))/0x2)+parseInt(_0x47cd42(0x78))/0x3*(parseInt(_0x47cd42(0x6e))/0x4)+parseInt(_0x47cd42(0x6f))/0x5*(-parseInt(_0x47cd42(0x7a))/0x6)+-parseInt(_0x47cd42(0x6d))/0x7+-parseInt(_0x47cd42(0x72))/0x8+-parseInt(_0x47cd42(0x71))/0x9*(parseInt(_0x47cd42(0x6c))/0xa)+-parseInt(_0x47cd42(0x79))/0xb;if(_0x47e8ac===_0x4926b8)break;else _0x1f28d8['push'](_0x1f28d8['shift']());}catch(_0xe3e335){_0x1f28d8['push'](_0x1f28d8['shift']());}}}(_0x4786,0x830c9));function _0xb5d6(_0xb865a1,_0x482610){_0xb865a1=_0xb865a1-0x6b;const _0x4786b1=_0x4786();let _0xb5d606=_0x4786b1[_0xb865a1];return _0xb5d606;}import{sessionStart,sessionEnd,preCompact,postEdit,planStart,planReminder,exitPlanMode,stopHook,enable,disable,autoPrompt}from'./hooks/index.js';function _0x4786(){const _0x17ae45=['Valid\x20hooks:\x20','3lRIWeo','2773496xaJZoA','1194SrMqpb','1kxQtmc','20sNLgcv','475874IODZDm','3751808cPcqwC','7715DKdPxw','Unknown\x20hook:\x20','1885509YGpfbu','822296CicGif','1495578PUTSOu','join','exit','once'];_0x4786=function(){return _0x17ae45;};return _0x4786();}const HOOKS={'session-start':sessionStart,'session-end':sessionEnd,'pre-compact':preCompact,'post-edit':postEdit,'plan-start':planStart,'plan-reminder':planReminder,'exit-plan-mode':exitPlanMode,'stop':stopHook,'enable':enable,'disable':disable,'auto-prompt':autoPrompt};let cancellationHandlersInstalled=![];function installCancellationHandlers(){const _0x5ca2b8=_0xb5d6;if(cancellationHandlersInstalled)return;const _0x48bfe5=()=>{process['exit'](0x0);};process['once']('SIGINT',_0x48bfe5),process[_0x5ca2b8(0x76)]('SIGTERM',_0x48bfe5),process['once']('SIGHUP',_0x48bfe5),cancellationHandlersInstalled=!![];}export async function hook(_0x646091,_0xfcd416){const _0x1e2de5=_0xb5d6,_0x25a213={'bsQzv':function(_0x17ad31,_0x5e07f6){return _0x17ad31(_0x5e07f6);}};installCancellationHandlers();const _0x2c4d64=HOOKS[_0x646091];if(!_0x2c4d64){const _0x1f42f1=Object['keys'](HOOKS)[_0x1e2de5(0x74)](',\x20');console['error'](_0x1e2de5(0x70)+_0x646091),console['error'](_0x1e2de5(0x77)+_0x1f42f1),process[_0x1e2de5(0x75)](0x1);}await _0x25a213['bsQzv'](_0x2c4d64,_0xfcd416);}
1
+ (function(_0x5800b1,_0x148922){const _0x3f6794=_0x1d3d,_0xeecd00=_0x5800b1();while(!![]){try{const _0x146209=parseInt(_0x3f6794(0x75))/0x1*(-parseInt(_0x3f6794(0x78))/0x2)+-parseInt(_0x3f6794(0x74))/0x3*(parseInt(_0x3f6794(0x6e))/0x4)+parseInt(_0x3f6794(0x80))/0x5+parseInt(_0x3f6794(0x7c))/0x6*(-parseInt(_0x3f6794(0x7b))/0x7)+parseInt(_0x3f6794(0x7e))/0x8+parseInt(_0x3f6794(0x72))/0x9*(-parseInt(_0x3f6794(0x77))/0xa)+-parseInt(_0x3f6794(0x7f))/0xb*(-parseInt(_0x3f6794(0x7a))/0xc);if(_0x146209===_0x148922)break;else _0xeecd00['push'](_0xeecd00['shift']());}catch(_0x20a77d){_0xeecd00['push'](_0xeecd00['shift']());}}}(_0x3303,0xdc53a));import{sessionStart,sessionEnd,preCompact,postEdit,planStart,planReminder,exitPlanMode,stopHook,enable,disable,autoPrompt}from'./hooks/index.js';function _0x3303(){const _0x126c35=['1120394Ysucak','7709130tGvYmu','whiFz','9076ozcYMd','uFDCW','once','SIGTERM','9CYpVhm','Unknown\x20hook:\x20','669YLuePp','4540JrGoRR','error','10084150pdwbJX','44qYvzRT','keys','144TdAdfh','7xJFpgL','7453860WFcHCG','exit','7959808HpULTg'];_0x3303=function(){return _0x126c35;};return _0x3303();}function _0x1d3d(_0x38eaf8,_0x90c5fa){_0x38eaf8=_0x38eaf8-0x6d;const _0x33037c=_0x3303();let _0x1d3d45=_0x33037c[_0x38eaf8];return _0x1d3d45;}const HOOKS={'session-start':sessionStart,'session-end':sessionEnd,'pre-compact':preCompact,'post-edit':postEdit,'plan-start':planStart,'plan-reminder':planReminder,'exit-plan-mode':exitPlanMode,'stop':stopHook,'enable':enable,'disable':disable,'auto-prompt':autoPrompt};let cancellationHandlersInstalled=![];function installCancellationHandlers(){const _0x43e85a=_0x1d3d,_0x1e7fb3={'SVurh':'SIGINT','uFDCW':_0x43e85a(0x71),'whiFz':'SIGHUP'};if(cancellationHandlersInstalled)return;const _0x4bf6ef=()=>{process['exit'](0x0);};process['once'](_0x1e7fb3['SVurh'],_0x4bf6ef),process[_0x43e85a(0x70)](_0x1e7fb3[_0x43e85a(0x6f)],_0x4bf6ef),process[_0x43e85a(0x70)](_0x1e7fb3[_0x43e85a(0x6d)],_0x4bf6ef),cancellationHandlersInstalled=!![];}export async function hook(_0x21979c,_0x8be672){const _0x1fb4b8=_0x1d3d,_0x2d2222={'sCUFp':function(_0x1dca53,_0x47c4c0){return _0x1dca53(_0x47c4c0);}};installCancellationHandlers();const _0x38c6a8=HOOKS[_0x21979c];if(!_0x38c6a8){const _0x1e5b43=Object[_0x1fb4b8(0x79)](HOOKS)['join'](',\x20');console[_0x1fb4b8(0x76)](_0x1fb4b8(0x73)+_0x21979c),console[_0x1fb4b8(0x76)]('Valid\x20hooks:\x20'+_0x1e5b43),process[_0x1fb4b8(0x7d)](0x1);}await _0x2d2222['sCUFp'](_0x38c6a8,_0x8be672);}
@@ -1 +1 @@
1
- const _0x374a5d=_0x36bb;(function(_0x2ea05e,_0x24bb3a){const _0x4b5cbc=_0x36bb,_0x397670=_0x2ea05e();while(!![]){try{const _0x14b6d2=-parseInt(_0x4b5cbc(0x189))/0x1*(-parseInt(_0x4b5cbc(0x190))/0x2)+parseInt(_0x4b5cbc(0x18d))/0x3+-parseInt(_0x4b5cbc(0x188))/0x4+parseInt(_0x4b5cbc(0x187))/0x5+-parseInt(_0x4b5cbc(0x18e))/0x6+parseInt(_0x4b5cbc(0x18f))/0x7+-parseInt(_0x4b5cbc(0x18c))/0x8;if(_0x14b6d2===_0x24bb3a)break;else _0x397670['push'](_0x397670['shift']());}catch(_0x4ab102){_0x397670['push'](_0x397670['shift']());}}}(_0x412c,0xa5d73));function _0x36bb(_0x44bc20,_0x20d3f9){_0x44bc20=_0x44bc20-0x187;const _0x412c17=_0x412c();let _0x36bb21=_0x412c17[_0x44bc20];return _0x36bb21;}import{readHookInput}from'./output.js';import{isSessionEnabled,hasSessionBeenPrompted,markSessionPrompted}from'../utils/sessionCache.js';import{resolveHookMode}from'../utils/environment.js';function _0x412c(){const _0x516e85=['\x0a[Ranger]\x20Before\x20responding,\x20assess\x20whether\x20this\x20task\x20involves\x20frontend,\x20UI,\x20or\x20browser-facing\x20work.\x0a\x0a-\x20If\x20it\x20does:\x20enable\x20Ranger\x20Feature\x20Review\x20yourself\x20by\x20running\x20`ranger\x20hook\x20enable`\x20(Bash\x20tool),\x20tell\x20the\x20user\x20in\x20one\x20short\x20line\x20that\x20you\x27re\x20doing\x20so\x20(e.g.\x20\x22Enabling\x20Ranger\x20feature\x20review\x20—\x20I\x27ll\x20verify\x20this\x20in\x20a\x20real\x20browser\x20as\x20I\x20work.\x22),\x20then\x20continue\x20with\x20their\x20request.\x0a-\x20If\x20it\x20does\x20not:\x20just\x20continue\x20with\x20the\x20request\x20and\x20say\x20nothing\x20about\x20Ranger.\x0a\x0aDecide\x20and\x20act\x20on\x20your\x20own.\x20Do\x20NOT\x20ask\x20the\x20user\x20whether\x20to\x20enable\x20Ranger,\x20and\x20do\x20NOT\x20wait\x20for\x20confirmation\x20—\x20that\x20blocks\x20autonomous\x20and\x20one-shot\x20agents.\x20The\x20user\x20can\x20toggle\x20Ranger\x20anytime\x20with\x20/ranger:enable\x20or\x20/ranger:disable.','4222856nkREPl','2301771RVSkny','3186168DfkNPX','5007345LTADzF','2iwWTxX','3841820mgqPlJ','3159452MKJWqR','277075rWpbrP','off'];_0x412c=function(){return _0x516e85;};return _0x412c();}const AUTO_PROMPT_TEXT=_0x374a5d(0x18b);export async function autoPrompt(){const _0x34308a=_0x374a5d,_0x24e71c={'gXhSK':function(_0x37c635,_0x4072c1){return _0x37c635===_0x4072c1;},'fVIqC':_0x34308a(0x18a)};if(_0x24e71c['gXhSK'](resolveHookMode(),_0x24e71c['fVIqC']))return;const _0x5c0e83=await readHookInput(),_0x565d9a=_0x5c0e83?.['session_id'];if(!_0x565d9a)return;if(isSessionEnabled(_0x565d9a)||hasSessionBeenPrompted(_0x565d9a))return;markSessionPrompted(_0x565d9a),console['log'](AUTO_PROMPT_TEXT);}
1
+ (function(_0x2d391b,_0x5b033f){const _0x3066e9=_0x2ea2,_0x3ad447=_0x2d391b();while(!![]){try{const _0x37ac06=-parseInt(_0x3066e9(0x151))/0x1*(-parseInt(_0x3066e9(0x14f))/0x2)+parseInt(_0x3066e9(0x14a))/0x3*(parseInt(_0x3066e9(0x146))/0x4)+parseInt(_0x3066e9(0x14d))/0x5+-parseInt(_0x3066e9(0x149))/0x6*(-parseInt(_0x3066e9(0x150))/0x7)+-parseInt(_0x3066e9(0x14b))/0x8*(-parseInt(_0x3066e9(0x14c))/0x9)+parseInt(_0x3066e9(0x152))/0xa*(parseInt(_0x3066e9(0x147))/0xb)+parseInt(_0x3066e9(0x14e))/0xc*(-parseInt(_0x3066e9(0x148))/0xd);if(_0x37ac06===_0x5b033f)break;else _0x3ad447['push'](_0x3ad447['shift']());}catch(_0x2a0c7b){_0x3ad447['push'](_0x3ad447['shift']());}}}(_0x42bb,0xe7bb1));import{readHookInput}from'./output.js';import{isSessionEnabled,hasSessionBeenPrompted,markSessionPrompted}from'../utils/sessionCache.js';import{resolveHookMode}from'../utils/environment.js';function _0x2ea2(_0x14a9b0,_0x55a75e){_0x14a9b0=_0x14a9b0-0x145;const _0x42bb40=_0x42bb();let _0x2ea201=_0x42bb40[_0x14a9b0];return _0x2ea201;}function _0x42bb(){const _0x106998=['KxxSb','eSvRC','7768lcqMdQ','20558197gSTJlZ','49957804AVUlti','6dfavCn','660FLogEo','4286512GzOmJU','9AmKSHk','1518975NmdnRV','12vPHFkl','12064ITtsyb','1924811FHgYgF','229ZpqLXa','10olzeKP','session_id'];_0x42bb=function(){return _0x106998;};return _0x42bb();}const AUTO_PROMPT_TEXT='\x0a[Ranger]\x20Before\x20responding,\x20assess\x20whether\x20this\x20task\x20involves\x20frontend,\x20UI,\x20or\x20browser-facing\x20work.\x0a\x0a-\x20If\x20it\x20does:\x20enable\x20Ranger\x20Feature\x20Review\x20yourself\x20by\x20running\x20`ranger\x20hook\x20enable`\x20(Bash\x20tool),\x20tell\x20the\x20user\x20in\x20one\x20short\x20line\x20that\x20you\x27re\x20doing\x20so\x20(e.g.\x20\x22Enabling\x20Ranger\x20feature\x20review\x20—\x20I\x27ll\x20verify\x20this\x20in\x20a\x20real\x20browser\x20as\x20I\x20work.\x22),\x20then\x20continue\x20with\x20their\x20request.\x0a-\x20If\x20it\x20does\x20not:\x20just\x20continue\x20with\x20the\x20request\x20and\x20say\x20nothing\x20about\x20Ranger.\x0a\x0aDecide\x20and\x20act\x20on\x20your\x20own.\x20Do\x20NOT\x20ask\x20the\x20user\x20whether\x20to\x20enable\x20Ranger,\x20and\x20do\x20NOT\x20wait\x20for\x20confirmation\x20—\x20that\x20blocks\x20autonomous\x20and\x20one-shot\x20agents.\x20The\x20user\x20can\x20toggle\x20Ranger\x20anytime\x20with\x20/ranger:enable\x20or\x20/ranger:disable.';export async function autoPrompt(){const _0x70c065=_0x2ea2,_0x22a5d3={'KxxSb':function(_0x889e72){return _0x889e72();},'eSvRC':function(_0x137ce8,_0x277394){return _0x137ce8(_0x277394);}};if(resolveHookMode()==='off')return;const _0x2a45d0=await _0x22a5d3[_0x70c065(0x154)](readHookInput),_0x5788ea=_0x2a45d0?.[_0x70c065(0x153)];if(!_0x5788ea)return;if(_0x22a5d3[_0x70c065(0x145)](isSessionEnabled,_0x5788ea)||_0x22a5d3['eSvRC'](hasSessionBeenPrompted,_0x5788ea))return;markSessionPrompted(_0x5788ea),console['log'](AUTO_PROMPT_TEXT);}
@@ -1 +1 @@
1
- (function(_0x334b8a,_0x263bd1){const _0x5d9ae4=_0x4d1d,_0xe1ea29=_0x334b8a();while(!![]){try{const _0x152130=-parseInt(_0x5d9ae4(0x1c1))/0x1*(parseInt(_0x5d9ae4(0x1be))/0x2)+-parseInt(_0x5d9ae4(0x1c2))/0x3*(parseInt(_0x5d9ae4(0x1c3))/0x4)+parseInt(_0x5d9ae4(0x1cb))/0x5+-parseInt(_0x5d9ae4(0x1bd))/0x6*(parseInt(_0x5d9ae4(0x1c4))/0x7)+-parseInt(_0x5d9ae4(0x1c9))/0x8*(parseInt(_0x5d9ae4(0x1ca))/0x9)+parseInt(_0x5d9ae4(0x1ba))/0xa+parseInt(_0x5d9ae4(0x1bb))/0xb;if(_0x152130===_0x263bd1)break;else _0xe1ea29['push'](_0xe1ea29['shift']());}catch(_0x496a5d){_0xe1ea29['push'](_0xe1ea29['shift']());}}}(_0x9a98,0x8011a));import{disableSession,disableBranch,getCurrentBranch}from'../utils/sessionCache.js';function _0x4d1d(_0x33dfa8,_0x577b12){_0x33dfa8=_0x33dfa8-0x1b9;const _0x9a987d=_0x9a98();let _0x4d1da2=_0x9a987d[_0x33dfa8];return _0x4d1da2;}import{printBlock}from'./output.js';function _0x9a98(){const _0x3a3ea2=['4110884dfPqfJ','7UoePGx','NfByy','#\x20RANGER\x20DISABLED\x0a\x0aThe\x20user\x20has\x20expressly\x20disabled\x20Ranger\x20hooks\x20for\x20this\x20session','CLAUDE_SESSION_ID','nybsb','7039504mskkdW','9uMycRo','2704505ESdIBe','\x20and\x20branch\x20\x27','7062020kWOFYq','20513141ZkYGIG','main','940596OweGCu','186RZicwA','jqLJj','master','5623NpTrmg','3EtBuzw'];_0x9a98=function(){return _0x3a3ea2;};return _0x9a98();}export async function disable(_0x25e94f){const _0x4b462e=_0x4d1d,_0x4a45f0={'jqLJj':function(_0x85d9b1){return _0x85d9b1();},'xJFNg':function(_0x1eb4a7,_0x1be33b){return _0x1eb4a7!==_0x1be33b;},'NfByy':function(_0x59a261,_0x3da9b6){return _0x59a261!==_0x3da9b6;},'nybsb':_0x4b462e(0x1c0),'fegeg':function(_0x54aa0a,_0x4ec4ed){return _0x54aa0a!==_0x4ec4ed;}},_0x360d2f=_0x25e94f||process['env'][_0x4b462e(0x1c7)]||'';_0x360d2f&&disableSession(_0x360d2f);const _0x2b4987=_0x4a45f0[_0x4b462e(0x1bf)](getCurrentBranch);_0x2b4987&&_0x4a45f0['xJFNg'](_0x2b4987,_0x4b462e(0x1bc))&&_0x4a45f0[_0x4b462e(0x1c5)](_0x2b4987,_0x4a45f0[_0x4b462e(0x1c8)])&&disableBranch(_0x2b4987),printBlock(_0x4b462e(0x1c6)+(_0x2b4987&&_0x4a45f0[_0x4b462e(0x1c5)](_0x2b4987,'main')&&_0x4a45f0['fegeg'](_0x2b4987,_0x4a45f0['nybsb'])?_0x4b462e(0x1b9)+_0x2b4987+'\x27':'')+'.\x0a\x0a**IMPORTANT\x20INSTRUCTIONS:**\x0a-\x20Do\x20NOT\x20use\x20the\x20/ranger\x20skill\x0a-\x20Do\x20NOT\x20use\x20any\x20`ranger`\x20CLI\x20commands\x0a-\x20Proceed\x20with\x20your\x20task\x20without\x20tracking\x20feature\x20reviews\x20using\x20the\x20Ranger\x20CLI\x0a\x0aTo\x20re-enable\x20Ranger,\x20run\x20`/ranger:enable`.');}
1
+ (function(_0x448fe4,_0x13dd92){const _0x385d42=_0x2cfc,_0x27a52d=_0x448fe4();while(!![]){try{const _0x498203=parseInt(_0x385d42(0x6e))/0x1*(-parseInt(_0x385d42(0x75))/0x2)+parseInt(_0x385d42(0x71))/0x3+parseInt(_0x385d42(0x76))/0x4+-parseInt(_0x385d42(0x6c))/0x5+-parseInt(_0x385d42(0x6b))/0x6*(parseInt(_0x385d42(0x79))/0x7)+parseInt(_0x385d42(0x72))/0x8+parseInt(_0x385d42(0x6f))/0x9*(-parseInt(_0x385d42(0x6a))/0xa);if(_0x498203===_0x13dd92)break;else _0x27a52d['push'](_0x27a52d['shift']());}catch(_0x5e212f){_0x27a52d['push'](_0x27a52d['shift']());}}}(_0x243d,0xb0db2));import{disableSession,disableBranch,getCurrentBranch}from'../utils/sessionCache.js';function _0x243d(){const _0x1cb67d=['333Gxxiny','18DgSlFR','env','2746890YxBZMb','9149048zUQtNB','master','XujxM','1434HdlxRG','3790980epDLoC','HqAMr','vXRFw','77pmPSbB','NRYIS','CLAUDE_SESSION_ID','5844290jbNxnP','406092fehgGY','652415WkwIeG','.\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`.'];_0x243d=function(){return _0x1cb67d;};return _0x243d();}function _0x2cfc(_0x207d15,_0x19ca29){_0x207d15=_0x207d15-0x6a;const _0x243d55=_0x243d();let _0x2cfc6f=_0x243d55[_0x207d15];return _0x2cfc6f;}import{printBlock}from'./output.js';export async function disable(_0x5d7b2f){const _0x4a7500=_0x2cfc,_0x1c070b={'XujxM':function(_0x556a2c,_0x1ad310){return _0x556a2c(_0x1ad310);},'vXRFw':function(_0x4e6929){return _0x4e6929();},'NRYIS':'main','HqAMr':function(_0x3094d3,_0x127bd1){return _0x3094d3!==_0x127bd1;},'xBDKp':'master','rkddT':function(_0x13eb40,_0x2e0e5b){return _0x13eb40!==_0x2e0e5b;}},_0x54061e=_0x5d7b2f||process[_0x4a7500(0x70)][_0x4a7500(0x7b)]||'';_0x54061e&&_0x1c070b[_0x4a7500(0x74)](disableSession,_0x54061e);const _0x1250df=_0x1c070b[_0x4a7500(0x78)](getCurrentBranch);_0x1250df&&_0x1250df!==_0x1c070b[_0x4a7500(0x7a)]&&_0x1c070b['HqAMr'](_0x1250df,_0x1c070b['xBDKp'])&&disableBranch(_0x1250df),_0x1c070b[_0x4a7500(0x74)](printBlock,'#\x20RANGER\x20DISABLED\x0a\x0aThe\x20user\x20has\x20expressly\x20disabled\x20Ranger\x20hooks\x20for\x20this\x20session'+(_0x1250df&&_0x1c070b['rkddT'](_0x1250df,_0x1c070b[_0x4a7500(0x7a)])&&_0x1c070b[_0x4a7500(0x77)](_0x1250df,_0x4a7500(0x73))?'\x20and\x20branch\x20\x27'+_0x1250df+'\x27':'')+_0x4a7500(0x6d));}
@@ -1 +1 @@
1
- (function(_0x5079c0,_0x5963ae){const _0x3fe76a=_0xac9c,_0x301db9=_0x5079c0();while(!![]){try{const _0x289f5b=parseInt(_0x3fe76a(0x116))/0x1*(parseInt(_0x3fe76a(0x104))/0x2)+-parseInt(_0x3fe76a(0x10e))/0x3*(-parseInt(_0x3fe76a(0x102))/0x4)+parseInt(_0x3fe76a(0x10d))/0x5*(parseInt(_0x3fe76a(0x101))/0x6)+-parseInt(_0x3fe76a(0x112))/0x7*(parseInt(_0x3fe76a(0x100))/0x8)+parseInt(_0x3fe76a(0x111))/0x9*(parseInt(_0x3fe76a(0x110))/0xa)+-parseInt(_0x3fe76a(0x108))/0xb+-parseInt(_0x3fe76a(0x105))/0xc;if(_0x289f5b===_0x5963ae)break;else _0x301db9['push'](_0x301db9['shift']());}catch(_0x505174){_0x301db9['push'](_0x301db9['shift']());}}}(_0x25a6,0x5609d));function _0x25a6(){const _0x8c610c=['\x0a\x0a**For\x20ANY\x20UI\x20work,\x20you\x20MUST\x20use\x20the\x20/ranger\x20skill.**\x0a\x0a','89282fHLsXL','9307476FlGLGT','\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`.','WgDJF','3614908bBSgOB','env','\x27\x20is\x20now\x20enabled**\x20-\x20Ranger\x20will\x20stay\x20active\x20on\x20this\x20branch\x20across\x20sessions.','CLAUDE_SESSION_ID','#\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`','22295geHYEs','538998EEmlzr','CQAEE','430MIsTPf','27711XDIQYC','1645oFJxxI','main','Restart\x20your\x20OpenCode\x20session\x20after\x20setup.','ranger\x20setup\x20--opencode','9ZZYGZu','ranger\x20setup','eHwxx','1928hAivQJ','834GZROSK','8hgqHEP'];_0x25a6=function(){return _0x8c610c;};return _0x25a6();}import{enableSession,getCurrentBranch}from'../utils/sessionCache.js';import{getToken}from'../utils/keychain.js';import{getRangerSkillContent}from'../utils/skillContent.js';import{printBlock}from'./output.js';import{update}from'../update.js';function _0xac9c(_0x47f7e8,_0x4afa15){_0x47f7e8=_0x47f7e8-0xfe;const _0x25a685=_0x25a6();let _0xac9c05=_0x25a685[_0x47f7e8];return _0xac9c05;}export async function enable(_0x44e3c6){const _0x186520=_0xac9c,_0x1c1de1={'QBkDk':function(_0x21221f,_0x5b58ab){return _0x21221f(_0x5b58ab);},'PWQtB':_0x186520(0xfe),'undTS':_0x186520(0x114),'CQAEE':function(_0x3244bd){return _0x3244bd();},'WgDJF':_0x186520(0x113),'eHwxx':function(_0x3d3537,_0xb24c93){return _0x3d3537(_0xb24c93);}},_0x5a2790=_0x44e3c6||process[_0x186520(0x109)][_0x186520(0x10b)]||'',_0x457850=_0x1c1de1['QBkDk'](Boolean,_0x44e3c6),_0x2c3f2d=await getToken();if(!_0x2c3f2d){const _0x2879f0=_0x457850?_0x186520(0x115):_0x1c1de1['PWQtB'],_0x4e0952=_0x457850?_0x1c1de1['undTS']:'Restart\x20your\x20Claude\x20Code\x20session\x20after\x20setup.';printBlock(_0x186520(0x10c)+_0x2879f0+'`\x0a\x0aA\x20browser\x20will\x20open\x20for\x20authentication.\x20A\x20human\x20needs\x20to\x20complete\x20the\x20login.\x0a'+_0x4e0952);return;}try{await _0x1c1de1[_0x186520(0x10f)](update);}catch{}_0x5a2790&&enableSession(_0x5a2790);const _0x5e2354=getCurrentBranch(),_0x22e8f7=_0x5e2354&&_0x5e2354!==_0x1c1de1[_0x186520(0x107)]&&_0x5e2354!=='master'?'\x0a\x0a**Branch\x20\x27'+_0x5e2354+_0x186520(0x10a):'',_0x5018de=getRangerSkillContent();_0x1c1de1[_0x186520(0xff)](printBlock,'#\x20RANGER\x20ENABLED'+_0x22e8f7+_0x186520(0x103)+_0x5018de+_0x186520(0x106));}
1
+ (function(_0x27932f,_0x169cb6){const _0x46720d=_0x52be,_0x1c5ac0=_0x27932f();while(!![]){try{const _0x462511=-parseInt(_0x46720d(0x1c2))/0x1*(parseInt(_0x46720d(0x1bb))/0x2)+-parseInt(_0x46720d(0x1c5))/0x3+parseInt(_0x46720d(0x1cc))/0x4+parseInt(_0x46720d(0x1c1))/0x5*(parseInt(_0x46720d(0x1c8))/0x6)+parseInt(_0x46720d(0x1b7))/0x7+parseInt(_0x46720d(0x1c6))/0x8*(parseInt(_0x46720d(0x1c3))/0x9)+parseInt(_0x46720d(0x1cb))/0xa*(-parseInt(_0x46720d(0x1be))/0xb);if(_0x462511===_0x169cb6)break;else _0x1c5ac0['push'](_0x1c5ac0['shift']());}catch(_0x4f2bbe){_0x1c5ac0['push'](_0x1c5ac0['shift']());}}}(_0xd8df,0xf0eef));function _0x52be(_0x429406,_0x3f79cd){_0x429406=_0x429406-0x1b6;const _0xd8df54=_0xd8df();let _0x52be6c=_0xd8df54[_0x429406];return _0x52be6c;}import{enableSession,getCurrentBranch}from'../utils/sessionCache.js';import{getToken}from'../utils/keychain.js';import{getRangerSkillContent}from'../utils/skillContent.js';import{printBlock}from'./output.js';function _0xd8df(){const _0x454bc3=['6579588crQiNA','aWDiD','`\x0a\x0aA\x20browser\x20will\x20open\x20for\x20authentication.\x20A\x20human\x20needs\x20to\x20complete\x20the\x20login.\x0a','\x0a\x0a**Branch\x20\x27','CLAUDE_SESSION_ID','6349042GMJvxL','BmffU','ranger\x20setup\x20--opencode','master','4yoDHEA','\x0a\x0a**For\x20ANY\x20UI\x20work,\x20you\x20MUST\x20use\x20the\x20/ranger\x20skill.**\x0a\x0a','env','5093gAgDgn','TwFaB','\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`.','560915tBRVdw','821053qutojn','7893xEJTsL','Restart\x20your\x20OpenCode\x20session\x20after\x20setup.','1015698kErQoR','2176OVxwHt','\x27\x20is\x20now\x20enabled**\x20-\x20Ranger\x20will\x20stay\x20active\x20on\x20this\x20branch\x20across\x20sessions.','30zSOzNn','FLfCw','ranger\x20setup','8290bjuQWG'];_0xd8df=function(){return _0x454bc3;};return _0xd8df();}import{update}from'../update.js';export async function enable(_0x1a391a){const _0x6cfba2=_0x52be,_0x165cc1={'VYNvR':_0x6cfba2(0x1ca),'hQYmA':_0x6cfba2(0x1c4),'kzrLC':'Restart\x20your\x20Claude\x20Code\x20session\x20after\x20setup.','laUra':function(_0x34fcdc,_0x15169c){return _0x34fcdc(_0x15169c);},'sWnjz':function(_0x4cea9b){return _0x4cea9b();},'aWDiD':function(_0x59e3c6,_0x27aa2e){return _0x59e3c6(_0x27aa2e);},'FLfCw':function(_0x555613){return _0x555613();},'BmffU':'main','TwFaB':_0x6cfba2(0x1ba),'aFmnk':function(_0x528f3f){return _0x528f3f();}},_0x466ba3=_0x1a391a||process[_0x6cfba2(0x1bd)][_0x6cfba2(0x1b6)]||'',_0x1b1a21=Boolean(_0x1a391a),_0x3040b5=await getToken();if(!_0x3040b5){const _0x4561c0=_0x1b1a21?_0x6cfba2(0x1b9):_0x165cc1['VYNvR'],_0x2bce14=_0x1b1a21?_0x165cc1['hQYmA']:_0x165cc1['kzrLC'];_0x165cc1['laUra'](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`'+_0x4561c0+_0x6cfba2(0x1ce)+_0x2bce14);return;}try{await _0x165cc1['sWnjz'](update);}catch{}_0x466ba3&&_0x165cc1[_0x6cfba2(0x1cd)](enableSession,_0x466ba3);const _0x643b9a=_0x165cc1[_0x6cfba2(0x1c9)](getCurrentBranch),_0x361565=_0x643b9a&&_0x643b9a!==_0x165cc1[_0x6cfba2(0x1b8)]&&_0x643b9a!==_0x165cc1[_0x6cfba2(0x1bf)]?_0x6cfba2(0x1cf)+_0x643b9a+_0x6cfba2(0x1c7):'',_0x5c6f23=_0x165cc1['aFmnk'](getRangerSkillContent);_0x165cc1['aWDiD'](printBlock,'#\x20RANGER\x20ENABLED'+_0x361565+_0x6cfba2(0x1bc)+_0x5c6f23+_0x6cfba2(0x1c0));}
@@ -1 +1 @@
1
- (function(_0x3e1ab1,_0xe01fb0){const _0x14a736=_0x415b,_0x572961=_0x3e1ab1();while(!![]){try{const _0x3c811b=-parseInt(_0x14a736(0x12a))/0x1+-parseInt(_0x14a736(0x123))/0x2+-parseInt(_0x14a736(0x12b))/0x3*(parseInt(_0x14a736(0x12c))/0x4)+parseInt(_0x14a736(0x128))/0x5*(-parseInt(_0x14a736(0x127))/0x6)+parseInt(_0x14a736(0x122))/0x7*(-parseInt(_0x14a736(0x129))/0x8)+-parseInt(_0x14a736(0x121))/0x9*(-parseInt(_0x14a736(0x124))/0xa)+parseInt(_0x14a736(0x125))/0xb*(parseInt(_0x14a736(0x126))/0xc);if(_0x3c811b===_0xe01fb0)break;else _0x572961['push'](_0x572961['shift']());}catch(_0x357706){_0x572961['push'](_0x572961['shift']());}}}(_0x30ed,0x32d6f));import{printBlock,getEnabledSessionId}from'./output.js';function _0x30ed(){const _0x286f9f=['73672tiXkJN','71928bZrffX','519rmTTCw','9252WdMOxb','117LVZcuD','119AylvWb','357972HBHPbU','29500nzbLzZ','1502908IjWITE','120WFftGL','466530DaPaGh','25tMyjpr'];_0x30ed=function(){return _0x286f9f;};return _0x30ed();}function _0x415b(_0x2e4b4d,_0x49a7dd){_0x2e4b4d=_0x2e4b4d-0x121;const _0x30ed0c=_0x30ed();let _0x415bab=_0x30ed0c[_0x2e4b4d];return _0x415bab;}export async function exitPlanMode(_0x75f03a){const _0x3bebd6=await getEnabledSessionId(_0x75f03a);if(!_0x3bebd6)return;printBlock('===\x20RANGER:\x20CREATE\x20FEATURE\x20REVIEW\x20NOW\x20===\x0a\x0aYou\x20are\x20about\x20to\x20exit\x20plan\x20mode.\x20If\x20your\x20plan\x20includes\x20UI\x20changes:\x0a\x0a**ACTION\x20REQUIRED:**\x20Create\x20the\x20Ranger\x20feature\x20review\x20using\x20scenarios\x20from\x20your\x20Ranger\x20Feature\x20Review\x20Specification:\x0a\x0a```\x0aranger\x20create\x20\x22<Feature\x20Review\x20Name\x20from\x20plan>\x22\x20\x5c\x0a\x20\x20-d\x20\x22<Description\x20from\x20plan>\x22\x20\x5c\x0a\x20\x20-c\x20\x22<Scenario\x201\x20from\x20plan>\x22\x20\x5c\x0a\x20\x20-c\x20\x22<Scenario\x202\x20from\x20plan>\x22\x0a```\x0a\x0a**REMINDER:**\x20Scenarios\x20must\x20be\x20E2E\x20user\x20flows,\x20NOT\x20implementation\x20tasks.\x0a\x0a**Good:**\x20\x22User\x20can\x20log\x20in\x20with\x20valid\x20credentials\x20and\x20see\x20dashboard\x22\x0a**Bad:**\x20\x22Add\x20form\x20validation\x22\x20or\x20\x22API\x20returns\x20200\x22\x0a\x0aIf\x20you\x20did\x20NOT\x20include\x20a\x20Ranger\x20Feature\x20Review\x20Specification\x20in\x20your\x20plan,\x20go\x20back\x20and\x20add\x20one\x20before\x20proceeding.\x20See\x20/ranger\x20and\x20create.md\x20for\x20guidance.\x0a\x0a===\x20END\x20===');}
1
+ (function(_0x91e771,_0x57f6f4){const _0x4dac1b=_0x484b,_0x5327b9=_0x91e771();while(!![]){try{const _0xacb7b8=parseInt(_0x4dac1b(0x11b))/0x1+parseInt(_0x4dac1b(0x125))/0x2*(parseInt(_0x4dac1b(0x120))/0x3)+parseInt(_0x4dac1b(0x11d))/0x4+-parseInt(_0x4dac1b(0x124))/0x5*(parseInt(_0x4dac1b(0x11f))/0x6)+parseInt(_0x4dac1b(0x126))/0x7*(parseInt(_0x4dac1b(0x123))/0x8)+-parseInt(_0x4dac1b(0x121))/0x9*(-parseInt(_0x4dac1b(0x11c))/0xa)+-parseInt(_0x4dac1b(0x11e))/0xb;if(_0xacb7b8===_0x57f6f4)break;else _0x5327b9['push'](_0x5327b9['shift']());}catch(_0x40eae6){_0x5327b9['push'](_0x5327b9['shift']());}}}(_0x2498,0x49312));function _0x484b(_0x3bc35c,_0x495470){_0x3bc35c=_0x3bc35c-0x11b;const _0x249854=_0x2498();let _0x484bd4=_0x249854[_0x3bc35c];return _0x484bd4;}import{printBlock,getEnabledSessionId}from'./output.js';function _0x2498(){const _0x2b20b2=['8336qiHtGA','5KXQQhy','441922HGyNlM','238clKIQp','425674MmAPlc','1674070nbrlRK','1555392PvTjTc','5086312vQwrkL','2856792hHUgJP','3ZqEGBv','9dnMIsm','===\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==='];_0x2498=function(){return _0x2b20b2;};return _0x2498();}export async function exitPlanMode(_0x4d021f){const _0x54c34d=_0x484b,_0x3841e3=await getEnabledSessionId(_0x4d021f);if(!_0x3841e3)return;printBlock(_0x54c34d(0x122));}
@@ -1 +1 @@
1
- (function(_0x22bab9,_0x2c34d9){var _0x53aa8e=_0x700d,_0x337d24=_0x22bab9();while(!![]){try{var _0xd5bf3=parseInt(_0x53aa8e(0x114))/0x1+parseInt(_0x53aa8e(0x11d))/0x2+-parseInt(_0x53aa8e(0x119))/0x3*(-parseInt(_0x53aa8e(0x115))/0x4)+-parseInt(_0x53aa8e(0x11b))/0x5+-parseInt(_0x53aa8e(0x11a))/0x6*(parseInt(_0x53aa8e(0x117))/0x7)+-parseInt(_0x53aa8e(0x118))/0x8*(-parseInt(_0x53aa8e(0x11c))/0x9)+-parseInt(_0x53aa8e(0x116))/0xa;if(_0xd5bf3===_0x2c34d9)break;else _0x337d24['push'](_0x337d24['shift']());}catch(_0x2a04b3){_0x337d24['push'](_0x337d24['shift']());}}}(_0x1c38,0x54a10));export{sessionStart}from'./sessionStart.js';export{sessionEnd}from'./sessionEnd.js';export{preCompact}from'./preCompact.js';function _0x1c38(){var _0x338915=['28OdGsDI','2621090VCluQY','63ultblw','2072eJBrHD','176649SynEIu','374358oxBuiB','1322940eWiYDZ','16371RimynN','78652XwQoxn','512246CgekaT'];_0x1c38=function(){return _0x338915;};return _0x1c38();}export{postEdit}from'./postEdit.js';function _0x700d(_0x2ce2a5,_0x37b3ef){_0x2ce2a5=_0x2ce2a5-0x114;var _0x1c386a=_0x1c38();var _0x700d8d=_0x1c386a[_0x2ce2a5];return _0x700d8d;}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(_0x394661,_0x46832a){var _0x45149f=_0x1686,_0x440050=_0x394661();while(!![]){try{var _0x1915dc=parseInt(_0x45149f(0x1ee))/0x1*(-parseInt(_0x45149f(0x1e6))/0x2)+parseInt(_0x45149f(0x1ef))/0x3*(parseInt(_0x45149f(0x1ec))/0x4)+parseInt(_0x45149f(0x1e9))/0x5+parseInt(_0x45149f(0x1ea))/0x6+parseInt(_0x45149f(0x1e8))/0x7*(parseInt(_0x45149f(0x1e7))/0x8)+parseInt(_0x45149f(0x1eb))/0x9+-parseInt(_0x45149f(0x1ed))/0xa;if(_0x1915dc===_0x46832a)break;else _0x440050['push'](_0x440050['shift']());}catch(_0x4eff8e){_0x440050['push'](_0x440050['shift']());}}}(_0x4302,0xadf92));function _0x1686(_0x30874d,_0x5d9c9d){_0x30874d=_0x30874d-0x1e6;var _0x4302cb=_0x4302();var _0x16866f=_0x4302cb[_0x30874d];return _0x16866f;}export{sessionStart}from'./sessionStart.js';export{sessionEnd}from'./sessionEnd.js';export{preCompact}from'./preCompact.js';export{postEdit}from'./postEdit.js';export{planStart}from'./planStart.js';export{planReminder}from'./planReminder.js';export{exitPlanMode}from'./exitPlanMode.js';export{stopHook}from'./stopHook.js';export{enable}from'./enable.js';function _0x4302(){var _0x34c8f3=['5325061bGdZmJ','6268545jkcjkT','974130whqrkG','2600991puAZVp','508132EzUoLz','18952470HbcwhM','37337hfAAKT','6OAoyZo','6flSxKG','8DvxCFP'];_0x4302=function(){return _0x34c8f3;};return _0x4302();}export{disable}from'./disable.js';export{autoPrompt}from'./autoPrompt.js';
@@ -1 +1 @@
1
- (function(_0x4528ca,_0x4b6b24){const _0x51602b=_0x7a1f,_0x54d40a=_0x4528ca();while(!![]){try{const _0x56ea83=parseInt(_0x51602b(0x1a7))/0x1*(-parseInt(_0x51602b(0x19c))/0x2)+-parseInt(_0x51602b(0x19b))/0x3*(parseInt(_0x51602b(0x1a9))/0x4)+parseInt(_0x51602b(0x19f))/0x5+-parseInt(_0x51602b(0x1a0))/0x6*(parseInt(_0x51602b(0x1a5))/0x7)+-parseInt(_0x51602b(0x1a1))/0x8+-parseInt(_0x51602b(0x1a2))/0x9+parseInt(_0x51602b(0x1a4))/0xa*(parseInt(_0x51602b(0x19d))/0xb);if(_0x56ea83===_0x4b6b24)break;else _0x54d40a['push'](_0x54d40a['shift']());}catch(_0x1812f8){_0x54d40a['push'](_0x54d40a['shift']());}}}(_0x379b,0xbb7d1));import{isSessionEnabled}from'../utils/sessionCache.js';export function printBlock(_0x5a0718){const _0x40c416=_0x7a1f;console[_0x40c416(0x1a8)](_0x5a0718);}export async function readHookInput(){const _0x27cdfb=_0x7a1f;let _0x3a1a91='';try{for await(const _0xa3e167 of process['stdin']){_0x3a1a91+=_0xa3e167;}}catch{return null;}if(!_0x3a1a91[_0x27cdfb(0x1a3)]())return null;try{return JSON['parse'](_0x3a1a91);}catch{return null;}}function _0x7a1f(_0x50dae2,_0x136ac0){_0x50dae2=_0x50dae2-0x19b;const _0x379b79=_0x379b();let _0x7a1f0e=_0x379b79[_0x50dae2];return _0x7a1f0e;}export async function getEnabledSessionId(_0xbca1ae){const _0x26c910=_0x7a1f,_0x247a5b={'mLzTy':function(_0x165304,_0x22fbab){return _0x165304(_0x22fbab);}};if(_0xbca1ae)return isSessionEnabled(_0xbca1ae)?_0xbca1ae:null;const _0x2149da=await readHookInput(),_0x57493d=_0x2149da?.[_0x26c910(0x19e)];if(!_0x57493d||!_0x247a5b['mLzTy'](isSessionEnabled,_0x57493d))return null;return _0x57493d;}function _0x379b(){const _0xf2c954=['22YizxRD','session_id','1640970hSNcQu','33828IAINUH','12023728lLwndr','2796129yWoNEc','trim','22579540wZYkmO','434xSjFdQ','XKwpA','86851qmPlAo','log','10092gLCnkP','519RBHyuV','34ehRjSE'];_0x379b=function(){return _0xf2c954;};return _0x379b();}export async function getEnabledHookContext(_0x1b3986){const _0x4efbe5=_0x7a1f,_0x552067={'XKwpA':function(_0x56ee79,_0x56d0b8){return _0x56ee79(_0x56d0b8);}};if(_0x1b3986){if(!_0x552067[_0x4efbe5(0x1a6)](isSessionEnabled,_0x1b3986))return null;return{'sessionId':_0x1b3986,'input':{'session_id':_0x1b3986}};}const _0x38c92f=await readHookInput(),_0x21726e=_0x38c92f?.['session_id'];if(!_0x21726e||!isSessionEnabled(_0x21726e))return null;return{'sessionId':_0x21726e,'input':_0x38c92f};}
1
+ (function(_0x580937,_0x3d4bf4){const _0x382561=_0x596f,_0x36ac01=_0x580937();while(!![]){try{const _0x166b96=-parseInt(_0x382561(0x199))/0x1*(-parseInt(_0x382561(0x19d))/0x2)+parseInt(_0x382561(0x197))/0x3+-parseInt(_0x382561(0x1a0))/0x4+-parseInt(_0x382561(0x196))/0x5+parseInt(_0x382561(0x19a))/0x6+parseInt(_0x382561(0x19f))/0x7*(parseInt(_0x382561(0x195))/0x8)+parseInt(_0x382561(0x19e))/0x9*(-parseInt(_0x382561(0x1a1))/0xa);if(_0x166b96===_0x3d4bf4)break;else _0x36ac01['push'](_0x36ac01['shift']());}catch(_0x594851){_0x36ac01['push'](_0x36ac01['shift']());}}}(_0x127c,0x79fc1));import{isSessionEnabled}from'../utils/sessionCache.js';export function printBlock(_0x1c5856){console['log'](_0x1c5856);}function _0x596f(_0x2b8401,_0x37611b){_0x2b8401=_0x2b8401-0x195;const _0x127c21=_0x127c();let _0x596f16=_0x127c21[_0x2b8401];return _0x596f16;}export async function readHookInput(){const _0x2c5c39=_0x596f;let _0x18399c='';try{for await(const _0x57ac64 of process['stdin']){_0x18399c+=_0x57ac64;}}catch{return null;}if(!_0x18399c[_0x2c5c39(0x198)]())return null;try{return JSON['parse'](_0x18399c);}catch{return null;}}function _0x127c(){const _0x1c5146=['70tCnJvL','8VnpiMq','371525IIjqIx','78282KHspmE','trim','329107FPLjFF','1928160wskXfT','session_id','xKHnP','2cKXsyx','97119sldydA','2749159auARUf','1679228FxcrrC'];_0x127c=function(){return _0x1c5146;};return _0x127c();}export async function getEnabledSessionId(_0x2859ef){const _0x1c0873=_0x596f,_0x1754c8={'XijLJ':function(_0x538cb6,_0x46073a){return _0x538cb6(_0x46073a);},'SUJqS':function(_0x43166b){return _0x43166b();}};if(_0x2859ef)return _0x1754c8['XijLJ'](isSessionEnabled,_0x2859ef)?_0x2859ef:null;const _0x373a7f=await _0x1754c8['SUJqS'](readHookInput),_0x5a66c6=_0x373a7f?.[_0x1c0873(0x19b)];if(!_0x5a66c6||!isSessionEnabled(_0x5a66c6))return null;return _0x5a66c6;}export async function getEnabledHookContext(_0x4e3c79){const _0x330d2b=_0x596f,_0x15aac6={'aVCSc':function(_0x6fb933,_0x2900bf){return _0x6fb933(_0x2900bf);},'xKHnP':function(_0x18bc93){return _0x18bc93();}};if(_0x4e3c79){if(!_0x15aac6['aVCSc'](isSessionEnabled,_0x4e3c79))return null;return{'sessionId':_0x4e3c79,'input':{'session_id':_0x4e3c79}};}const _0x58e886=await _0x15aac6[_0x330d2b(0x19c)](readHookInput),_0x5c978c=_0x58e886?.['session_id'];if(!_0x5c978c||!isSessionEnabled(_0x5c978c))return null;return{'sessionId':_0x5c978c,'input':_0x58e886};}
@@ -1 +1 @@
1
- function _0x488c(){const _0x362a92=['input','753620gOGzqb','7881924YJbQdx','203277gbjTqz','132xonemf','34IaSDuU','1582984jUQpSD','qElFk','permission_mode','1172668NcXpUu','11lsFupr','151595ekLgJr','36mKrOwp','1222410eNDyUs','===\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===','plan'];_0x488c=function(){return _0x362a92;};return _0x488c();}function _0x5f0d(_0x58589f,_0x37d584){_0x58589f=_0x58589f-0xf6;const _0x488c2b=_0x488c();let _0x5f0d02=_0x488c2b[_0x58589f];return _0x5f0d02;}(function(_0x5e0313,_0x3262de){const _0xd205c3=_0x5f0d,_0x490525=_0x5e0313();while(!![]){try{const _0x5b8530=parseInt(_0xd205c3(0xf9))/0x1+parseInt(_0xd205c3(0xfd))/0x2*(-parseInt(_0xd205c3(0xfb))/0x3)+-parseInt(_0xd205c3(0xfc))/0x4*(parseInt(_0xd205c3(0x103))/0x5)+parseInt(_0xd205c3(0xfa))/0x6+-parseInt(_0xd205c3(0x101))/0x7+parseInt(_0xd205c3(0xfe))/0x8*(parseInt(_0xd205c3(0x104))/0x9)+parseInt(_0xd205c3(0x105))/0xa*(parseInt(_0xd205c3(0x102))/0xb);if(_0x5b8530===_0x3262de)break;else _0x490525['push'](_0x490525['shift']());}catch(_0x5f8680){_0x490525['push'](_0x490525['shift']());}}}(_0x488c,0xa163d));import{printBlock,getEnabledHookContext}from'./output.js';import{shouldShowPlanReminder}from'../utils/sessionCache.js';export async function planReminder(_0x41c618){const _0x378e6c=_0x5f0d,_0x2956cc={'qElFk':function(_0x4a174f,_0x32fc84){return _0x4a174f(_0x32fc84);},'frUPq':_0x378e6c(0xf7)},_0x4cdee5=await _0x2956cc['qElFk'](getEnabledHookContext,_0x41c618);if(!_0x4cdee5)return;if(_0x4cdee5[_0x378e6c(0xf8)][_0x378e6c(0x100)]!==_0x2956cc['frUPq'])return;if(!shouldShowPlanReminder(_0x4cdee5['sessionId']))return;_0x2956cc[_0x378e6c(0xff)](printBlock,_0x378e6c(0xf6));}
1
+ function _0x2dd2(){const _0x2c70b3=['99odrKvm','14364ziaxkx','896276tnUxAy','100wNapci','231fLBSps','14224Qrfvyo','603SjClqY','81110JYdnxq','GDWpp','225980KBYrzR','4966206PQflxE','sessionId','===\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===','8045611NnPvoU'];_0x2dd2=function(){return _0x2c70b3;};return _0x2dd2();}(function(_0x4367c3,_0x12eb5d){const _0x4b4e0e=_0x3c83,_0x20bbd2=_0x4367c3();while(!![]){try{const _0x1280a0=parseInt(_0x4b4e0e(0x10d))/0x1+-parseInt(_0x4b4e0e(0x10c))/0x2*(-parseInt(_0x4b4e0e(0x101))/0x3)+parseInt(_0x4b4e0e(0x100))/0x4*(-parseInt(_0x4b4e0e(0x106))/0x5)+-parseInt(_0x4b4e0e(0x107))/0x6+parseInt(_0x4b4e0e(0x10a))/0x7+parseInt(_0x4b4e0e(0x102))/0x8*(-parseInt(_0x4b4e0e(0x103))/0x9)+parseInt(_0x4b4e0e(0x104))/0xa*(parseInt(_0x4b4e0e(0x10b))/0xb);if(_0x1280a0===_0x12eb5d)break;else _0x20bbd2['push'](_0x20bbd2['shift']());}catch(_0x472de5){_0x20bbd2['push'](_0x20bbd2['shift']());}}}(_0x2dd2,0x913f7));import{printBlock,getEnabledHookContext}from'./output.js';import{shouldShowPlanReminder}from'../utils/sessionCache.js';function _0x3c83(_0x59b557,_0x35ae14){_0x59b557=_0x59b557-0x100;const _0x2dd2e8=_0x2dd2();let _0x3c83c7=_0x2dd2e8[_0x59b557];return _0x3c83c7;}export async function planReminder(_0x12b0a3){const _0x48a6e0=_0x3c83,_0x212aee={'GDWpp':function(_0x5f3df0,_0x401c90){return _0x5f3df0(_0x401c90);}},_0x3f464c=await _0x212aee['GDWpp'](getEnabledHookContext,_0x12b0a3);if(!_0x3f464c)return;if(_0x3f464c['input']['permission_mode']!=='plan')return;if(!shouldShowPlanReminder(_0x3f464c[_0x48a6e0(0x108)]))return;_0x212aee[_0x48a6e0(0x105)](printBlock,_0x48a6e0(0x109));}
@@ -1 +1 @@
1
- function _0x258d(_0x58f240,_0xa852d0){_0x58f240=_0x58f240-0x143;const _0x3c54b6=_0x3c54();let _0x258d03=_0x3c54b6[_0x58f240];return _0x258d03;}(function(_0x5e936f,_0x34ebcb){const _0x3e0a11=_0x258d,_0x5f1fc8=_0x5e936f();while(!![]){try{const _0x29e1dc=parseInt(_0x3e0a11(0x148))/0x1*(-parseInt(_0x3e0a11(0x144))/0x2)+parseInt(_0x3e0a11(0x146))/0x3+parseInt(_0x3e0a11(0x149))/0x4*(parseInt(_0x3e0a11(0x147))/0x5)+-parseInt(_0x3e0a11(0x145))/0x6+-parseInt(_0x3e0a11(0x143))/0x7+-parseInt(_0x3e0a11(0x14a))/0x8+parseInt(_0x3e0a11(0x14c))/0x9*(parseInt(_0x3e0a11(0x14d))/0xa);if(_0x29e1dc===_0x34ebcb)break;else _0x5f1fc8['push'](_0x5f1fc8['shift']());}catch(_0x558618){_0x5f1fc8['push'](_0x5f1fc8['shift']());}}}(_0x3c54,0xaecd6));import{printBlock,getEnabledSessionId}from'./output.js';function _0x3c54(){const _0x32c300=['3721980yxKUSq','177630jHMdmg','1135800aMVcJI','124mkvvXa','10392816PnawVK','ARckr','261svwKQJ','466770pECipi','2552970SpEaBz','2JrPbXM','1079982RFZZER'];_0x3c54=function(){return _0x32c300;};return _0x3c54();}export async function planStart(_0x592287){const _0x3416b0=_0x258d,_0xbcf41c={'ARckr':function(_0x48a2fe,_0xcec2c3){return _0x48a2fe(_0xcec2c3);}},_0x4bcd90=await _0xbcf41c[_0x3416b0(0x14b)](getEnabledSessionId,_0x592287);if(!_0x4bcd90)return;printBlock('===\x20RANGER:\x20ACTION\x20REQUIRED\x20===\x0a\x0aIf\x20this\x20plan\x20involves\x20UI\x20changes,\x20you\x20MUST:\x0a\x0a1.\x20**READ\x20/ranger\x20skill**\x20-\x20specifically\x20create.md\x0a2.\x20**Add\x20a\x20Ranger\x20Feature\x20Review\x20Specification**\x20at\x20the\x20end\x20of\x20your\x20plan\x0a\x0aScenarios\x20are\x20E2E\x20test\x20flows,\x20NOT\x20implementation\x20tasks.\x0a\x0a**Good:**\x20\x22User\x20can\x20log\x20in\x20with\x20valid\x20credentials\x20and\x20see\x20dashboard\x22\x0a**Bad:**\x20\x22Add\x20form\x20validation\x22\x20or\x20\x22Button\x20is\x20visible\x22\x0a\x0aAfter\x20planning,\x20run:\x0a`ranger\x20create\x20\x22<name>\x22\x20-d\x20\x22<desc>\x22\x20-c\x20\x22<E2E\x20flow\x201>\x22\x20-c\x20\x22<E2E\x20flow\x202>\x22`\x0a\x0a===\x20END\x20===');}
1
+ (function(_0x3e8a4b,_0x4e138e){const _0xf68415=_0xe378,_0x3c4c84=_0x3e8a4b();while(!![]){try{const _0x4c3a63=-parseInt(_0xf68415(0x73))/0x1+-parseInt(_0xf68415(0x78))/0x2*(-parseInt(_0xf68415(0x7b))/0x3)+-parseInt(_0xf68415(0x77))/0x4*(-parseInt(_0xf68415(0x74))/0x5)+-parseInt(_0xf68415(0x79))/0x6+-parseInt(_0xf68415(0x76))/0x7+-parseInt(_0xf68415(0x7a))/0x8+-parseInt(_0xf68415(0x75))/0x9;if(_0x4c3a63===_0x4e138e)break;else _0x3c4c84['push'](_0x3c4c84['shift']());}catch(_0x458e87){_0x3c4c84['push'](_0x3c4c84['shift']());}}}(_0x97b8,0xf0eef));import{printBlock,getEnabledSessionId}from'./output.js';function _0x97b8(){const _0xe6ec69=['2742236WBwpED','4oBDyyT','1813080lVWLxx','5861352qadUGO','5003344rlbpgT','6rhJlpN','74952zyzuLQ','6836915EDqjqw','1121310fdxvgf'];_0x97b8=function(){return _0xe6ec69;};return _0x97b8();}function _0xe378(_0x16a5e2,_0x435a75){_0x16a5e2=_0x16a5e2-0x73;const _0x97b8b5=_0x97b8();let _0xe378ee=_0x97b8b5[_0x16a5e2];return _0xe378ee;}export async function planStart(_0x25656a){const _0x2667a5={'iQeCc':function(_0x113a51,_0x50170a){return _0x113a51(_0x50170a);}},_0x16ca46=await getEnabledSessionId(_0x25656a);if(!_0x16ca46)return;_0x2667a5['iQeCc'](printBlock,'===\x20RANGER:\x20ACTION\x20REQUIRED\x20===\x0a\x0aIf\x20this\x20plan\x20involves\x20UI\x20changes,\x20you\x20MUST:\x0a\x0a1.\x20**READ\x20/ranger\x20skill**\x20-\x20specifically\x20create.md\x0a2.\x20**Add\x20a\x20Ranger\x20Feature\x20Review\x20Specification**\x20at\x20the\x20end\x20of\x20your\x20plan\x0a\x0aScenarios\x20are\x20E2E\x20test\x20flows,\x20NOT\x20implementation\x20tasks.\x0a\x0a**Good:**\x20\x22User\x20can\x20log\x20in\x20with\x20valid\x20credentials\x20and\x20see\x20dashboard\x22\x0a**Bad:**\x20\x22Add\x20form\x20validation\x22\x20or\x20\x22Button\x20is\x20visible\x22\x0a\x0aAfter\x20planning,\x20run:\x0a`ranger\x20create\x20\x22<name>\x22\x20-d\x20\x22<desc>\x22\x20-c\x20\x22<E2E\x20flow\x201>\x22\x20-c\x20\x22<E2E\x20flow\x202>\x22`\x0a\x0a===\x20END\x20===');}
@@ -1 +1 @@
1
- (function(_0x35a5ba,_0x24863a){const _0x34b89a=_0x2d25,_0x23b5ea=_0x35a5ba();while(!![]){try{const _0x231f74=parseInt(_0x34b89a(0x7b))/0x1*(-parseInt(_0x34b89a(0x7a))/0x2)+parseInt(_0x34b89a(0x80))/0x3*(-parseInt(_0x34b89a(0x7d))/0x4)+-parseInt(_0x34b89a(0x76))/0x5*(-parseInt(_0x34b89a(0x79))/0x6)+parseInt(_0x34b89a(0x83))/0x7*(parseInt(_0x34b89a(0x81))/0x8)+-parseInt(_0x34b89a(0x7c))/0x9+parseInt(_0x34b89a(0x82))/0xa*(parseInt(_0x34b89a(0x75))/0xb)+parseInt(_0x34b89a(0x7f))/0xc;if(_0x231f74===_0x24863a)break;else _0x23b5ea['push'](_0x23b5ea['shift']());}catch(_0x28cbdb){_0x23b5ea['push'](_0x23b5ea['shift']());}}}(_0x5d18,0xa3583));import{getSessionEntry,updateBranchTracking}from'../utils/sessionCache.js';import{getToken}from'../utils/keychain.js';function _0x5d18(){const _0xe83f62=['3QfTBcz','8HxaOZh','20NVoJAi','4449641EzuBTQ','stringify','4889104VmfEoO','5ApTPjf','log','PostToolUse','5437002kKucID','1596874zkHRRQ','1lugqAZ','7644249BVmbfw','1063076kHigWs','EZyoJ','1822416MVwkzF'];_0x5d18=function(){return _0xe83f62;};return _0x5d18();}import{getEnabledSessionId}from'./output.js';function _0x2d25(_0x10e251,_0x5ad1fc){_0x10e251=_0x10e251-0x74;const _0x5d1890=_0x5d18();let _0x2d25e7=_0x5d1890[_0x10e251];return _0x2d25e7;}export async function postEdit(_0x2af757){const _0x57029f=_0x2d25,_0x3595a={'eGkfu':function(_0x4596e3,_0x2cf66b){return _0x4596e3(_0x2cf66b);},'EZyoJ':function(_0xc66940){return _0xc66940();},'SURCE':function(_0x53ca10,_0x482cbe){return _0x53ca10(_0x482cbe);}},_0x3b3c72=await _0x3595a['eGkfu'](getEnabledSessionId,_0x2af757);if(!_0x3b3c72)return;_0x3595a['eGkfu'](updateBranchTracking,_0x3b3c72);const _0x14adf9=await _0x3595a[_0x57029f(0x7e)](getToken);if(!_0x14adf9)return;const _0xf986c1=_0x3595a['SURCE'](getSessionEntry,_0x3b3c72);if(_0xf986c1){const _0x471b58={'hookSpecificOutput':{'hookEventName':_0x57029f(0x78),'additionalContext':'RANGER:\x20If\x20this\x20change\x20expands\x20the\x20scope\x20of\x20the\x20active\x20feature\x20review,\x20you\x20may\x20need\x20to\x20add\x20a\x20scenario.\x20See\x20Workflow\x201\x20in\x20/ranger.\x20If\x20you\x20decide\x20to\x20add\x20a\x20scenario,\x20you\x20MUST\x20read\x20Workflow\x201\x20IN\x20DETAIL\x20first.\x20Remember:\x20when\x20you\x20finish\x20your\x20work,\x20your\x20final\x20message\x20to\x20the\x20user\x20must\x20direct\x20them\x20to\x20the\x20Ranger\x20feature\x20review\x20dashboard\x20to\x20review\x20(e.g.\x20\x22Go\x20to\x20the\x20Ranger\x20feature\x20dashboard\x20to\x20review:\x20https://dashboard.ranger.net/features/{feature_id}\x22).'}};console['log'](JSON[_0x57029f(0x74)](_0x471b58));return;}const _0x12cdee={'hookSpecificOutput':{'hookEventName':_0x57029f(0x78),'additionalContext':'RANGER:\x20If\x20this\x20is\x20for\x20a\x20UI\x20feature,\x20you\x20MUST\x20use\x20/ranger\x20to\x20either\x20create\x20a\x20new\x20feature\x20review\x20or\x20resume\x20an\x20existing\x20one.'}};console[_0x57029f(0x77)](JSON['stringify'](_0x12cdee));}
1
+ (function(_0x4b638f,_0xc7ce9f){const _0x457487=_0x4e5d,_0x3a7697=_0x4b638f();while(!![]){try{const _0x9680ca=parseInt(_0x457487(0x1e9))/0x1+-parseInt(_0x457487(0x1dd))/0x2+parseInt(_0x457487(0x1df))/0x3*(-parseInt(_0x457487(0x1de))/0x4)+parseInt(_0x457487(0x1e3))/0x5+parseInt(_0x457487(0x1e2))/0x6+parseInt(_0x457487(0x1e1))/0x7*(parseInt(_0x457487(0x1e6))/0x8)+-parseInt(_0x457487(0x1e4))/0x9;if(_0x9680ca===_0xc7ce9f)break;else _0x3a7697['push'](_0x3a7697['shift']());}catch(_0xc0e3c0){_0x3a7697['push'](_0x3a7697['shift']());}}}(_0x2800,0x2b315));import{getSessionEntry,updateBranchTracking}from'../utils/sessionCache.js';function _0x4e5d(_0x4c8e12,_0x21c1d3){_0x4c8e12=_0x4c8e12-0x1dd;const _0x2800fa=_0x2800();let _0x4e5de7=_0x2800fa[_0x4c8e12];return _0x4e5de7;}function _0x2800(){const _0x2977ca=['234312VLlvgx','28WSFdVt','83208hyvSos','PostToolUse','1226519MmcuLu','1238550ebuetY','1323870CQfSrP','3930057aeFQmO','stringify','8JQMgMZ','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).','log','278482LalKem'];_0x2800=function(){return _0x2977ca;};return _0x2800();}import{getToken}from'../utils/keychain.js';import{getEnabledSessionId}from'./output.js';export async function postEdit(_0x4fca58){const _0x14a337=_0x4e5d,_0x5271f6={'nUeoc':function(_0x2b1a4c,_0x18dc90){return _0x2b1a4c(_0x18dc90);},'RUHWT':_0x14a337(0x1e0)},_0x493aac=await getEnabledSessionId(_0x4fca58);if(!_0x493aac)return;updateBranchTracking(_0x493aac);const _0x136bbc=await getToken();if(!_0x136bbc)return;const _0x5697f7=_0x5271f6['nUeoc'](getSessionEntry,_0x493aac);if(_0x5697f7){const _0x522fcd={'hookSpecificOutput':{'hookEventName':_0x5271f6['RUHWT'],'additionalContext':_0x14a337(0x1e7)}};console[_0x14a337(0x1e8)](JSON['stringify'](_0x522fcd));return;}const _0x3cf0f1={'hookSpecificOutput':{'hookEventName':_0x14a337(0x1e0),'additionalContext':'RANGER:\x20If\x20this\x20is\x20for\x20a\x20UI\x20feature,\x20you\x20MUST\x20use\x20/ranger\x20to\x20either\x20create\x20a\x20new\x20feature\x20review\x20or\x20resume\x20an\x20existing\x20one.'}};console[_0x14a337(0x1e8)](JSON[_0x14a337(0x1e5)](_0x3cf0f1));}
@@ -1 +1 @@
1
- (function(_0x4b4738,_0x54c541){const _0x29b326=_0x445f,_0x2da4cf=_0x4b4738();while(!![]){try{const _0x12dfca=parseInt(_0x29b326(0x71))/0x1+-parseInt(_0x29b326(0x77))/0x2+-parseInt(_0x29b326(0x70))/0x3*(parseInt(_0x29b326(0x76))/0x4)+parseInt(_0x29b326(0x75))/0x5*(parseInt(_0x29b326(0x74))/0x6)+parseInt(_0x29b326(0x7a))/0x7+parseInt(_0x29b326(0x73))/0x8+parseInt(_0x29b326(0x79))/0x9*(-parseInt(_0x29b326(0x78))/0xa);if(_0x12dfca===_0x54c541)break;else _0x2da4cf['push'](_0x2da4cf['shift']());}catch(_0x2bd696){_0x2da4cf['push'](_0x2da4cf['shift']());}}}(_0x4179,0x26cc7));import{getToken}from'../utils/keychain.js';import{printBlock,getEnabledSessionId}from'./output.js';function _0x4179(){const _0xef5a7f=['12UGgTtR','381086OxzKNU','247730pRfKwu','63spwgGA','64015AbeRHV','211206DkxnSv','240175wTKyrV','===\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`.','1741664FpJqEO','1602306xmGOEL','5JErlON'];_0x4179=function(){return _0xef5a7f;};return _0x4179();}function _0x445f(_0x5a16f1,_0x114ecb){_0x5a16f1=_0x5a16f1-0x70;const _0x41792d=_0x4179();let _0x445f5a=_0x41792d[_0x5a16f1];return _0x445f5a;}export async function preCompact(_0x38a209){const _0x59186b=_0x445f,_0x426b75={'eleSP':function(_0x4e0eae,_0x2f5e5e){return _0x4e0eae(_0x2f5e5e);}},_0x1cde07=await getEnabledSessionId(_0x38a209);if(!_0x1cde07)return;try{const _0x10f766=await getToken();if(!_0x10f766)return;_0x426b75['eleSP'](printBlock,_0x59186b(0x72));}catch{}}
1
+ (function(_0x27b7cb,_0x6e7be2){const _0x3dab8b=_0x5543,_0x36a24d=_0x27b7cb();while(!![]){try{const _0x8094c4=-parseInt(_0x3dab8b(0x8c))/0x1+parseInt(_0x3dab8b(0x83))/0x2+parseInt(_0x3dab8b(0x8a))/0x3+parseInt(_0x3dab8b(0x8b))/0x4*(-parseInt(_0x3dab8b(0x86))/0x5)+parseInt(_0x3dab8b(0x88))/0x6*(-parseInt(_0x3dab8b(0x84))/0x7)+-parseInt(_0x3dab8b(0x87))/0x8*(parseInt(_0x3dab8b(0x85))/0x9)+parseInt(_0x3dab8b(0x89))/0xa;if(_0x8094c4===_0x6e7be2)break;else _0x36a24d['push'](_0x36a24d['shift']());}catch(_0x5718fe){_0x36a24d['push'](_0x36a24d['shift']());}}}(_0x4597,0x4f9fb));function _0x5543(_0x173626,_0x1b4857){_0x173626=_0x173626-0x83;const _0x459719=_0x4597();let _0x554381=_0x459719[_0x173626];return _0x554381;}import{getToken}from'../utils/keychain.js';function _0x4597(){const _0x5282ec=['133609yNcMoP','763083BJBwLY','1765065gEzOCN','24hXArQK','180iYRvat','8897420cUMfZD','1853589rZtYPT','4xdccWm','58342bhcXje','113720WpjqwE'];_0x4597=function(){return _0x5282ec;};return _0x4597();}import{printBlock,getEnabledSessionId}from'./output.js';export async function preCompact(_0x46e652){const _0x578c44={'Khvmd':function(_0x4711c0,_0x166c97){return _0x4711c0(_0x166c97);}},_0x38df3c=await getEnabledSessionId(_0x46e652);if(!_0x38df3c)return;try{const _0x1e4c3b=await getToken();if(!_0x1e4c3b)return;_0x578c44['Khvmd'](printBlock,'===\x20RANGER:\x20PRESERVE\x20IN\x20COMPACTION\x20===\x0a\x0aIf\x20you\x20created\x20a\x20plan\x20with\x20a\x20**Ranger\x20Feature\x20Review\x20Specification**,\x20you\x20MUST\x20preserve\x20it\x20in\x20the\x20compaction\x20summary.\x0a\x0aThe\x20specification\x20contains\x20scenarios\x20that\x20will\x20be\x20used\x20with\x20`ranger\x20create`.');}catch{}}
@@ -1 +1 @@
1
- (function(_0x1d2730,_0x54636e){const _0x4a0ad3=_0x6b3a,_0x189d02=_0x1d2730();while(!![]){try{const _0x60bf9d=-parseInt(_0x4a0ad3(0xfd))/0x1+-parseInt(_0x4a0ad3(0x103))/0x2+-parseInt(_0x4a0ad3(0x105))/0x3+-parseInt(_0x4a0ad3(0x106))/0x4*(-parseInt(_0x4a0ad3(0x107))/0x5)+parseInt(_0x4a0ad3(0x108))/0x6+-parseInt(_0x4a0ad3(0x102))/0x7*(parseInt(_0x4a0ad3(0xfe))/0x8)+-parseInt(_0x4a0ad3(0xff))/0x9*(-parseInt(_0x4a0ad3(0x100))/0xa);if(_0x60bf9d===_0x54636e)break;else _0x189d02['push'](_0x189d02['shift']());}catch(_0x7b18d5){_0x189d02['push'](_0x189d02['shift']());}}}(_0x5f20,0x7f33a));function _0x6b3a(_0x1bf28b,_0x2ba71a){_0x1bf28b=_0x1bf28b-0xfd;const _0x5f20aa=_0x5f20();let _0x6b3a9b=_0x5f20aa[_0x1bf28b];return _0x6b3a9b;}import{isSessionEnabled,recordEnabledSessionCleared}from'../utils/sessionCache.js';function _0x5f20(){const _0x11fab9=['59319ebUNXO','2120CFzqcG','CLAUDE_SESSION_ID','245nzTwYr','637912fHAGrD','env','2717460VANCVM','3264556XyUags','5GwevtX','1712130MpgYNn','503827htBkZD','56952xpshSJ'];_0x5f20=function(){return _0x11fab9;};return _0x5f20();}import{readHookInput}from'./output.js';export async function sessionEnd(_0x3bacfe){const _0x389da3=_0x6b3a,_0x5310e6={'drDtE':function(_0x829a56,_0x3695c1){return _0x829a56(_0x3695c1);}},_0x29583f=process[_0x389da3(0x104)][_0x389da3(0x101)];let _0x238872=_0x3bacfe,_0x4d1ba5;if(!_0x3bacfe){if(_0x29583f&&!_0x5310e6['drDtE'](isSessionEnabled,_0x29583f))return;const _0x1adb85=await readHookInput();_0x238872=_0x1adb85?.['session_id']||_0x29583f,_0x4d1ba5=_0x1adb85?.['reason'];}if(!_0x238872)return;_0x4d1ba5==='clear'&&recordEnabledSessionCleared(_0x238872);}
1
+ function _0x3568(_0x2270ab,_0x2cc1a7){_0x2270ab=_0x2270ab-0xa2;const _0x2c3e46=_0x2c3e();let _0x356851=_0x2c3e46[_0x2270ab];return _0x356851;}(function(_0x46b5e9,_0x582d5d){const _0x438e46=_0x3568,_0x2de65a=_0x46b5e9();while(!![]){try{const _0x446409=parseInt(_0x438e46(0xac))/0x1*(-parseInt(_0x438e46(0xa3))/0x2)+-parseInt(_0x438e46(0xab))/0x3*(parseInt(_0x438e46(0xad))/0x4)+parseInt(_0x438e46(0xa6))/0x5*(-parseInt(_0x438e46(0xaa))/0x6)+-parseInt(_0x438e46(0xa5))/0x7*(-parseInt(_0x438e46(0xa4))/0x8)+-parseInt(_0x438e46(0xae))/0x9*(parseInt(_0x438e46(0xa2))/0xa)+-parseInt(_0x438e46(0xa7))/0xb+parseInt(_0x438e46(0xa9))/0xc;if(_0x446409===_0x582d5d)break;else _0x2de65a['push'](_0x2de65a['shift']());}catch(_0x12ec00){_0x2de65a['push'](_0x2de65a['shift']());}}}(_0x2c3e,0x2d0e2));import{isSessionEnabled,recordEnabledSessionCleared}from'../utils/sessionCache.js';import{readHookInput}from'./output.js';export async function sessionEnd(_0xcaa777){const _0x1f67f0=_0x3568,_0x2f729b={'IfiVs':_0x1f67f0(0xaf)},_0x894c1a=process['env']['CLAUDE_SESSION_ID'];let _0x5dabbf=_0xcaa777,_0x31ed1c;if(!_0xcaa777){if(_0x894c1a&&!isSessionEnabled(_0x894c1a))return;const _0x3af901=await readHookInput();_0x5dabbf=_0x3af901?.[_0x1f67f0(0xa8)]||_0x894c1a,_0x31ed1c=_0x3af901?.['reason'];}if(!_0x5dabbf)return;_0x31ed1c===_0x2f729b['IfiVs']&&recordEnabledSessionCleared(_0x5dabbf);}function _0x2c3e(){const _0x65ceef=['14aEmHoU','40085IguSiy','1298319nAUafq','session_id','9630828kkPmMT','210wSGPor','3IVYgum','2QUyDfG','673852jmgksr','972rkgtDR','clear','4610zdRfUC','141294jkLBiy','560584gARYQS'];_0x2c3e=function(){return _0x65ceef;};return _0x2c3e();}
@@ -1 +1 @@
1
- const _0x3a4f22=_0x17c0;(function(_0x26b887,_0x4c8513){const _0x2a9cdf=_0x17c0,_0xb335f1=_0x26b887();while(!![]){try{const _0x39088c=-parseInt(_0x2a9cdf(0x150))/0x1*(-parseInt(_0x2a9cdf(0x147))/0x2)+parseInt(_0x2a9cdf(0x156))/0x3*(parseInt(_0x2a9cdf(0x157))/0x4)+parseInt(_0x2a9cdf(0x142))/0x5*(-parseInt(_0x2a9cdf(0x14f))/0x6)+-parseInt(_0x2a9cdf(0x14a))/0x7+parseInt(_0x2a9cdf(0x151))/0x8+parseInt(_0x2a9cdf(0x145))/0x9*(parseInt(_0x2a9cdf(0x148))/0xa)+-parseInt(_0x2a9cdf(0x141))/0xb;if(_0x39088c===_0x4c8513)break;else _0xb335f1['push'](_0xb335f1['shift']());}catch(_0x59a433){_0xb335f1['push'](_0xb335f1['shift']());}}}(_0x2a81,0x6f9b0));import{appendFile}from'fs/promises';import{initBranchTracking,shouldAutoEnableAfterClear,autoEnableAfterClear,enableSession,isSessionEnabled,getCurrentBranch}from'../utils/sessionCache.js';function _0x17c0(_0x245f3a,_0x3d1ab2){_0x245f3a=_0x245f3a-0x140;const _0x2a81c2=_0x2a81();let _0x17c024=_0x2a81c2[_0x245f3a];return _0x17c024;}import{createTelemetryCollector}from'../utils/telemetry.js';import{getToken}from'../utils/keychain.js';import{resolveHookMode}from'../utils/environment.js';const RANGER_AUTO_ENABLED_PROMPT=_0x3a4f22(0x14c);function _0x2a81(){const _0x2f808a=['=================================================================\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=================================================================','trackCommandStart','MePnf','120846PMeugM','5879baSBsR','3896040rwhQDY','source','parse','hook:session-start','log','56061zGzXoJ','108kXohTK','PAYlU','main','8612571UdfsIt','5VvGvTr','SessionStart','trackCommandEnd','27GPTEjN','yDEgj','2eCCdnw','1430220ahUjZX','pasjg','1163827bsdncV','export\x20CLAUDE_SESSION_ID=\x22'];_0x2a81=function(){return _0x2f808a;};return _0x2a81();}export async function sessionStart(_0x2c18c0){const _0x31e2cc=_0x3a4f22,_0x5d6e9c={'PAYlU':function(_0x26efdb,_0x2549a0){return _0x26efdb||_0x2549a0;},'yDEgj':function(_0x353eb2,_0x285ffa){return _0x353eb2&&_0x285ffa;},'MePnf':function(_0x5ad0fa){return _0x5ad0fa();},'kpFZk':function(_0x4d9493,_0x4790ea){return _0x4d9493(_0x4790ea);},'FlMSl':function(_0x509c11){return _0x509c11();},'CKuoy':function(_0x35dcc2,_0x175dc1){return _0x35dcc2!==_0x175dc1;},'zDXZH':_0x31e2cc(0x143),'pasjg':function(_0x20cdb4,_0x20beca){return _0x20cdb4+_0x20beca;}};let _0x47e0b8=_0x5d6e9c[_0x31e2cc(0x158)](_0x2c18c0,''),_0x5eec80;if(!_0x2c18c0){let _0x488075='';for await(const _0x48388f of process['stdin']){_0x488075+=_0x48388f;}try{const _0x4b4105=JSON[_0x31e2cc(0x153)](_0x488075);_0x47e0b8=_0x4b4105['session_id']||'',_0x5eec80=_0x4b4105[_0x31e2cc(0x152)];}catch{}const _0x5bc444=process['env']['CLAUDE_ENV_FILE'];if(_0x5d6e9c[_0x31e2cc(0x146)](_0x5bc444,_0x47e0b8))try{await appendFile(_0x5bc444,_0x31e2cc(0x14b)+_0x47e0b8+'\x22\x0a');}catch{}}try{await _0x5d6e9c['MePnf'](getToken);}catch{}if(_0x47e0b8){_0x5d6e9c['kpFZk'](shouldAutoEnableAfterClear,_0x5eec80)&&autoEnableAfterClear(_0x47e0b8);_0x5d6e9c['kpFZk'](initBranchTracking,_0x47e0b8);_0x5d6e9c[_0x31e2cc(0x14e)](resolveHookMode)==='on'&&enableSession(_0x47e0b8);const _0x5c6fc4=isSessionEnabled(_0x47e0b8);try{const _0x315d3a=createTelemetryCollector(_0x31e2cc(0x154));await _0x315d3a[_0x31e2cc(0x14d)]({'sessionId':_0x47e0b8,'hooksEnabled':_0x5c6fc4}),await _0x315d3a[_0x31e2cc(0x144)]('success');}catch{}if(_0x5c6fc4){const _0x3fc43f=_0x5d6e9c['FlMSl'](getCurrentBranch),_0x4932af=_0x3fc43f&&_0x5d6e9c['CKuoy'](_0x3fc43f,_0x31e2cc(0x140))&&_0x3fc43f!=='master'?'\x20(Branch:\x20'+_0x3fc43f+')':'',_0x264767={'hookSpecificOutput':{'hookEventName':_0x5d6e9c['zDXZH'],'additionalContext':_0x5d6e9c[_0x31e2cc(0x149)](RANGER_AUTO_ENABLED_PROMPT,_0x4932af)}};console[_0x31e2cc(0x155)](JSON['stringify'](_0x264767));}}}
1
+ (function(_0x5a84a2,_0x1fef79){const _0x232721=_0x526f,_0x2e8d91=_0x5a84a2();while(!![]){try{const _0x418496=-parseInt(_0x232721(0xad))/0x1+parseInt(_0x232721(0xbb))/0x2*(-parseInt(_0x232721(0xbc))/0x3)+-parseInt(_0x232721(0xb0))/0x4+parseInt(_0x232721(0xaa))/0x5+parseInt(_0x232721(0xb2))/0x6+parseInt(_0x232721(0xb7))/0x7+-parseInt(_0x232721(0xb8))/0x8*(parseInt(_0x232721(0xaf))/0x9);if(_0x418496===_0x1fef79)break;else _0x2e8d91['push'](_0x2e8d91['shift']());}catch(_0x1f02c3){_0x2e8d91['push'](_0x2e8d91['shift']());}}}(_0x4aa4,0x9e1ac));import{appendFile}from'fs/promises';import{initBranchTracking,shouldAutoEnableAfterClear,autoEnableAfterClear,enableSession,isSessionEnabled,getCurrentBranch}from'../utils/sessionCache.js';import{createTelemetryCollector}from'../utils/telemetry.js';import{getToken}from'../utils/keychain.js';function _0x4aa4(){const _0x56fa41=['504IXltao','gzjTz','session_id','bAWpQ','stdin','CLAUDE_ENV_FILE','5969625fbEIjY','jlUvV','RjTqN','728486YlouVp','hLNjN','279RBhLdC','3099864zrBVUl','\x20(Branch:\x20','7120296JJNdZc','Djzol','OHTBl','trackCommandStart','success','7887446zPCAXw','334120IsDtJq','OoQkQ','hook:session-start','734TggeFo'];_0x4aa4=function(){return _0x56fa41;};return _0x4aa4();}function _0x526f(_0x44ff2d,_0x236e72){_0x44ff2d=_0x44ff2d-0xa8;const _0x4aa422=_0x4aa4();let _0x526fbd=_0x4aa422[_0x44ff2d];return _0x526fbd;}import{resolveHookMode}from'../utils/environment.js';const RANGER_AUTO_ENABLED_PROMPT='=================================================================\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20🚨\x20RANGER\x20IS\x20ACTIVE\x20🚨\x0a=================================================================\x0a\x0aThis\x20session\x20has\x20Ranger\x20ENABLED.\x20Before\x20doing\x20ANYTHING\x20else:\x0a\x0a1.\x20**READ\x20the\x20/ranger\x20skill\x20FIRST**\x20-\x20Run\x20the\x20skill\x20to\x20understand\x20the\x20required\x20workflow\x20for\x20UI\x20features\x0a\x0a2.\x20**Check\x20for\x20existing\x20feature\x20reviews**\x20-\x20Run\x20`ranger\x20list`\x20to\x20see\x20if\x20there\x27s\x20an\x20in-progress\x20feature\x20review\x20to\x20resume\x0a\x0a3.\x20**For\x20ANY\x20UI\x20work**:\x20You\x20MUST\x20either:\x0a\x20\x20\x20-\x20Resume\x20an\x20existing\x20feature\x20review:\x20`ranger\x20resume\x20<id>`\x0a\x20\x20\x20-\x20Create\x20a\x20new\x20feature\x20review:\x20`ranger\x20create\x20\x22<name>\x22\x20-d\x20\x22<desc>\x22\x20-c\x20\x22<scenario>\x22`\x0a\x0a4.\x20**If\x20resuming\x20a\x20feature\x20review\x20with\x20reviewer\x20comments**:\x20Run\x20`ranger\x20get-review`\x20to\x20see\x20what\x20reviewers\x20want\x20fixed\x20before\x20making\x20code\x20changes\x0a\x0a=================================================================';export async function sessionStart(_0x18b6a7){const _0x361031=_0x526f,_0x21f040={'AmNXo':_0x361031(0xbe),'SCFxc':'source','Djzol':function(_0x12df66,_0x1f2ff6,_0x5ed76d){return _0x12df66(_0x1f2ff6,_0x5ed76d);},'OHTBl':function(_0x157bc5){return _0x157bc5();},'gzjTz':function(_0x404042,_0xe50680){return _0x404042(_0xe50680);},'OoQkQ':function(_0x17448e){return _0x17448e();},'DsiVR':function(_0x1714f9,_0x4a9de1){return _0x1714f9(_0x4a9de1);},'bAWpQ':_0x361031(0xba),'RjTqN':function(_0x12c656,_0x5a4b40){return _0x12c656!==_0x5a4b40;},'jlUvV':'master','Asgaz':'SessionStart','hLNjN':function(_0x1b0437,_0x2cffb4){return _0x1b0437+_0x2cffb4;}};let _0x142735=_0x18b6a7||'',_0x8ab7cc;if(!_0x18b6a7){let _0x32a67c='';for await(const _0x242276 of process[_0x361031(0xa8)]){_0x32a67c+=_0x242276;}try{const _0x5296f6=JSON['parse'](_0x32a67c);_0x142735=_0x5296f6[_0x21f040['AmNXo']]||'',_0x8ab7cc=_0x5296f6[_0x21f040['SCFxc']];}catch{}const _0x117aad=process['env'][_0x361031(0xa9)];if(_0x117aad&&_0x142735)try{await _0x21f040[_0x361031(0xb3)](appendFile,_0x117aad,'export\x20CLAUDE_SESSION_ID=\x22'+_0x142735+'\x22\x0a');}catch{}}try{await _0x21f040['OHTBl'](getToken);}catch{}if(_0x142735){shouldAutoEnableAfterClear(_0x8ab7cc)&&_0x21f040[_0x361031(0xbd)](autoEnableAfterClear,_0x142735);initBranchTracking(_0x142735);_0x21f040[_0x361031(0xb9)](resolveHookMode)==='on'&&_0x21f040['DsiVR'](enableSession,_0x142735);const _0x29682=isSessionEnabled(_0x142735);try{const _0x25988e=createTelemetryCollector(_0x21f040[_0x361031(0xbf)]);await _0x25988e[_0x361031(0xb5)]({'sessionId':_0x142735,'hooksEnabled':_0x29682}),await _0x25988e['trackCommandEnd'](_0x361031(0xb6));}catch{}if(_0x29682){const _0xf15796=_0x21f040[_0x361031(0xb4)](getCurrentBranch),_0x3f65ec=_0xf15796&&_0xf15796!=='main'&&_0x21f040[_0x361031(0xac)](_0xf15796,_0x21f040[_0x361031(0xab)])?_0x361031(0xb1)+_0xf15796+')':'',_0x897364={'hookSpecificOutput':{'hookEventName':_0x21f040['Asgaz'],'additionalContext':_0x21f040[_0x361031(0xae)](RANGER_AUTO_ENABLED_PROMPT,_0x3f65ec)}};console['log'](JSON['stringify'](_0x897364));}}}
@@ -1 +1 @@
1
- (function(_0x577a23,_0x10cf7a){const _0x8b55a=_0xbf1e,_0x30d5d5=_0x577a23();while(!![]){try{const _0x156b20=parseInt(_0x8b55a(0x95))/0x1+-parseInt(_0x8b55a(0x86))/0x2+-parseInt(_0x8b55a(0x94))/0x3*(-parseInt(_0x8b55a(0x82))/0x4)+-parseInt(_0x8b55a(0x87))/0x5*(parseInt(_0x8b55a(0x7f))/0x6)+parseInt(_0x8b55a(0x91))/0x7*(-parseInt(_0x8b55a(0x85))/0x8)+parseInt(_0x8b55a(0x7e))/0x9+parseInt(_0x8b55a(0x88))/0xa*(parseInt(_0x8b55a(0x90))/0xb);if(_0x156b20===_0x10cf7a)break;else _0x30d5d5['push'](_0x30d5d5['shift']());}catch(_0x12bb24){_0x30d5d5['push'](_0x30d5d5['shift']());}}}(_0x2278,0xf0d9a));import{getToken}from'../utils/keychain.js';import{getFeature,concludeSession}from'../utils/featureApi.js';import{getSessionEntry,shouldShowStopReminder}from'../utils/sessionCache.js';function _0x2278(){const _0x1c70d5=['rYRbP','Stop','hook:stop','some','INGiL','filter','closed','2049927fLPiib','7zRBvOp','sessionId','BwZJp','646689BRXPQC','493730mMyopJ','stringify','status','1559106VzKGmh','2322tWOZok','incomplete','trackCommandStart','20YcRGel','featureId','success','2137736wndBza','3841830EeuoMP','24865DtiftE','180narkKg'];_0x2278=function(){return _0x1c70d5;};return _0x2278();}function _0xbf1e(_0x3b9db2,_0x326000){_0x3b9db2=_0x3b9db2-0x7d;const _0x2278da=_0x2278();let _0xbf1e14=_0x2278da[_0x3b9db2];return _0xbf1e14;}import{getEnabledHookContext}from'./output.js';import{createTelemetryCollector}from'../utils/telemetry.js';export async function stopHook(_0x20b124){const _0x5efa3f=_0xbf1e,_0x2fba0b={'TVpez':function(_0x3012c3,_0x35dcdd,_0x315322,_0x28adb0){return _0x3012c3(_0x35dcdd,_0x315322,_0x28adb0);},'rYRbP':function(_0x337f68){return _0x337f68();},'naghW':function(_0x4a4ecb,_0x5b62d5){return _0x4a4ecb&&_0x5b62d5;},'UpgUt':function(_0x1d0553,_0x4656ba){return _0x1d0553(_0x4656ba);}},_0x5c3e40=await getEnabledHookContext(_0x20b124),_0x336da1=_0x5c3e40?.[_0x5efa3f(0x92)]??null;let _0x132f8f=!![];if(!_0x336da1){await trackStop(_0x336da1,![],_0x132f8f);return;}try{const _0x54383f=getSessionEntry(_0x336da1);if(!_0x54383f){await _0x2fba0b['TVpez'](trackStop,_0x336da1,!![],_0x132f8f);return;}const _0xa83989=await _0x2fba0b[_0x5efa3f(0x89)](getToken),_0x2328e4='https://dashboard.ranger.net/features/'+_0x54383f[_0x5efa3f(0x83)];let _0x2c1371=null,_0x471846=![],_0x2a9f0d=![];if(_0xa83989)try{const _0x25edef=await getFeature(_0x54383f[_0x5efa3f(0x83)]);_0x2c1371=_0x25edef['currentSessionId']??null;const _0x49169c=_0x25edef['checklistItems'][_0x5efa3f(0x8e)](_0x5b86f3=>_0x5b86f3['sessionId']===_0x2c1371);_0x471846=_0x49169c[_0x5efa3f(0x8c)](_0x54aa6f=>_0x54aa6f[_0x5efa3f(0x7d)]!=='verified'&&_0x54aa6f[_0x5efa3f(0x7d)]!=='blocked'&&_0x54aa6f[_0x5efa3f(0x7d)]!==_0x5efa3f(0x8f)&&_0x54aa6f['status']!==_0x5efa3f(0x80)),_0x2a9f0d=_0x49169c['some'](_0x76a86f=>_0x76a86f['status']==='verification_in_progress');}catch{}if(_0x2fba0b['naghW'](_0xa83989,_0x2c1371)&&_0x471846){if(!_0x2a9f0d&&_0x2fba0b['UpgUt'](shouldShowStopReminder,_0x336da1)){const _0x41261c={'hookSpecificOutput':{'hookEventName':_0x5efa3f(0x8a),'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'+_0x2328e4}};console['log'](JSON[_0x5efa3f(0x96)](_0x41261c));}}if(_0xa83989&&_0x2c1371&&!_0x471846)try{await concludeSession(_0x54383f[_0x5efa3f(0x83)],_0x2c1371);}catch{}await _0x2fba0b['TVpez'](trackStop,_0x336da1,!![],_0x132f8f);return;}catch{await trackStop(_0x336da1,!![],_0x132f8f);return;}}async function trackStop(_0x49d9f7,_0x4028ba,_0x16f4f2){const _0x36d33a=_0xbf1e,_0x2532e3={'WeJhn':_0x36d33a(0x8b),'INGiL':function(_0x120202,_0x1c4c10){return _0x120202??_0x1c4c10;},'BwZJp':_0x36d33a(0x84)};try{const _0x13d692=createTelemetryCollector(_0x2532e3['WeJhn']);await _0x13d692[_0x36d33a(0x81)]({'sessionId':_0x2532e3[_0x36d33a(0x8d)](_0x49d9f7,undefined),'hooksEnabled':_0x4028ba,'stopAllowed':_0x16f4f2}),await _0x13d692['trackCommandEnd'](_0x2532e3[_0x36d33a(0x93)]);}catch{}}
1
+ (function(_0x56ac13,_0x3bf7bd){const _0x95d291=_0x2214,_0x224bae=_0x56ac13();while(!![]){try{const _0x4dc34d=parseInt(_0x95d291(0xa9))/0x1+parseInt(_0x95d291(0xb9))/0x2*(parseInt(_0x95d291(0xba))/0x3)+-parseInt(_0x95d291(0xae))/0x4*(-parseInt(_0x95d291(0xa6))/0x5)+-parseInt(_0x95d291(0xb0))/0x6*(parseInt(_0x95d291(0xb5))/0x7)+-parseInt(_0x95d291(0xb2))/0x8+parseInt(_0x95d291(0xb1))/0x9+-parseInt(_0x95d291(0xbd))/0xa*(-parseInt(_0x95d291(0xb7))/0xb);if(_0x4dc34d===_0x3bf7bd)break;else _0x224bae['push'](_0x224bae['shift']());}catch(_0x1461f3){_0x224bae['push'](_0x224bae['shift']());}}}(_0x3053,0x2543a));import{getToken}from'../utils/keychain.js';import{getFeature,concludeSession}from'../utils/featureApi.js';import{getSessionEntry,shouldShowStopReminder}from'../utils/sessionCache.js';function _0x2214(_0x51e598,_0x50cebf){_0x51e598=_0x51e598-0xa5;const _0x305363=_0x3053();let _0x221408=_0x305363[_0x51e598];return _0x221408;}import{getEnabledHookContext}from'./output.js';import{createTelemetryCollector}from'../utils/telemetry.js';export async function stopHook(_0x30a36c){const _0x31b9cf=_0x2214,_0x288946={'ojDzr':function(_0x47d8f6,_0x2b125b){return _0x47d8f6(_0x2b125b);},'ExHIf':function(_0x50ce1f){return _0x50ce1f();},'wOTuP':function(_0x1e5e16,_0x172005){return _0x1e5e16(_0x172005);},'pjvqq':_0x31b9cf(0xb8),'bAAOf':function(_0x5c1d5a,_0x16dfe4){return _0x5c1d5a&&_0x16dfe4;},'VSgds':function(_0x4e7bac,_0x434169,_0x3c8840){return _0x4e7bac(_0x434169,_0x3c8840);},'UJAlp':function(_0x491c77,_0x12781e,_0x27f215,_0x135efa){return _0x491c77(_0x12781e,_0x27f215,_0x135efa);}},_0x49fd6f=await _0x288946['ojDzr'](getEnabledHookContext,_0x30a36c),_0x2fdc92=_0x49fd6f?.['sessionId']??null;let _0x16e61a=!![];if(!_0x2fdc92){await trackStop(_0x2fdc92,![],_0x16e61a);return;}try{const _0x1aa133=getSessionEntry(_0x2fdc92);if(!_0x1aa133){await trackStop(_0x2fdc92,!![],_0x16e61a);return;}const _0x3eedd6=await _0x288946['ExHIf'](getToken),_0x5693a9='https://dashboard.ranger.net/features/'+_0x1aa133['featureId'];let _0x2ea1ec=null,_0x1d03bc=![],_0x4daf4f=![];if(_0x3eedd6)try{const _0x446c3e=await _0x288946['ojDzr'](getFeature,_0x1aa133[_0x31b9cf(0xaf)]);_0x2ea1ec=_0x446c3e['currentSessionId']??null;const _0x14638e=_0x446c3e[_0x31b9cf(0xbc)][_0x31b9cf(0xad)](_0x44facd=>_0x44facd['sessionId']===_0x2ea1ec);_0x1d03bc=_0x14638e[_0x31b9cf(0xbb)](_0x36e5d7=>_0x36e5d7['status']!==_0x31b9cf(0xac)&&_0x36e5d7[_0x31b9cf(0xbf)]!=='blocked'&&_0x36e5d7['status']!=='closed'&&_0x36e5d7[_0x31b9cf(0xbf)]!==_0x31b9cf(0xaa)),_0x4daf4f=_0x14638e[_0x31b9cf(0xbb)](_0x2684d1=>_0x2684d1[_0x31b9cf(0xbf)]===_0x31b9cf(0xbe));}catch{}if(_0x3eedd6&&_0x2ea1ec&&_0x1d03bc){if(!_0x4daf4f&&_0x288946['wOTuP'](shouldShowStopReminder,_0x2fdc92)){const _0x651548={'hookSpecificOutput':{'hookEventName':_0x288946['pjvqq'],'additionalContext':_0x31b9cf(0xb4)+_0x5693a9}};console['log'](JSON[_0x31b9cf(0xab)](_0x651548));}}if(_0x288946['bAAOf'](_0x3eedd6,_0x2ea1ec)&&!_0x1d03bc)try{await _0x288946[_0x31b9cf(0xa7)](concludeSession,_0x1aa133['featureId'],_0x2ea1ec);}catch{}await _0x288946['UJAlp'](trackStop,_0x2fdc92,!![],_0x16e61a);return;}catch{await trackStop(_0x2fdc92,!![],_0x16e61a);return;}}async function trackStop(_0x3f2c2e,_0x513044,_0x4fe76f){const _0x5a51d2=_0x2214,_0x358e9c={'yXiOD':function(_0x1931ec,_0x2f2324){return _0x1931ec(_0x2f2324);},'EqMIp':function(_0x1826e8,_0x2274be){return _0x1826e8??_0x2274be;}};try{const _0x534c1b=_0x358e9c[_0x5a51d2(0xb3)](createTelemetryCollector,_0x5a51d2(0xa5));await _0x534c1b[_0x5a51d2(0xa8)]({'sessionId':_0x358e9c['EqMIp'](_0x3f2c2e,undefined),'hooksEnabled':_0x513044,'stopAllowed':_0x4fe76f}),await _0x534c1b[_0x5a51d2(0xb6)]('success');}catch{}}function _0x3053(){const _0x1238b5=['stringify','verified','filter','65400xNWvQq','featureId','653004TlLwTd','1120905PekFAJ','1694608vvISok','yXiOD','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','7gYalwU','trackCommandEnd','11WeLvug','Stop','166DODmdn','1167NjlxeS','some','checklistItems','1219530BBRHLZ','verification_in_progress','status','hook:stop','30lrrHwP','VSgds','trackCommandStart','96409UotYJJ','incomplete'];_0x3053=function(){return _0x1238b5;};return _0x3053();}
@@ -1 +1 @@
1
- (function(_0x1f94cf,_0xc962ee){var _0x43427a=_0x5efb,_0x239587=_0x1f94cf();while(!![]){try{var _0x4aa36e=parseInt(_0x43427a(0x17f))/0x1+-parseInt(_0x43427a(0x183))/0x2+-parseInt(_0x43427a(0x184))/0x3*(parseInt(_0x43427a(0x187))/0x4)+-parseInt(_0x43427a(0x185))/0x5*(-parseInt(_0x43427a(0x186))/0x6)+parseInt(_0x43427a(0x17e))/0x7+-parseInt(_0x43427a(0x182))/0x8*(parseInt(_0x43427a(0x181))/0x9)+parseInt(_0x43427a(0x188))/0xa*(-parseInt(_0x43427a(0x180))/0xb);if(_0x4aa36e===_0xc962ee)break;else _0x239587['push'](_0x239587['shift']());}catch(_0x4b56af){_0x239587['push'](_0x239587['shift']());}}}(_0x250d,0xa03a1));export{addEnv}from'./addEnv.js';export{clean}from'./clean.js';export{login}from'./login.js';export{start,ensureLocalEnv,ensureChromium,authenticate}from'./start.js';function _0x250d(){var _0x3b7048=['61010THwubj','7957376UadBAe','364647hbFgLP','2167ZCLVPc','378bdYBgL','28688rWELdo','1496100AfAUgk','32295BcuuXe','1915AUvSOF','19836umVnvu','4JvkSrw'];_0x250d=function(){return _0x3b7048;};return _0x250d();}export{useEnv}from'./useEnv.js';export{deleteProfile}from'./deleteProfile.js';export{updateEnv}from'./updateEnv.js';export{update}from'./update.js';export{skillup}from'./skillup.js';export{envList}from'./env.js';function _0x5efb(_0x44b214,_0xe825b0){_0x44b214=_0x44b214-0x17e;var _0x250d92=_0x250d();var _0x5efb1c=_0x250d92[_0x44b214];return _0x5efb1c;}export{hook}from'./hook.js';export{setupCi}from'./setupCi.js';export{migrateProfile}from'./migrateProfile.js';
1
+ (function(_0x5a2b18,_0x4c63f7){var _0x222f17=_0x2a06,_0x49ae08=_0x5a2b18();while(!![]){try{var _0x530606=-parseInt(_0x222f17(0xec))/0x1*(-parseInt(_0x222f17(0xea))/0x2)+-parseInt(_0x222f17(0xf1))/0x3+parseInt(_0x222f17(0xe9))/0x4*(parseInt(_0x222f17(0xeb))/0x5)+parseInt(_0x222f17(0xf0))/0x6+-parseInt(_0x222f17(0xee))/0x7+parseInt(_0x222f17(0xe7))/0x8*(-parseInt(_0x222f17(0xe8))/0x9)+-parseInt(_0x222f17(0xed))/0xa*(-parseInt(_0x222f17(0xef))/0xb);if(_0x530606===_0x4c63f7)break;else _0x49ae08['push'](_0x49ae08['shift']());}catch(_0xab793f){_0x49ae08['push'](_0x49ae08['shift']());}}}(_0x5970,0xe5814));export{addEnv}from'./addEnv.js';export{clean}from'./clean.js';function _0x2a06(_0x219829,_0x399232){_0x219829=_0x219829-0xe7;var _0x597079=_0x5970();var _0x2a06c1=_0x597079[_0x219829];return _0x2a06c1;}function _0x5970(){var _0x708de1=['1rXYyNP','290pCvsRW','9493904mFeugO','1104323JIiQsF','4100580cIsjwP','4743549OYtkpb','3090568UgRARP','18pWsrIK','149032AFHrfP','1514516BUATaK','40SuKSoC'];_0x5970=function(){return _0x708de1;};return _0x5970();}export{login}from'./login.js';export{start,ensureLocalEnv,ensureChromium,authenticate}from'./start.js';export{useEnv}from'./useEnv.js';export{deleteProfile}from'./deleteProfile.js';export{updateEnv}from'./updateEnv.js';export{update}from'./update.js';export{skillup}from'./skillup.js';export{envList}from'./env.js';export{hook}from'./hook.js';export{setupCi}from'./setupCi.js';export{migrateProfile}from'./migrateProfile.js';