@ranger-testing/ranger-cli 2.5.4-alpha.feb9faf-20 → 3.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (82) 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 -0
  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 -0
  58. package/build/commands/utils/opencodeConfig.js +1 -1
  59. package/build/commands/utils/playwrightCli.js +1 -1
  60. package/build/commands/utils/profileMessages.js +1 -1
  61. package/build/commands/utils/profileSetupBanner.js +1 -1
  62. package/build/commands/utils/projectsConfig.js +1 -1
  63. package/build/commands/utils/rangerConfig.js +1 -1
  64. package/build/commands/utils/rangerRoot.js +1 -1
  65. package/build/commands/utils/resolveProfileContext.js +1 -1
  66. package/build/commands/utils/resolveProfileUrl.js +1 -1
  67. package/build/commands/utils/retry.js +1 -1
  68. package/build/commands/utils/sessionCache.js +1 -1
  69. package/build/commands/utils/settings.js +1 -1
  70. package/build/commands/utils/skillContent.js +1 -1
  71. package/build/commands/utils/skills.js +1 -1
  72. package/build/commands/utils/stitchWebmFiles.js +1 -1
  73. package/build/commands/utils/telemetry.js +1 -1
  74. package/build/commands/utils/tokenRefresh.js +1 -1
  75. package/build/commands/utils/traceSnapshotMapper.js +1 -1
  76. package/build/commands/utils/userApi.js +1 -1
  77. package/build/commands/utils/version.js +1 -1
  78. package/build/commands/verifyFeature.js +1 -1
  79. package/build/commands/verifyFeatureCli.js +1 -1
  80. package/build/commands/verifyFeatureNovaCli.js +1 -0
  81. package/build/skills/ranger/SKILL.md +1 -1
  82. package/package.json +1 -1
@@ -1 +1 @@
1
- const _0x24d357=_0x50f1;(function(_0x3ffff7,_0x55ba8d){const _0x28bd5e=_0x50f1,_0x23d0a9=_0x3ffff7();while(!![]){try{const _0x2cbd94=parseInt(_0x28bd5e(0x177))/0x1*(parseInt(_0x28bd5e(0x138))/0x2)+-parseInt(_0x28bd5e(0x1cf))/0x3+-parseInt(_0x28bd5e(0x12f))/0x4*(parseInt(_0x28bd5e(0x1af))/0x5)+-parseInt(_0x28bd5e(0x18b))/0x6*(-parseInt(_0x28bd5e(0x19e))/0x7)+parseInt(_0x28bd5e(0x1ae))/0x8+parseInt(_0x28bd5e(0x1ba))/0x9*(parseInt(_0x28bd5e(0x193))/0xa)+parseInt(_0x28bd5e(0x132))/0xb;if(_0x2cbd94===_0x55ba8d)break;else _0x23d0a9['push'](_0x23d0a9['shift']());}catch(_0x3cf32d){_0x23d0a9['push'](_0x23d0a9['shift']());}}}(_0x4e83,0x9b97c));import{readFile,writeFile,mkdir}from'fs/promises';import{join}from'path';import{existsSync}from'fs';import{execSync}from'child_process';import _0x32f418 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';function _0x4e83(){const _0x3d5c1b=['0|5|3|1|2|4','Showing\x20','\x20scenario(s).','FfVUN','from','iteration','\x0a📁\x20Sessions\x20for\x20feature\x20review:\x20','\x20in\x20progress','LxsqR','\x0a❌\x20Invalid\x20scenario\x20number(s):\x20','version','utf-8','pipe','\x20blocked','LaeAm','toLocaleString','efpmj','json','No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.','verified','\x20—\x20','7528etjjXa','numeric','FoxFX','14787289TCvirx','totalCount',':\x20\x22','wxfzr','prompt','push','2kSCARL','screenshotUrls','linkedSession','rhhvd','items','\x20\x20\x20Branch:\x20','selected','blockedReason','incompleteReason','canonicalFlow','CvTmO','\x20\x20\x20\x20\x20Progress:\x20','\x0a\x20\x20\x20Scenarios:','No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','CLAUDE_SESSION_ID','checklistItems','domRef','RANGER_TEST_USERNAME','EsGKu','filter','assetUrl','\x0a❌\x20Invalid\x20scenario\x20index:\x20','spatial','scenario','limit','\x20of\x20','\x20\x20\x20Progress:\x20','\x20\x20\x20Repository:\x20','\x20\x20\x20\x20','\x1b[1m','\x20--current-branch','fyFGW','yxRxR','aVLLZ','exit','ieYiA','Screenshot\x20','latestReview','warn','in_progress','):\x20\x22','arrayBuffer','wCyHW','NWuGu','LFxCg','error','\x20Session\x20','\x0a✅\x20Scenario\x20added','zBOBd','qEKpr','GKbOg','\x0aCreating\x20feature\x20review...','closed','PLqIh','RdpVj','scenarios','reports','\x20\x20\x20Completed:\x20','North','\x0a❌\x20No\x20scenarios\x20found\x20to\x20edit.','\x20[has\x20reviewer\x20feedback]','LIfdF','\x0a➡️\x20\x20Set\x20as\x20active\x20feature\x20review','5777CTRdkg','createdAt','\x20—\x20no\x20comments','No\x20scenarios\x20found.','unaddressedComments','yciUj','\x20concluded.','Not\x20in\x20a\x20git\x20repository.','terminalReason','Run:\x20ranger\x20create\x20\x22<name>\x22\x20to\x20create\x20a\x20new\x20feature\x20review','approved','replace','pSsQs','/api/v1/mcp/browser-sessions/','completed','includeDeleted','qaDwI','screenshot','\x20\x20\x20','TxuyN','2502vKuIKv','canceledReason','\x0a❌\x20No\x20scenarios\x20found\x20to\x20include.','agentResponse','1|4|5|0|3|2','coordinates','\x20\x20\x20▶️\x20Started\x20session\x20','active-feature.txt','169250RLkFka','\x20\x20\x20\x20\x20Branch:\x20','...','pop','JytAy','.\x20Feature\x20review\x20has\x20','currentSessionId','hKEEB','IfFTA','Next\x20page:\x20ranger\x20list\x20--offset\x20','incompleteItems','11809vNveWs','FRVkL','\x20\x20\x20Updated\x20branch\x20to:\x20','sessionId','browserSessionId','stepName','DiGJX','env','has','rhwSJ','verification_in_progress','notes','ossGH','stringify','trim','dashboardUrl','4542728NKiQqI','3385MKAWHX','qTxoV','Please\x20finish\x20your\x20review\x20first:','xRjPL','FYPLP','UJBKc','\x20\x20\x20Created:\x20','\x20\x20\x20\x20\x20\x20Approved','PJSMG','dQTyC','vQdGi','18MgBlzs','log','map','mjqXf','WzfpX','isTTY','\x0a✅\x20Resumed\x20feature\x20review:\x20','blocked','git\x20rev-parse\x20--abbrev-ref\x20HEAD','toFixed','AwIXB','\x20\x20\x20ID:\x20','\x0aNo\x20matching\x20active\x20feature\x20reviews\x20found.','currentBranch','lxZjZ','gitBranch','gAFVF','completedAt','CKgxp','Cannot\x20conclude\x20session\x20with\x20status:\x20','HMwkl','2231472dYtBNe','pendingItems','\x20/\x20','\x20at\x20[','\x0a✅\x20Session\x20','Scenario\x20','offset','name','write','github.com/','assetType','\x0a❌\x20Cannot\x20edit\x20scenario:\x20feature\x20review\x20has\x20an\x20active\x20review.','\x20\x20\x20\x20\x20📋\x20Selector:\x20','guLad','\x0aAvailable\x20scenarios:','length','cOGZJ','No\x20active\x20session\x20for\x20this\x20feature\x20review.','psuBM','toLocaleDateString','\x0a🗑️\x20\x20Deleted\x20feature\x20review:\x20','vVBWR','parentItemId','status','description','stats','split','\x20feature\x20review(s)\x20found','submittedAt','LzDWL','\x20\x20Expected\x20flow:','\x20\x20\x20\x20\x20📍\x20Annotation:\x20point\x20at\x20(','authorName','MGVuE','\x20\x20\x20\x20\x20🎯\x20Element:\x20<','Current\x20session\x20not\x20found.','\x0aSearching\x20for\x20feature\x20reviews\x20matching:\x20'];_0x4e83=function(){return _0x3d5c1b;};return _0x4e83();}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=_0x24d357(0x192),bold=_0x4887ec=>_0x24d357(0x155)+_0x4887ec+'\x1b[0m';function getGitRepoUrl(){const _0x4ce97c=_0x24d357,_0x1da8b6={'DolBx':'git\x20remote\x20get-url\x20origin','rhhvd':'pipe'};try{const _0x381d10=execSync(_0x1da8b6['DolBx'],{'encoding':'utf-8','stdio':[_0x4ce97c(0x126),_0x1da8b6[_0x4ce97c(0x13b)],_0x1da8b6['rhhvd']]})[_0x4ce97c(0x1ac)]();return _0x381d10[_0x4ce97c(0x182)](/\.git$/,'')[_0x4ce97c(0x182)](/^git@github\.com:/,_0x4ce97c(0x1d8))[_0x4ce97c(0x182)](/^https?:\/\//,'');}catch{return undefined;}}function _0x50f1(_0x424933,_0x4e77bf){_0x424933=_0x424933-0x118;const _0x4e8332=_0x4e83();let _0x50f155=_0x4e8332[_0x424933];return _0x50f155;}function getGitBranch(){const _0x476dfa=_0x24d357,_0x387bed={'EncHD':_0x476dfa(0x1c2),'qDrAc':_0x476dfa(0x125)};try{return execSync(_0x387bed['EncHD'],{'encoding':_0x387bed['qDrAc'],'stdio':[_0x476dfa(0x126),_0x476dfa(0x126),_0x476dfa(0x126)]})['trim']();}catch{return undefined;}}export async function getActiveFeatureId(){const _0x408c7d=_0x24d357,_0x5e2e8b={'fQuFl':function(_0x4c30be,_0x4887e5,_0x13cac9){return _0x4c30be(_0x4887e5,_0x13cac9);},'QrkwK':function(_0x2ed0b4){return _0x2ed0b4();},'LFxCg':'utf-8'},_0x29162b=_0x5e2e8b['fQuFl'](join,_0x5e2e8b['QrkwK'](getRangerDir),ACTIVE_FEATURE_FILE);if(!existsSync(_0x29162b))return null;try{const _0x4a9fa9=await _0x5e2e8b['fQuFl'](readFile,_0x29162b,_0x5e2e8b[_0x408c7d(0x164)]);return _0x4a9fa9['trim']()||null;}catch{return null;}}async function setActiveFeatureId(_0x29f11b){const _0x18d059=_0x24d357,_0x353b6d={'dlUkp':function(_0x4f8f5f,_0x3dd47c,_0x2bba3d){return _0x4f8f5f(_0x3dd47c,_0x2bba3d);},'SLGDc':function(_0x4a607d,_0x4f302d){return _0x4a607d(_0x4f302d);},'gAFVF':function(_0xf1cf0b,_0x58a9f9,_0xd67b6d,_0x3f42dd){return _0xf1cf0b(_0x58a9f9,_0xd67b6d,_0x3f42dd);},'WpoVY':'utf-8'},_0x3a71bd=getRangerDir(),_0xff13e9=_0x353b6d['dlUkp'](join,_0x3a71bd,ACTIVE_FEATURE_FILE);!_0x353b6d['SLGDc'](existsSync,_0x3a71bd)&&await mkdir(_0x3a71bd,{'recursive':!![]}),await _0x353b6d[_0x18d059(0x1ca)](writeFile,_0xff13e9,_0x29f11b,_0x353b6d['WpoVY']);}function getProgressDisplay(_0x191095){const _0x3a7cd2=_0x24d357,_0x1cdbf7={'lxZjZ':function(_0x2073f2,_0x5b8e56){return _0x2073f2+_0x5b8e56;},'mdMig':function(_0x42c3b8,_0x38917a){return _0x42c3b8+_0x38917a;},'teNji':function(_0x114723,_0x5d9cc5){return _0x114723===_0x5d9cc5;},'UJBKc':function(_0x1825c1,_0x3d4dd6){return _0x1825c1*_0x3d4dd6;},'yxRxR':function(_0x2cc928,_0x36d205){return _0x2cc928-_0x36d205;},'PJSMG':function(_0x249072,_0x2ac006){return _0x249072>_0x2ac006;}},_0x3b8281=_0x191095['verifiedItems']||0x0,_0x5d6082=_0x191095['verificationInProgressItems']||0x0,_0x5de6ab=_0x191095['blockedItems']||0x0,_0x1d35d0=_0x191095[_0x3a7cd2(0x19d)]||0x0,_0x3cfd0d=_0x191095[_0x3a7cd2(0x1d0)]||0x0,_0x356c82=_0x1cdbf7[_0x3a7cd2(0x1c8)](_0x1cdbf7[_0x3a7cd2(0x1c8)](_0x1cdbf7['mdMig'](_0x3b8281,_0x5d6082),_0x5de6ab)+_0x1d35d0,_0x3cfd0d);if(_0x1cdbf7['teNji'](_0x356c82,0x0))return'-';const _0x43ef54=0xa,_0x1df4a4=Math['round'](_0x1cdbf7[_0x3a7cd2(0x1b4)](_0x3b8281/_0x356c82,_0x43ef54)),_0x1b193a=_0x1cdbf7[_0x3a7cd2(0x1c8)]('█'['repeat'](_0x1df4a4),'░'['repeat'](_0x1cdbf7[_0x3a7cd2(0x158)](_0x43ef54,_0x1df4a4))),_0x5c7b0c=[];if(_0x5de6ab>0x0)_0x5c7b0c['push'](_0x5de6ab+_0x3a7cd2(0x127));if(_0x1d35d0>0x0)_0x5c7b0c[_0x3a7cd2(0x137)](_0x1d35d0+'\x20incomplete');if(_0x1cdbf7[_0x3a7cd2(0x1b7)](_0x5d6082,0x0))_0x5c7b0c['push'](_0x5d6082+_0x3a7cd2(0x121));const _0x173efd=_0x1cdbf7['PJSMG'](_0x5c7b0c['length'],0x0)?'\x20('+_0x5c7b0c['join'](',\x20')+')':'';return _0x1b193a+'\x20'+_0x3b8281+'/'+_0x356c82+'\x20verified'+_0x173efd;}function getCurrentSessionItems(_0x523315,_0x3323e4){const _0x493324=_0x24d357;if(!_0x523315[_0x493324(0x199)])return _0x3323e4[_0x493324(0x14b)](_0x187248=>!_0x187248['sessionId']);return _0x3323e4['filter'](_0x2ad8af=>_0x2ad8af[_0x493324(0x1a1)]===_0x523315[_0x493324(0x199)]||!_0x2ad8af['sessionId']);}function displayFeature(_0xab87e5,_0xa4937){const _0x490e82=_0x24d357,_0x5c0f9c={'vVBWR':function(_0x29a565,_0x597940){return _0x29a565(_0x597940);},'vQdGi':function(_0x298981,_0x542064){return _0x298981>_0x542064;},'PWEjl':function(_0x10df9d,_0x430529){return _0x10df9d<_0x430529;},'xRjPL':_0x490e82(0x16c),'NGLZU':'approved','plMSb':function(_0x5c0aef,_0x5ac2cd){return _0x5c0aef===_0x5ac2cd;},'FfVUN':'incomplete','hgwhS':_0x490e82(0x1c1),'ieYiA':'verification_in_progress','GJNyt':function(_0x596a33,_0xcb5871){return _0x596a33>_0xcb5871;},'ivzyP':function(_0x579816,_0x2ba67b){return _0x579816!==_0x2ba67b;},'oezZn':'verified','rhwSJ':function(_0x5007fc,_0x1c49d5){return _0x5007fc===_0x1c49d5;},'Yvoex':function(_0x174760,_0x585eb0){return _0x174760===_0x585eb0;}};console[_0x490e82(0x1bb)]('\x0a'+_0xab87e5[_0x490e82(0x1d6)]+'\x20('+_0xab87e5[_0x490e82(0x1ad)]+')');_0xab87e5['stats']&&console[_0x490e82(0x1bb)]('\x20\x20\x20Progress:\x20'+_0x5c0f9c[_0x490e82(0x1e4)](getProgressDisplay,_0xab87e5['stats']));_0xab87e5[_0x490e82(0x1e7)]&&console['log']('\x20\x20\x20Description:\x20'+_0xab87e5[_0x490e82(0x1e7)]);_0xab87e5['gitRepoUrl']&&console[_0x490e82(0x1bb)](_0x490e82(0x153)+_0xab87e5['gitRepoUrl']);_0xab87e5['gitBranch']&&console[_0x490e82(0x1bb)](_0x490e82(0x13d)+_0xab87e5['gitBranch']);console[_0x490e82(0x1bb)]('\x20\x20\x20Created:\x20'+new Date(_0xab87e5[_0x490e82(0x178)])['toLocaleString']());_0xab87e5['completedAt']&&console['log']('\x20\x20\x20Completed:\x20'+new Date(_0xab87e5['completedAt'])[_0x490e82(0x129)]());if(_0xa4937&&_0x5c0f9c[_0x490e82(0x1b9)](_0xa4937['length'],0x0)){console['log'](_0x490e82(0x144));for(let _0x3ffc36=0x0;_0x5c0f9c['PWEjl'](_0x3ffc36,_0xa4937[_0x490e82(0x1de)]);_0x3ffc36++){const _0x292091=_0xa4937[_0x3ffc36];let _0xb9a2f9;if(_0x292091['status']===_0x5c0f9c[_0x490e82(0x1b2)]&&_0x292091[_0x490e82(0x17f)]===_0x5c0f9c['NGLZU'])_0xb9a2f9='✅';else{if(_0x292091['status']===_0x490e82(0x12d))_0xb9a2f9='🟢';else{if(_0x5c0f9c['plMSb'](_0x292091['status'],_0x5c0f9c['FfVUN']))_0xb9a2f9='🟠';else{if(_0x292091[_0x490e82(0x1e6)]===_0x5c0f9c['hgwhS'])_0xb9a2f9='🛑';else{if(_0x292091['status']==='closed')_0xb9a2f9='⛔';else _0x292091[_0x490e82(0x1e6)]===_0x5c0f9c[_0x490e82(0x15b)]?_0xb9a2f9='⏳':_0xb9a2f9='⬜';}}}}const _0x206ab1=_0x5c0f9c['GJNyt'](_0x292091['version'],0x1)?'\x20(v'+_0x292091['version']+')':'',_0x112186=_0x292091['version']>0x1&&_0x292091[_0x490e82(0x1e5)]&&_0x5c0f9c['ivzyP'](_0x292091['status'],_0x5c0f9c['xRjPL'])&&_0x292091['status']!==_0x5c0f9c['oezZn']?_0x490e82(0x174):'';console['log'](_0x490e82(0x189)+(_0x3ffc36+0x1)+'.\x20'+_0xb9a2f9+'\x20'+_0x292091['description']+_0x206ab1+_0x112186);_0x5c0f9c[_0x490e82(0x1a7)](_0x292091[_0x490e82(0x1e6)],_0x5c0f9c['hgwhS'])&&_0x292091[_0x490e82(0x13f)]&&console['log']('\x20\x20\x20\x20\x20\x20Blocked:\x20'+_0x292091['blockedReason']);_0x292091[_0x490e82(0x1e6)]===_0x5c0f9c[_0x490e82(0x11d)]&&_0x292091[_0x490e82(0x140)]&&console[_0x490e82(0x1bb)]('\x20\x20\x20\x20\x20\x20Incomplete:\x20'+_0x292091[_0x490e82(0x140)]);if(_0x292091[_0x490e82(0x1e6)]===_0x5c0f9c['xRjPL']&&_0x292091['terminalReason']===_0x490e82(0x181))console[_0x490e82(0x1bb)](_0x490e82(0x1b6));else _0x5c0f9c['Yvoex'](_0x292091[_0x490e82(0x1e6)],_0x490e82(0x16c))&&_0x292091[_0x490e82(0x18c)]&&console['log']('\x20\x20\x20\x20\x20\x20Cancelled:\x20'+_0x292091['canceledReason']);}}}export async function featureCreate(_0x2bdca7,_0x3e4554){const _0x2f2fc5=_0x24d357,_0x1e8222={'CvTmO':function(_0x329532){return _0x329532();},'MbqdY':function(_0x38b831,_0x1200f4){return _0x38b831===_0x1200f4;},'EyscD':function(_0x3d5351,_0xd39390){return _0x3d5351(_0xd39390);},'MBFQR':function(_0x387f06,_0x5dc229,_0x24a17d){return _0x387f06(_0x5dc229,_0x24a17d);},'ossGH':function(_0x1b0b31,_0x5131e8,_0x330163){return _0x1b0b31(_0x5131e8,_0x330163);}},{envNames:_0x337eca}=await getEnvNames();if(_0x337eca['length']===0x0&&!process[_0x2f2fc5(0x1a5)][_0x2f2fc5(0x149)]){let _0x30d623=0x0;try{_0x30d623=(await _0x1e8222[_0x2f2fc5(0x142)](listCloudProfiles))['length'];}catch{_0x30d623=0x1;}_0x1e8222['MbqdY'](_0x30d623,0x0)&&console[_0x2f2fc5(0x15e)]('\x0a'+formatProfileRequiredMessage(_0x503db0=>bold(_0x503db0)));}const _0x364130=_0x3e4554['scenarios']?_0x3e4554[_0x2f2fc5(0x16f)]['map'](_0xa49a06=>_0xa49a06['trim']()):[],_0x11b503=_0x1e8222[_0x2f2fc5(0x142)](getGitRepoUrl),_0x3872dc=_0x1e8222['CvTmO'](getGitBranch);console['log'](_0x2f2fc5(0x16b));const _0x1fcf90=await createFeature({'name':_0x2bdca7,'description':_0x3e4554[_0x2f2fc5(0x1e7)],'checklist':_0x364130,'gitRepoUrl':_0x11b503,'gitBranch':_0x3872dc});await _0x1e8222['EyscD'](setActiveFeatureId,_0x1fcf90['id']),await tryStartCurrentSession(_0x1fcf90['id']);const _0x5c4896=process['env'][_0x2f2fc5(0x146)];_0x5c4896&&_0x1e8222['MBFQR'](registerSession,_0x5c4896,_0x1fcf90['id']),console[_0x2f2fc5(0x1bb)]('\x0a✅\x20Feature\x20review\x20created:\x20'+_0x1fcf90['id']),_0x1e8222[_0x2f2fc5(0x1aa)](displayFeature,_0x1fcf90,_0x1fcf90['checklistItems']),console[_0x2f2fc5(0x1bb)](_0x2f2fc5(0x176));}export async function featureList(_0x3146b3){const _0x38c2ce=_0x24d357,_0x43b31b={'rEjer':function(_0x493d73){return _0x493d73();},'jWTVE':function(_0x40a185,_0x27ee5a){return _0x40a185===_0x27ee5a;},'oPBPk':'\x0aNo\x20feature\x20reviews\x20found.','aVLLZ':_0x38c2ce(0x11a),'efpmj':function(_0x54b281,_0x321522){return _0x54b281(_0x321522);},'FRVkL':function(_0x2a41fc,_0x58dc20){return _0x2a41fc!==_0x58dc20;}},_0x53e9ef={'limit':_0x3146b3['limit']??0xa,'offset':_0x3146b3['offset']??0x0,'includeDeleted':_0x3146b3[_0x38c2ce(0x186)]};_0x3146b3['currentBranch']&&(_0x53e9ef['gitRepoUrl']=getGitRepoUrl(),_0x53e9ef[_0x38c2ce(0x1c9)]=_0x43b31b['rEjer'](getGitBranch));const _0x565c33=await listFeatures(_0x53e9ef);if(_0x43b31b['jWTVE'](_0x565c33['items'][_0x38c2ce(0x1de)],0x0)){console['log'](_0x43b31b['oPBPk']);return;}const _0x4c8ad6=_0x565c33['totalCount']>_0x565c33['items']['length']?_0x38c2ce(0x11b)+_0x565c33[_0x38c2ce(0x13c)]['length']+_0x38c2ce(0x151)+_0x565c33[_0x38c2ce(0x133)]:_0x565c33['totalCount']+_0x38c2ce(0x1ea);console['log']('\x0a'+_0x4c8ad6+':\x0a');for(const _0x229080 of _0x565c33[_0x38c2ce(0x13c)]){const _0x5567a8=_0x43b31b[_0x38c2ce(0x159)][_0x38c2ce(0x1e9)]('|');let _0x2ba154=0x0;while(!![]){switch(_0x5567a8[_0x2ba154++]){case'0':console[_0x38c2ce(0x1bb)](''+_0x229080['name']);continue;case'1':_0x229080[_0x38c2ce(0x1c9)]&&console['log']('\x20\x20\x20Branch:\x20'+_0x229080['gitBranch']);continue;case'2':console['log'](_0x38c2ce(0x1b5)+new Date(_0x229080['createdAt'])[_0x38c2ce(0x1e2)]());continue;case'3':_0x229080['stats']&&console[_0x38c2ce(0x1bb)](_0x38c2ce(0x152)+_0x43b31b[_0x38c2ce(0x12a)](getProgressDisplay,_0x229080['stats']));continue;case'4':console['log']('');continue;case'5':console['log'](_0x38c2ce(0x1c5)+_0x229080['id']);continue;}break;}}const _0x540c14=_0x53e9ef[_0x38c2ce(0x150)]??0xa,_0x4729fc=(_0x53e9ef[_0x38c2ce(0x1d5)]??0x0)+_0x565c33['items']['length'];if(_0x4729fc<_0x565c33[_0x38c2ce(0x133)]){const _0x21a8ee=_0x43b31b[_0x38c2ce(0x19f)](_0x540c14,0xa)?'\x20--limit\x20'+_0x540c14:'',_0x2166e1=_0x3146b3[_0x38c2ce(0x1c7)]?_0x38c2ce(0x156):'',_0x5e79f4=_0x3146b3['includeDeleted']?'\x20--include-deleted':'';console['log'](_0x38c2ce(0x19c)+_0x4729fc+_0x21a8ee+_0x2166e1+_0x5e79f4);}}export async function featureShow(_0x3e8ec5){const _0x3c7780={'jqtFI':'No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review'},_0x58d156=_0x3e8ec5||await getActiveFeatureId();if(!_0x58d156)throw new Error(_0x3c7780['jqtFI']);const _0x464319=await getFeature(_0x58d156);displayFeature(_0x464319,_0x464319['checklistItems']);}export async function featureResume(_0x4ce80e){const _0x1a7426=_0x24d357,_0x3a4d81={'VTxzb':function(_0x2c391f){return _0x2c391f();},'GKbOg':function(_0x158743,_0x45c24e){return _0x158743(_0x45c24e);},'YIvSd':function(_0x239663,_0x40a60b,_0x53b5db){return _0x239663(_0x40a60b,_0x53b5db);},'North':function(_0x58a594){return _0x58a594();},'CnbIP':_0x1a7426(0x17e),'xtLsu':'any','wxfzr':function(_0x1f7966,_0x1d2621){return _0x1f7966===_0x1d2621;},'IoBgz':'Please\x20specify\x20the\x20feature\x20review\x20ID:\x20ranger\x20resume\x20<id>','hKEEB':'Multiple\x20feature\x20reviews\x20found.\x20Select\x20one:','wCyHW':function(_0x4ef9fd,_0x4fc0e2){return _0x4ef9fd!==_0x4fc0e2;},'psuBM':function(_0x50f99f,_0x2fd2ed){return _0x50f99f(_0x2fd2ed);},'TxuyN':function(_0x2c8891,_0xea6c59,_0x5be473){return _0x2c8891(_0xea6c59,_0x5be473);}};if(_0x4ce80e){const _0x3e107d=await getFeature(_0x4ce80e);await setActiveFeatureId(_0x3e107d['id']);const _0x512cc0=_0x3a4d81['VTxzb'](getGitBranch);_0x512cc0&&_0x512cc0!==_0x3e107d[_0x1a7426(0x1c9)]&&(await updateFeature(_0x3e107d['id'],{'gitBranch':_0x512cc0}),console[_0x1a7426(0x1bb)](_0x1a7426(0x1a0)+_0x512cc0));console[_0x1a7426(0x1bb)](_0x1a7426(0x1c0)+_0x3e107d['name']+'\x20('+_0x3e107d['id']+')'),await _0x3a4d81[_0x1a7426(0x16a)](tryStartCurrentSession,_0x3e107d['id']);const _0x4822a5=process[_0x1a7426(0x1a5)]['CLAUDE_SESSION_ID'];_0x4822a5&&_0x3a4d81['YIvSd'](registerSession,_0x4822a5,_0x3e107d['id']);displayFeature(_0x3e107d,_0x3e107d[_0x1a7426(0x147)]),await _0x3a4d81['GKbOg'](printFeedbackNudge,_0x3e107d['id']);return;}const _0x330419=_0x3a4d81[_0x1a7426(0x172)](getGitRepoUrl),_0x1dca65=_0x3a4d81['VTxzb'](getGitBranch);if(!_0x330419&&!_0x1dca65)throw new Error(_0x3a4d81['CnbIP']);console[_0x1a7426(0x1bb)](_0x1a7426(0x119)+(_0x330419||_0x3a4d81['xtLsu'])+_0x1a7426(0x1d1)+(_0x1dca65||'any')+_0x1a7426(0x195));const _0x3f35b4=await listFeatures({'gitRepoUrl':_0x330419,'gitBranch':_0x1dca65}),_0x22ffed=_0x3f35b4['items'][_0x1a7426(0x14b)](_0x4182b0=>_0x4182b0[_0x1a7426(0x1e6)]?_0x4182b0[_0x1a7426(0x1e6)]!==_0x1a7426(0x12d):!_0x4182b0[_0x1a7426(0x1cb)]);if(_0x3a4d81[_0x1a7426(0x135)](_0x22ffed[_0x1a7426(0x1de)],0x0)){console[_0x1a7426(0x1bb)](_0x1a7426(0x1c6)),console[_0x1a7426(0x1bb)](_0x1a7426(0x180));return;}let _0x5c5179;if(_0x22ffed['length']===0x1)_0x5c5179=_0x22ffed[0x0];else{const _0x1dba5e=process['stdin']['isTTY']&&process['stdout'][_0x1a7426(0x1bf)];if(!_0x1dba5e){console['log']('\x0aNon-interactive\x20mode\x20detected.\x20Multiple\x20feature\x20reviews\x20found:');for(const _0x4f2029 of _0x22ffed){console[_0x1a7426(0x1bb)]('\x20\x20'+_0x4f2029[_0x1a7426(0x1d6)]),console[_0x1a7426(0x1bb)]('\x20\x20\x20\x20\x20ID:\x20'+_0x4f2029['id']),_0x4f2029[_0x1a7426(0x1e8)]&&console[_0x1a7426(0x1bb)](_0x1a7426(0x143)+getProgressDisplay(_0x4f2029['stats'])),_0x4f2029[_0x1a7426(0x1c9)]&&console[_0x1a7426(0x1bb)](_0x1a7426(0x194)+_0x4f2029[_0x1a7426(0x1c9)]);}throw new Error(_0x3a4d81['IoBgz']);}const {selected:_0x310b70}=await _0x32f418[_0x1a7426(0x136)]([{'type':'list','name':_0x1a7426(0x13e),'message':_0x3a4d81[_0x1a7426(0x19a)],'choices':_0x22ffed[_0x1a7426(0x1bc)](_0x5041b4=>({'name':_0x5041b4['name']+'\x20('+_0x5041b4['id']+')','value':_0x5041b4['id']}))}]);_0x5c5179=_0x22ffed['find'](_0x91d30f=>_0x91d30f['id']===_0x310b70);}await _0x3a4d81[_0x1a7426(0x16a)](setActiveFeatureId,_0x5c5179['id']);_0x1dca65&&_0x3a4d81[_0x1a7426(0x162)](_0x1dca65,_0x5c5179[_0x1a7426(0x1c9)])&&(await updateFeature(_0x5c5179['id'],{'gitBranch':_0x1dca65}),console['log']('\x20\x20\x20Updated\x20branch\x20to:\x20'+_0x1dca65));console['log']('\x0a✅\x20Resumed\x20feature\x20review:\x20'+_0x5c5179[_0x1a7426(0x1d6)]+'\x20('+_0x5c5179['id']+')'),await _0x3a4d81[_0x1a7426(0x1e1)](tryStartCurrentSession,_0x5c5179['id']);const _0x527527=await getFeature(_0x5c5179['id']),_0x259e65=process['env'][_0x1a7426(0x146)];_0x259e65&&registerSession(_0x259e65,_0x527527['id']),_0x3a4d81[_0x1a7426(0x18a)](displayFeature,_0x527527,_0x527527[_0x1a7426(0x147)]),await printFeedbackNudge(_0x527527['id']);}async function printFeedbackNudge(_0x39bff1){const _0x443232=_0x24d357,_0x45b0e0={'JytAy':function(_0x40a059,_0x2463b6){return _0x40a059(_0x2463b6);},'jcvWc':function(_0xb6b19f,_0x4e123a){return _0xb6b19f>_0x4e123a;}};try{const {items:_0x3a0c88}=await _0x45b0e0[_0x443232(0x197)](getActionItems,_0x39bff1);let _0x377b2f=0x0,_0x179758=0x0;for(const _0xa59cd7 of _0x3a0c88){const _0x2bbbc8=await getItemFeedback(_0x39bff1,_0xa59cd7['id']);_0x45b0e0['jcvWc'](_0x2bbbc8[_0x443232(0x17b)]['length'],0x0)&&(_0x377b2f+=_0x2bbbc8['unaddressedComments']['length'],_0x179758++);}_0x377b2f>0x0&&(console[_0x443232(0x1bb)]('\x0a⚠️\x20\x20'+_0x377b2f+'\x20unaddressed\x20reviewer\x20comment(s)\x20across\x20'+_0x179758+_0x443232(0x11c)),console[_0x443232(0x1bb)]('\x20\x20\x20Run\x20`ranger\x20get-review`\x20to\x20see\x20what\x20needs\x20to\x20be\x20fixed.'));}catch{}}async function tryStartCurrentSession(_0x88daee){const _0x574a30=_0x24d357,_0x5d56b6={'EqcGt':function(_0x37bac2,_0x4dfa29,_0x5ac92c){return _0x37bac2(_0x4dfa29,_0x5ac92c);}};try{const {sessions:_0x3f695f}=await listFeatureSessions(_0x88daee),_0x279e57=_0x3f695f['find'](_0x3428c8=>_0x3428c8['status']==='ready');_0x279e57&&(await _0x5d56b6['EqcGt'](startSession,_0x88daee,_0x279e57['id']),console[_0x574a30(0x1bb)](_0x574a30(0x191)+_0x279e57['iteration']));}catch{}}export async function featureReport(_0x4598b2,_0x2e56eb){const _0x575205=_0x24d357,_0x17c076={'pxgpB':function(_0x17c897){return _0x17c897();},'qTxoV':'No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.','IfFTA':function(_0x228099,_0x3e952d,_0x32bd83,_0xef5f23){return _0x228099(_0x3e952d,_0x32bd83,_0xef5f23);},'qaDwI':function(_0x30b7cd){return _0x30b7cd();},'EtUky':_0x575205(0x170),'EsGKu':function(_0x4d3a97,_0x2f39ad,_0x45302d){return _0x4d3a97(_0x2f39ad,_0x45302d);},'auhCy':function(_0x3e0ae5,_0x4bf80f,_0xd7fe9d,_0x30629e){return _0x3e0ae5(_0x4bf80f,_0xd7fe9d,_0x30629e);}},_0x55ba14=_0x4598b2||await _0x17c076['pxgpB'](getActiveFeatureId);if(!_0x55ba14)throw new Error(_0x17c076[_0x575205(0x1b0)]);console[_0x575205(0x1bb)]('\x0aGenerating\x20report...');const _0x1e8d2a=await getFeatureReportMarkdown(_0x55ba14,{'style':_0x2e56eb['style']}),_0x19be0c=_0x2e56eb['output']||_0x17c076[_0x575205(0x19b)](join,_0x17c076[_0x575205(0x187)](getRangerDir),_0x17c076['EtUky'],_0x55ba14+'.md'),_0x241646=_0x17c076[_0x575205(0x14a)](join,_0x19be0c,'..');!existsSync(_0x241646)&&await _0x17c076[_0x575205(0x14a)](mkdir,_0x241646,{'recursive':!![]}),await _0x17c076['auhCy'](writeFile,_0x19be0c,_0x1e8d2a,_0x575205(0x125)),console[_0x575205(0x1bb)]('\x0a✅\x20Report\x20generated:\x20'+_0x19be0c);}function getScenarioResult(_0x55698b){const _0x329803=_0x24d357,_0x3ff30b={'LIfdF':function(_0xe1fb58,_0x54ce4b){return _0xe1fb58===_0x54ce4b;},'iyPuo':'closed','yCbKc':'in_progress'};if(_0x3ff30b[_0x329803(0x175)](_0x55698b[_0x329803(0x1e6)],_0x3ff30b['iyPuo']))return _0x55698b['terminalReason']??_0x329803(0x16c);if(_0x55698b['status']===_0x329803(0x1a8))return _0x3ff30b['yCbKc'];return _0x55698b['status'];}function getScenarioRationale(_0xf222c5,_0x379e5f){const _0x3e419b=_0x24d357,_0x4df157={'XMFpO':_0x3e419b(0x18f)},_0x558267=_0x4df157['XMFpO'][_0x3e419b(0x1e9)]('|');let _0x5ec274=0x0;while(!![]){switch(_0x558267[_0x5ec274++]){case'0':if(_0xf222c5['canceledReason'])return _0xf222c5['canceledReason'];continue;case'1':if(_0x379e5f)return _0x379e5f;continue;case'2':return null;case'3':if(_0xf222c5['notes'])return _0xf222c5[_0x3e419b(0x1a9)];continue;case'4':if(_0xf222c5[_0x3e419b(0x13f)])return _0xf222c5[_0x3e419b(0x13f)];continue;case'5':if(_0xf222c5[_0x3e419b(0x140)])return _0xf222c5[_0x3e419b(0x140)];continue;}break;}}export async function featureReportPrDescription(_0x2a1573,_0x1e9c4a){const _0x42d04e=_0x24d357,_0x329ec5={'HMwkl':function(_0x5dcc16){return _0x5dcc16();},'cOGZJ':_0x42d04e(0x12c),'pSsQs':function(_0x3ae8c3,_0x2f8bf1){return _0x3ae8c3===_0x2f8bf1;},'WzfpX':_0x42d04e(0x18d),'Nvotv':'\x0aAvailable\x20scenarios:','hAYUL':function(_0x31aa16,_0x41f94d){return _0x31aa16+_0x41f94d;},'GNokD':'\x0a❌\x20All\x20scenarios\x20were\x20excluded.'},_0x1deefc=_0x2a1573||await _0x329ec5[_0x42d04e(0x1ce)](getActiveFeatureId);if(!_0x1deefc)throw new Error(_0x329ec5[_0x42d04e(0x1df)]);const _0x553640=await getFeature(_0x1deefc),_0x4c322b=_0x553640['checklistItems']||[],_0x5cbec7=getCurrentSessionItems(_0x553640,_0x4c322b);_0x329ec5[_0x42d04e(0x183)](_0x5cbec7['length'],0x0)&&(console['error'](_0x329ec5[_0x42d04e(0x1be)]),process[_0x42d04e(0x15a)](0x1));const _0x18e921=_0x1e9c4a['excludeScenarios']??[],_0x31985a=_0x18e921[_0x42d04e(0x14b)](_0x5df255=>!Number['isInteger'](_0x5df255)||_0x5df255<0x1||_0x5df255>_0x5cbec7['length']);if(_0x31985a[_0x42d04e(0x1de)]>0x0){console[_0x42d04e(0x165)](_0x42d04e(0x123)+_0x31985a['join'](',\x20')),console[_0x42d04e(0x1bb)](_0x329ec5['Nvotv']);for(let _0x9b0d88=0x0;_0x9b0d88<_0x5cbec7['length'];_0x9b0d88++){console['log']('\x20\x20'+_0x329ec5['hAYUL'](_0x9b0d88,0x1)+'.\x20'+_0x5cbec7[_0x9b0d88]['description']);}process['exit'](0x1);}const _0xeb590f=new Set(_0x18e921[_0x42d04e(0x1bc)](_0x2186dd=>_0x2186dd-0x1)),_0x2a13da=_0x5cbec7[_0x42d04e(0x14b)]((_0x2c05c7,_0x1f9445)=>!_0xeb590f[_0x42d04e(0x1a6)](_0x1f9445));_0x2a13da[_0x42d04e(0x1de)]===0x0&&(console[_0x42d04e(0x165)](_0x329ec5['GNokD']),process['exit'](0x1));if(_0x1e9c4a[_0x42d04e(0x12b)])await outputJsonReport(_0x1deefc,_0x553640,_0x2a13da);else{const _0x26ccf8=await getFeatureReportMarkdown(_0x1deefc,{'itemIds':_0x2a13da['map'](_0x404c97=>_0x404c97['id'])});process['stdout'][_0x42d04e(0x1d7)](_0x26ccf8['trimEnd']()+'\x0a');}}async function outputJsonReport(_0x235a44,_0xdf0dd2,_0xd8ae90){const _0x2da812=_0x24d357,_0x55d5d3={'YSqCy':function(_0x5e0ed1,_0xb5c459){return _0x5e0ed1>_0xb5c459;},'fesvJ':function(_0x7b8ee9,_0x46b74c){return _0x7b8ee9(_0x46b74c);},'dyoqF':function(_0x51c535){return _0x51c535();},'gWKsf':function(_0x54fba2,_0x2d2821){return _0x54fba2(_0x2d2821);},'JUbfe':function(_0x4a114d,_0x51192b){return _0x4a114d+_0x51192b;}},_0x1da074=_0x55d5d3['dyoqF'](getApiBaseUrl),_0x4fc319=await _0x55d5d3['gWKsf'](getFeatureReport,_0x235a44),_0x4e72a2=new Map(_0x4fc319['checklistItems']['map'](_0x1b352a=>[_0x1b352a['id'],_0x1b352a])),_0x5d1290=await Promise['all'](_0xd8ae90['map'](async _0x5e6fa1=>{const _0x3d6fd5=_0x50f1,_0x10e16b=_0x4e72a2['get'](_0x5e6fa1['id']),_0x1e5426=_0x10e16b?.[_0x3d6fd5(0x13a)]??null;let _0x21325b=[];if(_0x5e6fa1[_0x3d6fd5(0x1a2)])try{const {steps:_0x114821}=await getBrowserSessionSteps(_0x5e6fa1[_0x3d6fd5(0x1a2)]);_0x55d5d3['YSqCy'](_0x114821[_0x3d6fd5(0x1de)],0x0)&&(_0x21325b=_0x114821[_0x3d6fd5(0x1bc)](_0x71fc87=>{const _0x49711c=_0x3d6fd5,_0x4c53b4=_0x71fc87['assets']['find'](_0x26eb67=>_0x26eb67[_0x49711c(0x1d9)]===_0x49711c(0x188)&&_0x26eb67['timing']==='after')??_0x71fc87['assets']['find'](_0x4c5205=>_0x4c5205[_0x49711c(0x1d9)]===_0x49711c(0x188));let _0x4006d=null,_0x149350=null;if(_0x4c53b4){const _0x41e426=_0x4c53b4['storage']['location']['split']('/')[_0x49711c(0x196)]();_0x4006d=_0x1da074+_0x49711c(0x184)+_0x5e6fa1['browserSessionId']+'/artifacts/'+_0x41e426,_0x41e426&&(_0x149350=_0x41e426['replace'](/\.\w+$/,'')[_0x49711c(0x182)](/^(key_)?\d+_/,'')['replace'](/[-_]/g,'\x20'));}return{'description':_0x149350||_0x71fc87['description']||_0x71fc87[_0x49711c(0x1a3)]||'Step\x20'+_0x71fc87['position'],'screenshot':_0x4006d,'is_key_step':_0x71fc87['isKeyStep']};}));}catch{}return _0x21325b['length']===0x0&&_0x1e5426?.[_0x3d6fd5(0x139)]&&(_0x21325b=_0x1e5426['screenshotUrls'][_0x3d6fd5(0x1bc)]((_0x30f1cd,_0x31ec9d)=>({'description':_0x3d6fd5(0x15c)+(_0x31ec9d+0x1),'screenshot':_0x30f1cd,'is_key_step':![]}))),{'description':_0x5e6fa1['description'],'result':_0x55d5d3['fesvJ'](getScenarioResult,_0x5e6fa1),'rationale':getScenarioRationale(_0x5e6fa1,_0x1e5426?.[_0x3d6fd5(0x18e)]),'steps':_0x21325b};})),_0x172995={'url':_0xdf0dd2[_0x2da812(0x1ad)],'scenarios':_0x5d1290};process['stdout']['write'](_0x55d5d3['JUbfe'](JSON[_0x2da812(0x1ab)](_0x172995,null,0x2),'\x0a'));}export async function featureConcludeSession(_0x2280b6){const _0x53485f=_0x24d357,_0x4c7435={'AwIXB':function(_0x27c757,_0x4df0a4){return _0x27c757(_0x4df0a4);},'mbFrY':_0x53485f(0x118),'fyFGW':'completed','mjqXf':'\x0a✅\x20Session\x20is\x20already\x20completed.','WMSnF':'\x0aConcluding\x20session...'},_0x1c6dc8=_0x2280b6||await getActiveFeatureId();if(!_0x1c6dc8)throw new Error(_0x53485f(0x145));const _0x10082b=await _0x4c7435[_0x53485f(0x1c4)](getFeature,_0x1c6dc8);if(!_0x10082b[_0x53485f(0x199)])throw new Error(_0x53485f(0x1e0));const {sessions:_0x3b9c39}=await listFeatureSessions(_0x1c6dc8),_0x323f56=_0x3b9c39['find'](_0x2f193e=>_0x2f193e['id']===_0x10082b['currentSessionId']);if(!_0x323f56)throw new Error(_0x4c7435['mbFrY']);if(_0x323f56[_0x53485f(0x1e6)]===_0x4c7435[_0x53485f(0x157)]){console['log'](_0x4c7435[_0x53485f(0x1bd)]);return;}if(_0x323f56[_0x53485f(0x1e6)]!==_0x53485f(0x15f))throw new Error(_0x53485f(0x1cd)+_0x323f56[_0x53485f(0x1e6)]);console[_0x53485f(0x1bb)](_0x4c7435['WMSnF']),await concludeSession(_0x1c6dc8,_0x10082b['currentSessionId']),console[_0x53485f(0x1bb)](_0x53485f(0x1d3)+_0x323f56[_0x53485f(0x11f)]+_0x53485f(0x17d)),console[_0x53485f(0x1bb)]('\x20\x20\x20The\x20feature\x20review\x20is\x20now\x20ready\x20for\x20human\x20review\x20on\x20the\x20Ranger\x20dashboard.');}export async function featureSessions(_0x1eb9f6){const _0x510adf=_0x24d357,_0x374dde={'EuWpR':function(_0x5c1014){return _0x5c1014();},'PLqIh':_0x510adf(0x12c),'NWuGu':function(_0x572761,_0x3b3181){return _0x572761(_0x3b3181);}},_0x21c25f=_0x1eb9f6||await _0x374dde['EuWpR'](getActiveFeatureId);if(!_0x21c25f)throw new Error(_0x374dde[_0x510adf(0x16d)]);const _0x5eb6c2=await _0x374dde['NWuGu'](getFeature,_0x21c25f);console[_0x510adf(0x1bb)](_0x510adf(0x120)+_0x5eb6c2[_0x510adf(0x1d6)]+'\x0a');const {sessions:_0x227d91}=await _0x374dde[_0x510adf(0x163)](listFeatureSessions,_0x21c25f);if(_0x227d91['length']===0x0){console['log']('No\x20sessions\x20found.');return;}for(const _0x364b65 of _0x227d91){const _0x3a34b2=_0x364b65[_0x510adf(0x1e6)]===_0x510adf(0x185)?'✅':_0x364b65[_0x510adf(0x1e6)]==='in_progress'?'🔄':'▶️';console[_0x510adf(0x1bb)](_0x3a34b2+_0x510adf(0x166)+_0x364b65[_0x510adf(0x11f)]+'\x20('+_0x364b65['id']+')'),console['log']('\x20\x20\x20Status:\x20'+_0x364b65['status']),console[_0x510adf(0x1bb)]('\x20\x20\x20Created:\x20'+new Date(_0x364b65[_0x510adf(0x178)])['toLocaleString']()),_0x364b65['completedAt']&&console[_0x510adf(0x1bb)](_0x510adf(0x171)+new Date(_0x364b65[_0x510adf(0x1cb)])['toLocaleString']()),console[_0x510adf(0x1bb)]('');}}export async function featureAddScenario(_0x53e11c,_0x54ae61){const _0x2f81ad=_0x24d357,_0x55638d={'DiGJX':function(_0x3941bf){return _0x3941bf();},'GHCoo':function(_0x3ffafd,_0x50c422,_0xbd55e6){return _0x3ffafd(_0x50c422,_0xbd55e6);},'LOQQp':function(_0x1bb9bb,_0x496e69){return _0x1bb9bb(_0x496e69);}},_0xac4ffc=_0x54ae61||await _0x55638d[_0x2f81ad(0x1a4)](getActiveFeatureId);if(!_0xac4ffc)throw new Error(_0x2f81ad(0x145));const _0x4b0dc3=await getFeature(_0xac4ffc);if(_0x4b0dc3[_0x2f81ad(0x15d)]&&!_0x4b0dc3['latestReview']['submittedAt'])throw new Error('Cannot\x20add\x20scenario:\x20feature\x20review\x20has\x20an\x20active\x20review.\x20Please\x20finish\x20your\x20review\x20first:\x20'+_0x4b0dc3[_0x2f81ad(0x1ad)]);await _0x55638d['GHCoo'](createChecklistItem,_0xac4ffc,_0x53e11c);const _0x283a75=await _0x55638d['LOQQp'](getFeature,_0xac4ffc);console[_0x2f81ad(0x1bb)](_0x2f81ad(0x167)),displayFeature(_0x283a75,_0x283a75['checklistItems']);}export async function featureEditScenario(_0x1da771,_0x3738b0){const _0x10aa4b=_0x24d357,_0x2d9ebf={'MGVuE':function(_0x277996){return _0x277996();},'QKYlt':'\x0a❌\x20No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.','HNFpg':'Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','klYQO':function(_0x5599f6,_0x340884){return _0x5599f6(_0x340884);},'dQTyC':function(_0x3dca38,_0xf8e7a4){return _0x3dca38===_0xf8e7a4;},'OTGDK':_0x10aa4b(0x173),'GztSh':_0x10aa4b(0x1dd),'PMZCM':function(_0x1da774,_0x58fd28){return _0x1da774+_0x58fd28;},'qEKpr':function(_0x3cb902,_0x433dae){return _0x3cb902-_0x433dae;},'CKgxp':function(_0x52509a,_0x293b8d){return _0x52509a+_0x293b8d;},'EKwUC':function(_0x568064,_0x107df3,_0x231b68,_0x3a080c){return _0x568064(_0x107df3,_0x231b68,_0x3a080c);},'cYABu':function(_0x437ca5,_0x4cc404,_0x1bb7f5){return _0x437ca5(_0x4cc404,_0x1bb7f5);}},_0x4fff97=_0x3738b0['id']||await _0x2d9ebf[_0x10aa4b(0x1f0)](getActiveFeatureId);!_0x4fff97&&(console['error'](_0x2d9ebf['QKYlt']),console['error'](_0x2d9ebf['HNFpg']),process[_0x10aa4b(0x15a)](0x1));const _0x3da1a9=await _0x2d9ebf['klYQO'](getFeature,_0x4fff97);_0x3da1a9[_0x10aa4b(0x15d)]&&!_0x3da1a9['latestReview'][_0x10aa4b(0x1eb)]&&(console['error'](_0x10aa4b(0x1da)),console[_0x10aa4b(0x165)](_0x10aa4b(0x1b1)),console[_0x10aa4b(0x165)]('\x20\x20'+_0x3da1a9['dashboardUrl']),process[_0x10aa4b(0x15a)](0x1));const _0x3c0394=_0x3da1a9[_0x10aa4b(0x147)]||[];_0x2d9ebf['dQTyC'](_0x3c0394[_0x10aa4b(0x1de)],0x0)&&(console['error'](_0x2d9ebf['OTGDK']),process[_0x10aa4b(0x15a)](0x1));if(_0x2d9ebf[_0x10aa4b(0x1b8)](_0x3738b0['scenario'],undefined)){console['error']('\x0a❌\x20No\x20scenario\x20number\x20provided.\x20Use\x20--scenario\x20<number>.'),console['log'](_0x2d9ebf['GztSh']);for(let _0x308240=0x0;_0x308240<_0x3c0394[_0x10aa4b(0x1de)];_0x308240++){console[_0x10aa4b(0x1bb)]('\x20\x20'+_0x2d9ebf['PMZCM'](_0x308240,0x1)+'.\x20'+_0x3c0394[_0x308240]['description']);}process[_0x10aa4b(0x15a)](0x1);}const _0x26f630=_0x2d9ebf[_0x10aa4b(0x169)](_0x3738b0[_0x10aa4b(0x14f)],0x1);if(_0x26f630<0x0||_0x26f630>=_0x3c0394[_0x10aa4b(0x1de)]){console['error'](_0x10aa4b(0x14d)+_0x3738b0['scenario']+_0x10aa4b(0x198)+_0x3c0394[_0x10aa4b(0x1de)]+'\x20scenarios.'),console['log']('\x0aAvailable\x20scenarios:');for(let _0xf5f409=0x0;_0xf5f409<_0x3c0394[_0x10aa4b(0x1de)];_0xf5f409++){console['log']('\x20\x20'+_0x2d9ebf[_0x10aa4b(0x1cc)](_0xf5f409,0x1)+'.\x20'+_0x3c0394[_0xf5f409][_0x10aa4b(0x1e7)]);}process[_0x10aa4b(0x15a)](0x1);}const _0x56bc76=_0x3c0394[_0x26f630];await _0x2d9ebf['EKwUC'](updateChecklistItem,_0x4fff97,_0x56bc76['id'],{'description':_0x1da771});const _0x81cbe=await _0x2d9ebf['klYQO'](getFeature,_0x4fff97);console[_0x10aa4b(0x1bb)]('\x0a✅\x20Scenario\x20updated'),_0x2d9ebf['cYABu'](displayFeature,_0x81cbe,_0x81cbe['checklistItems']);}async function downloadFeedbackImage(_0x608aac,_0x1ec51e){const _0x2409ca=_0x24d357,_0x2b2239={'YiITU':'feedback-images','FoxFX':function(_0xdfc907,_0x229236,_0x400188){return _0xdfc907(_0x229236,_0x400188);},'pzAlP':function(_0x2cb0f6,_0x11ee67){return _0x2cb0f6(_0x11ee67);}};try{const _0x40444f=join(getRangerDir(),_0x2b2239['YiITU']);await mkdir(_0x40444f,{'recursive':!![]});const _0x4537e0=_0x2b2239[_0x2409ca(0x131)](join,_0x40444f,'comment_'+_0x1ec51e+'.png'),_0x37efc6=await _0x2b2239['pzAlP'](fetch,_0x608aac);if(!_0x37efc6['ok'])return null;const _0x4ed454=Buffer[_0x2409ca(0x11e)](await _0x37efc6[_0x2409ca(0x161)]());return await _0x2b2239['FoxFX'](writeFile,_0x4537e0,_0x4ed454),_0x4537e0;}catch{return null;}}export async function featureGetReview(_0x5f18e6){const _0x312f0f=_0x24d357,_0x39c98d={'RdpVj':function(_0x591bf0){return _0x591bf0();},'guLad':'No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','FYPLP':_0x312f0f(0x17a),'yciUj':function(_0x59a31f,_0x4303ce){return _0x59a31f>_0x4303ce;},'CvsjS':'en-US','KRBfa':'point','LaeAm':function(_0x9d00e2,_0x3fa25e){return _0x9d00e2+_0x3fa25e;}},_0x3bed7b=_0x5f18e6||await _0x39c98d[_0x312f0f(0x16e)](getActiveFeatureId);if(!_0x3bed7b)throw new Error(_0x39c98d[_0x312f0f(0x1dc)]);const _0x2594ae=await getFeature(_0x3bed7b),{items:_0xce874f}=await getActionItems(_0x3bed7b);console[_0x312f0f(0x1bb)]('\x0a📋\x20Feedback\x20for:\x20'+_0x2594ae[_0x312f0f(0x1d6)]+'\x20('+_0x2594ae['id']+')\x0a');if(_0xce874f['length']===0x0){console[_0x312f0f(0x1bb)](_0x39c98d[_0x312f0f(0x1b3)]);return;}for(let _0x45fa13=0x0;_0x45fa13<_0xce874f[_0x312f0f(0x1de)];_0x45fa13++){const _0x115067=_0xce874f[_0x45fa13],_0x5b0ab1=_0x39c98d[_0x312f0f(0x17c)](_0x115067[_0x312f0f(0x124)],0x1)?'\x20(v'+_0x115067[_0x312f0f(0x124)]+')':'',_0x4d0cde=await getItemFeedback(_0x3bed7b,_0x115067['id']);if(_0x4d0cde['unaddressedComments'][_0x312f0f(0x1de)]>0x0){console[_0x312f0f(0x1bb)](_0x312f0f(0x1d4)+(_0x45fa13+0x1)+_0x312f0f(0x134)+_0x115067['description']+'\x22'+_0x5b0ab1+_0x312f0f(0x12e)+_0x4d0cde[_0x312f0f(0x17b)]['length']+'\x20unaddressed\x20comment(s)');for(const _0x1589e2 of _0x4d0cde[_0x312f0f(0x17b)]){const _0x1896fb=new Date(_0x1589e2['createdAt'])['toLocaleDateString'](_0x39c98d['CvsjS'],{'month':'short','day':_0x312f0f(0x130)}),_0x2f73c5=_0x1589e2[_0x312f0f(0x1ef)]||_0x1589e2['authorEmail']||'Unknown';console['log']('\x20\x20💬\x20'+_0x2f73c5+'\x20('+_0x1896fb+_0x312f0f(0x160)+_0x1589e2['content']+'\x22');if(_0x1589e2['assetUrl']){const _0x2f3876=await downloadFeedbackImage(_0x1589e2[_0x312f0f(0x14c)],_0x1589e2['id']);_0x2f3876&&console[_0x312f0f(0x1bb)]('\x20\x20\x20\x20\x20📷\x20Screenshot:\x20'+_0x2f3876);}if(_0x1589e2[_0x312f0f(0x148)]){const _0xadd8aa=_0x1589e2[_0x312f0f(0x148)]['selector'][_0x312f0f(0x1e9)]('\x20>\x20')['pop']()?.[_0x312f0f(0x1e9)](':')[0x0]||'element',_0x1b16ed=_0x1589e2['domRef']['textContent']?'\x20\x22'+_0x1589e2[_0x312f0f(0x148)]['textContent']['slice'](0x0,0x3c)+'\x22':'';console[_0x312f0f(0x1bb)](_0x312f0f(0x1f1)+_0xadd8aa+'>'+_0x1b16ed),console['log'](_0x312f0f(0x1db)+_0x1589e2[_0x312f0f(0x148)]['selector']);}else{if(_0x1589e2['spatial']){const _0x2108d7=_0x1589e2[_0x312f0f(0x14e)][_0x312f0f(0x190)];_0x1589e2[_0x312f0f(0x14e)]['type']===_0x39c98d['KRBfa']&&_0x2108d7['length']>=0x2?console[_0x312f0f(0x1bb)](_0x312f0f(0x1ee)+_0x2108d7[0x0]['toFixed'](0x2)+',\x20'+_0x2108d7[0x1][_0x312f0f(0x1c3)](0x2)+')'):console[_0x312f0f(0x1bb)]('\x20\x20\x20\x20\x20📍\x20Annotation:\x20'+_0x1589e2['spatial']['type']+_0x312f0f(0x1d2)+_0x2108d7['map'](_0x4b19d4=>_0x4b19d4[_0x312f0f(0x1c3)](0x2))['join'](',\x20')+']');}}}if(_0x4d0cde[_0x312f0f(0x141)]){console[_0x312f0f(0x1bb)](_0x312f0f(0x1ed));for(const _0x2fd090 of _0x4d0cde[_0x312f0f(0x141)]['split']('\x0a')){console['log'](_0x312f0f(0x154)+_0x2fd090);}}}else console['log']('Scenario\x20'+_0x39c98d[_0x312f0f(0x128)](_0x45fa13,0x1)+_0x312f0f(0x134)+_0x115067['description']+'\x22'+_0x5b0ab1+_0x312f0f(0x179)),console['log']('\x20\x20✅\x20No\x20feedback\x20to\x20address');console['log']('');}}export async function featureDelete(_0x2a2f25){const _0x1d999f=_0x24d357,_0x5f5cdd={'EfSHv':_0x1d999f(0x145),'VKwMj':function(_0x2ff31c,_0x42cbdc){return _0x2ff31c(_0x42cbdc);},'aYoUS':function(_0x188a04,_0x642039){return _0x188a04+_0x642039;},'zBOBd':'\x20\x20\x20To\x20restore\x20it,\x20run:\x20ranger\x20restore\x20'},_0x45a35e=_0x2a2f25||await getActiveFeatureId();if(!_0x45a35e)throw new Error(_0x5f5cdd['EfSHv']);const _0x2cae14=await getFeature(_0x45a35e);await _0x5f5cdd['VKwMj'](softDeleteFeature,_0x45a35e),console['log'](_0x1d999f(0x1e3)+_0x2cae14['name']+'\x20('+_0x45a35e+')'),console[_0x1d999f(0x1bb)](_0x5f5cdd['aYoUS'](_0x5f5cdd[_0x1d999f(0x168)],_0x45a35e));}export async function featureRestore(_0x3167b9){const _0xec319e=_0x24d357,_0x231f31={'LxsqR':function(_0x4c1fa9,_0x8a8a08){return _0x4c1fa9(_0x8a8a08);},'LzDWL':function(_0x38d15a,_0x5aabc8){return _0x38d15a(_0x5aabc8);}};await _0x231f31[_0xec319e(0x122)](restoreFeature,_0x3167b9);const _0x43bc72=await _0x231f31[_0xec319e(0x1ec)](getFeature,_0x3167b9);console[_0xec319e(0x1bb)]('\x0a✅\x20Restored\x20feature\x20review:\x20'+_0x43bc72['name']+'\x20('+_0x3167b9+')'),displayFeature(_0x43bc72,_0x43bc72['checklistItems']);}
1
+ (function(_0x4b6a67,_0x5e6da5){const _0x1bf96d=_0x4550,_0x54b617=_0x4b6a67();while(!![]){try{const _0x15f7dd=-parseInt(_0x1bf96d(0x128))/0x1+-parseInt(_0x1bf96d(0xc3))/0x2*(parseInt(_0x1bf96d(0x145))/0x3)+-parseInt(_0x1bf96d(0x147))/0x4+-parseInt(_0x1bf96d(0x106))/0x5+-parseInt(_0x1bf96d(0x73))/0x6*(parseInt(_0x1bf96d(0x98))/0x7)+parseInt(_0x1bf96d(0x7c))/0x8*(-parseInt(_0x1bf96d(0x112))/0x9)+parseInt(_0x1bf96d(0xe1))/0xa;if(_0x15f7dd===_0x5e6da5)break;else _0x54b617['push'](_0x54b617['shift']());}catch(_0x214aca){_0x54b617['push'](_0x54b617['shift']());}}}(_0x66b9,0x251e9));import{readFile,writeFile,mkdir}from'fs/promises';import{join}from'path';import{existsSync}from'fs';import{execSync}from'child_process';import _0x550f7e from'inquirer';import{createFeature,listFeatures,getFeature,updateFeature,getFeatureReport,getFeatureReportMarkdown,listFeatureSessions,startSession,concludeSession,createChecklistItem,getActionItems,getItemFeedback,softDeleteFeature,restoreFeature,updateChecklistItem}from'./utils/featureApi.js';import{getBrowserSessionSteps}from'./utils/browserSessionsApi.js';import{getApiBaseUrl}from'./utils/environment.js';import{getRangerDir}from'./utils/rangerRoot.js';import{registerSession}from'./utils/sessionCache.js';import{getEnvNames}from'./env.js';import{formatProfileRequiredMessage}from'./utils/profileMessages.js';import{listCloudProfiles}from'./utils/cloudProfile.js';const ACTIVE_FEATURE_FILE='active-feature.txt',bold=_0xd68cf4=>'\x1b[1m'+_0xd68cf4+'\x1b[0m';function getGitRepoUrl(){const _0x38da3d=_0x4550,_0x1b7670={'IGApt':function(_0xc5a0d7,_0x151b10,_0x4bc021){return _0xc5a0d7(_0x151b10,_0x4bc021);},'whDMJ':_0x38da3d(0xa9),'amRdm':_0x38da3d(0x12f),'TjmiM':'github.com/'};try{const _0x416019=_0x1b7670[_0x38da3d(0x101)](execSync,'git\x20remote\x20get-url\x20origin',{'encoding':_0x1b7670['whDMJ'],'stdio':[_0x1b7670['amRdm'],_0x1b7670['amRdm'],'pipe']})[_0x38da3d(0x12a)]();return _0x416019['replace'](/\.git$/,'')[_0x38da3d(0x108)](/^git@github\.com:/,_0x1b7670['TjmiM'])[_0x38da3d(0x108)](/^https?:\/\//,'');}catch{return undefined;}}function _0x4550(_0x39d8d3,_0x1ce76c){_0x39d8d3=_0x39d8d3-0x6c;const _0x66b999=_0x66b9();let _0x455010=_0x66b999[_0x39d8d3];return _0x455010;}function getGitBranch(){const _0x25dfcb=_0x4550,_0x51d481={'pYxuu':function(_0x2bc48f,_0x5a0da6,_0x56cf74){return _0x2bc48f(_0x5a0da6,_0x56cf74);},'NdrJi':'git\x20rev-parse\x20--abbrev-ref\x20HEAD','NtRBx':'utf-8','vnxxy':'pipe'};try{return _0x51d481['pYxuu'](execSync,_0x51d481[_0x25dfcb(0xcd)],{'encoding':_0x51d481[_0x25dfcb(0x124)],'stdio':[_0x25dfcb(0x12f),_0x51d481[_0x25dfcb(0xa7)],_0x51d481['vnxxy']]})[_0x25dfcb(0x12a)]();}catch{return undefined;}}export async function getActiveFeatureId(){const _0x4226ad={'kAOqD':function(_0x5a87ee,_0x24ba6d){return _0x5a87ee(_0x24ba6d);},'GAyBQ':function(_0x461dd8,_0x166f57,_0x5c36d3){return _0x461dd8(_0x166f57,_0x5c36d3);}},_0x3b1db2=join(getRangerDir(),ACTIVE_FEATURE_FILE);if(!_0x4226ad['kAOqD'](existsSync,_0x3b1db2))return null;try{const _0x5c9735=await _0x4226ad['GAyBQ'](readFile,_0x3b1db2,'utf-8');return _0x5c9735['trim']()||null;}catch{return null;}}async function setActiveFeatureId(_0x13bc01){const _0x321a3d=_0x4550,_0x5dd790={'jXLSN':function(_0x180149){return _0x180149();},'PMyLa':function(_0x244908,_0x12f6f4){return _0x244908(_0x12f6f4);},'wPgGH':function(_0x3d08a4,_0x541b0c,_0x4fba31){return _0x3d08a4(_0x541b0c,_0x4fba31);},'pMOJW':function(_0x50ba87,_0x34532c,_0x5d792a,_0x2dc6ea){return _0x50ba87(_0x34532c,_0x5d792a,_0x2dc6ea);}},_0x590571=_0x5dd790['jXLSN'](getRangerDir),_0x3e15d5=join(_0x590571,ACTIVE_FEATURE_FILE);!_0x5dd790['PMyLa'](existsSync,_0x590571)&&await _0x5dd790[_0x321a3d(0xfe)](mkdir,_0x590571,{'recursive':!![]}),await _0x5dd790['pMOJW'](writeFile,_0x3e15d5,_0x13bc01,_0x321a3d(0xa9));}function _0x66b9(){const _0x347bb3=['\x20\x20\x20ID:\x20','555710JstqPB','\x0aNo\x20feature\x20reviews\x20found.','location','\x20\x20Expected\x20flow:','screenshot','sessionId','any','iteration','\x20verified','No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','NdrJi','1|4|0|2|3|5','\x20\x20\x20\x20\x20\x20Cancelled:\x20','checklistItems','json','authorEmail','in_progress','\x20\x20\x20▶️\x20Started\x20session\x20','\x20blocked','\x20>\x20','timing','wVnnc','blockedReason','incompleteReason','\x20\x20\x20\x20\x20📷\x20Screenshot:\x20','scenario','verification_in_progress','feedback-images','filter','wGIGy','10700270btWiTY','Scenario\x20','\x0a✅\x20Resumed\x20feature\x20review:\x20','\x0a❌\x20Invalid\x20scenario\x20number(s):\x20','NegAc','verifiedItems','repeat','\x20—\x20','zPTHU','XdWdX','tnkrT','\x0aCreating\x20feature\x20review...','NoOht','ZnZQL','\x20scenario(s).','aopal','\x20\x20\x20Branch:\x20','style','LHqMf','Multiple\x20feature\x20reviews\x20found.\x20Select\x20one:','\x20incomplete','latestReview','Current\x20session\x20not\x20found.','biAnR','write','\x0a🗑️\x20\x20Deleted\x20feature\x20review:\x20','\x0a❌\x20No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.','No\x20active\x20session\x20for\x20this\x20feature\x20review.','JaLFN','wPgGH','Unknown','exit','IGApt','screenshotUrls','XngjZ','BUwYO','soSKV','151230zabxvm','\x0a📁\x20Sessions\x20for\x20feature\x20review:\x20','replace','reports','pop','No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.','map','currentSessionId','domRef','Qepxl','CWYOj','...','5283HeDEjK','WRAsp','\x0aSearching\x20for\x20feature\x20reviews\x20matching:\x20','UVJXR',':\x20\x22','canonicalFlow','tHdkr','description','tsNaf','env','find','toFixed','zZGqw','toLocaleString','parentItemId','\x20(v','hetfZ','\x0aNo\x20matching\x20active\x20feature\x20reviews\x20found.','NtRBx','incomplete','version','xEtkD','145235iyiyDz','iyllo','trim','JZHgJ','QYSNN','isInteger','short','pipe','\x20\x20✅\x20No\x20feedback\x20to\x20address','selector','\x20at\x20[','hmtBk','items','includeDeleted','ExQoz','\x0aConcluding\x20session...','ready','status','cpgIq','blocked','CvujG','CoouP','lVbKI','length','\x20\x20\x20\x20\x20\x20Incomplete:\x20','BkPCZ','type','cEKFV','\x20\x20\x20Repository:\x20','3HgdjWy','tRKex','503960NDqtgP','\x20\x20\x20The\x20feature\x20review\x20is\x20now\x20ready\x20for\x20human\x20review\x20on\x20the\x20Ranger\x20dashboard.','\x20--current-branch','scenarios','\x0a✅\x20Feature\x20review\x20created:\x20','split','\x20\x20\x20Progress:\x20','\x0a\x20\x20\x20Scenarios:','pendingItems','mcvzS','list','\x20\x20\x20Created:\x20','\x20Session\x20','\x0a❌\x20Cannot\x20edit\x20scenario:\x20feature\x20review\x20has\x20an\x20active\x20review.','log','browserSessionId','12tBLKFV','\x0a✅\x20Scenario\x20added','dashboardUrl','storage','\x20\x20\x20\x20\x20📍\x20Annotation:\x20point\x20at\x20(','\x20\x20\x20Completed:\x20','GDenS','NknCz','hvNIL','1696CjkKSr','JwlZq','\x20\x20\x20Description:\x20','notes','unaddressedComments','/artifacts/','error','\x20\x20\x20\x20\x20📋\x20Selector:\x20','eNIcs','FkmIp','tQDrO','Spwzx','Cannot\x20add\x20scenario:\x20feature\x20review\x20has\x20an\x20active\x20review.\x20Please\x20finish\x20your\x20review\x20first:\x20','position','totalCount','selected','warn','fjuAu','Cannot\x20conclude\x20session\x20with\x20status:\x20','fQnJN','bINyg','aTeOh','completedAt','stdout','textContent','trimEnd','\x20scenarios.','spatial','749756PUvgjU','\x0a❌\x20No\x20scenarios\x20found\x20to\x20edit.','verified','\x0a⚠️\x20\x20','push','\x20unaddressed\x20reviewer\x20comment(s)\x20across\x20','incompleteItems','\x20\x20\x20Status:\x20','stats','\x20\x20\x20Updated\x20branch\x20to:\x20','assets','\x20\x20\x20','WgwXg','completed','\x0a📋\x20Feedback\x20for:\x20','vnxxy','createdAt','utf-8','limit','lRxYh','name','assetType','offset','closed','\x0a✅\x20Session\x20is\x20already\x20completed.','\x20in\x20progress','):\x20\x22','\x0aAvailable\x20scenarios:','toLocaleDateString','fsrZa','slice','WMoul','gitBranch','No\x20scenarios\x20found.','\x0a✅\x20Scenario\x20updated','canceledReason','prompt','HjFGS','join','Not\x20in\x20a\x20git\x20repository.','\x20—\x20no\x20comments','terminalReason'];_0x66b9=function(){return _0x347bb3;};return _0x66b9();}function getProgressDisplay(_0x238b34){const _0x303246=_0x4550,_0x5186dd={'OaWRI':function(_0x1d6958,_0x483fb7){return _0x1d6958+_0x483fb7;},'PGPXK':function(_0x40247e,_0x8ea22){return _0x40247e+_0x8ea22;},'DIWGb':function(_0x43ece1,_0x1926dd){return _0x43ece1===_0x1926dd;},'CoouP':function(_0x2c935a,_0x5cadad){return _0x2c935a*_0x5cadad;},'wrtYs':function(_0x3e264f,_0x29a5b2){return _0x3e264f/_0x29a5b2;},'zZGqw':function(_0x13e195,_0x2824bc){return _0x13e195+_0x2824bc;},'bfHti':function(_0x4e6030,_0x1c4832){return _0x4e6030>_0x1c4832;},'NUoRH':function(_0x1cd8d5,_0x281d58){return _0x1cd8d5>_0x281d58;},'GDenS':function(_0xf790c6,_0x50b14a){return _0xf790c6>_0x50b14a;}},_0x4fb7b4=_0x238b34[_0x303246(0xe6)]||0x0,_0x4a63d5=_0x238b34['verificationInProgressItems']||0x0,_0x5ae5b3=_0x238b34['blockedItems']||0x0,_0x2f7cf0=_0x238b34[_0x303246(0x9e)]||0x0,_0x56bcaf=_0x238b34[_0x303246(0x14f)]||0x0,_0x15b2e1=_0x5186dd['OaWRI'](_0x5186dd['PGPXK'](_0x4fb7b4+_0x4a63d5,_0x5ae5b3)+_0x2f7cf0,_0x56bcaf);if(_0x5186dd['DIWGb'](_0x15b2e1,0x0))return'-';const _0x3d8b22=0xa,_0x1f9bd4=Math['round'](_0x5186dd[_0x303246(0x13d)](_0x5186dd['wrtYs'](_0x4fb7b4,_0x15b2e1),_0x3d8b22)),_0x12d28d=_0x5186dd[_0x303246(0x11e)]('█'[_0x303246(0xe7)](_0x1f9bd4),'░'['repeat'](_0x3d8b22-_0x1f9bd4)),_0x2ea857=[];if(_0x5186dd['bfHti'](_0x5ae5b3,0x0))_0x2ea857['push'](_0x5ae5b3+_0x303246(0xd5));if(_0x5186dd['NUoRH'](_0x2f7cf0,0x0))_0x2ea857[_0x303246(0x9c)](_0x2f7cf0+_0x303246(0xf5));if(_0x5186dd['NUoRH'](_0x4a63d5,0x0))_0x2ea857['push'](_0x4a63d5+_0x303246(0xb1));const _0x4f63b4=_0x5186dd[_0x303246(0x79)](_0x2ea857['length'],0x0)?'\x20('+_0x2ea857['join'](',\x20')+')':'';return _0x12d28d+'\x20'+_0x4fb7b4+'/'+_0x15b2e1+_0x303246(0xcb)+_0x4f63b4;}function getCurrentSessionItems(_0x5a3d0e,_0xb32573){const _0x1fa754=_0x4550;if(!_0x5a3d0e[_0x1fa754(0x10d)])return _0xb32573[_0x1fa754(0xdf)](_0x2892a2=>!_0x2892a2[_0x1fa754(0xc8)]);return _0xb32573['filter'](_0x2ddd0=>_0x2ddd0['sessionId']===_0x5a3d0e[_0x1fa754(0x10d)]||!_0x2ddd0['sessionId']);}function displayFeature(_0x1da177,_0x2a69af){const _0xa6bda9=_0x4550,_0x5ca62b={'aopal':function(_0x229373,_0x46302a){return _0x229373>_0x46302a;},'qmaej':function(_0x114460,_0x17702f){return _0x114460===_0x17702f;},'eUIsn':'approved','bINyg':_0xa6bda9(0x9a),'XngjZ':function(_0x120ecb,_0x574d5b){return _0x120ecb===_0x574d5b;},'FkmIp':function(_0x40d273,_0x1a91f0){return _0x40d273===_0x1a91f0;},'oebME':_0xa6bda9(0xaf),'BkPCZ':'verification_in_progress','JsXjf':function(_0x523159,_0x2796f0){return _0x523159>_0x2796f0;},'tZgaL':function(_0x342f1c,_0x3b8214){return _0x342f1c!==_0x3b8214;},'ddtgh':function(_0x3c3390,_0x562894){return _0x3c3390+_0x562894;},'YjfxS':_0xa6bda9(0x125),'IlZWw':function(_0x18e50a,_0x5aee22){return _0x18e50a===_0x5aee22;}};console[_0xa6bda9(0x71)]('\x0a'+_0x1da177[_0xa6bda9(0xac)]+'\x20('+_0x1da177['dashboardUrl']+')');_0x1da177[_0xa6bda9(0xa0)]&&console[_0xa6bda9(0x71)]('\x20\x20\x20Progress:\x20'+getProgressDisplay(_0x1da177['stats']));_0x1da177['description']&&console[_0xa6bda9(0x71)](_0xa6bda9(0x7e)+_0x1da177['description']);_0x1da177['gitRepoUrl']&&console['log'](_0xa6bda9(0x144)+_0x1da177['gitRepoUrl']);_0x1da177['gitBranch']&&console['log'](_0xa6bda9(0xf1)+_0x1da177['gitBranch']);console['log'](_0xa6bda9(0x6e)+new Date(_0x1da177[_0xa6bda9(0xa8)])[_0xa6bda9(0x11f)]());_0x1da177['completedAt']&&console[_0xa6bda9(0x71)]('\x20\x20\x20Completed:\x20'+new Date(_0x1da177[_0xa6bda9(0x92)])['toLocaleString']());if(_0x2a69af&&_0x5ca62b[_0xa6bda9(0xf0)](_0x2a69af[_0xa6bda9(0x13f)],0x0)){console['log'](_0xa6bda9(0x14e));for(let _0x264334=0x0;_0x264334<_0x2a69af[_0xa6bda9(0x13f)];_0x264334++){const _0x28749c=_0x2a69af[_0x264334];let _0x1c070f;if(_0x5ca62b['qmaej'](_0x28749c[_0xa6bda9(0x139)],'closed')&&_0x28749c[_0xa6bda9(0xc1)]===_0x5ca62b['eUIsn'])_0x1c070f='✅';else{if(_0x28749c['status']===_0x5ca62b['bINyg'])_0x1c070f='🟢';else{if(_0x5ca62b[_0xa6bda9(0x103)](_0x28749c[_0xa6bda9(0x139)],'incomplete'))_0x1c070f='🟠';else{if(_0x28749c['status']===_0xa6bda9(0x13b))_0x1c070f='🛑';else{if(_0x5ca62b['FkmIp'](_0x28749c['status'],_0x5ca62b['oebME']))_0x1c070f='⛔';else _0x28749c['status']===_0x5ca62b[_0xa6bda9(0x141)]?_0x1c070f='⏳':_0x1c070f='⬜';}}}}const _0x2f3e49=_0x28749c['version']>0x1?_0xa6bda9(0x121)+_0x28749c['version']+')':'',_0x4576dd=_0x5ca62b['JsXjf'](_0x28749c[_0xa6bda9(0x126)],0x1)&&_0x28749c[_0xa6bda9(0x120)]&&_0x5ca62b['tZgaL'](_0x28749c[_0xa6bda9(0x139)],'closed')&&_0x28749c[_0xa6bda9(0x139)]!==_0x5ca62b[_0xa6bda9(0x90)]?'\x20[has\x20reviewer\x20feedback]':'';console['log'](_0xa6bda9(0xa3)+_0x5ca62b['ddtgh'](_0x264334,0x1)+'.\x20'+_0x1c070f+'\x20'+_0x28749c[_0xa6bda9(0x119)]+_0x2f3e49+_0x4576dd);_0x5ca62b[_0xa6bda9(0x85)](_0x28749c['status'],'blocked')&&_0x28749c['blockedReason']&&console['log']('\x20\x20\x20\x20\x20\x20Blocked:\x20'+_0x28749c[_0xa6bda9(0xd9)]);_0x5ca62b['XngjZ'](_0x28749c['status'],_0x5ca62b['YjfxS'])&&_0x28749c['incompleteReason']&&console[_0xa6bda9(0x71)](_0xa6bda9(0x140)+_0x28749c['incompleteReason']);if(_0x28749c[_0xa6bda9(0x139)]==='closed'&&_0x5ca62b['IlZWw'](_0x28749c['terminalReason'],_0x5ca62b['eUIsn']))console['log']('\x20\x20\x20\x20\x20\x20Approved');else _0x5ca62b[_0xa6bda9(0x85)](_0x28749c['status'],'closed')&&_0x28749c['canceledReason']&&console[_0xa6bda9(0x71)](_0xa6bda9(0xcf)+_0x28749c['canceledReason']);}}}export async function featureCreate(_0x1c135d,_0x2b0716){const _0x299324=_0x4550,_0x35f40a={'oDGED':function(_0x2a44c6){return _0x2a44c6();},'xEhWX':function(_0x48a2f0,_0xf3f374){return _0x48a2f0===_0xf3f374;},'sGzgu':function(_0x422416,_0x39d8d6){return _0x422416(_0x39d8d6);},'gmJql':function(_0xced8bd){return _0xced8bd();},'NegAc':function(_0x5d777c){return _0x5d777c();},'lVbKI':function(_0x2f1398,_0x53022a){return _0x2f1398(_0x53022a);},'KwnHH':function(_0x5bf146,_0x5eb948){return _0x5bf146(_0x5eb948);}},{envNames:_0x814ed5}=await _0x35f40a['oDGED'](getEnvNames);if(_0x35f40a['xEhWX'](_0x814ed5[_0x299324(0x13f)],0x0)&&!process['env']['RANGER_TEST_USERNAME']){let _0x3e31ca=0x0;try{_0x3e31ca=(await _0x35f40a['oDGED'](listCloudProfiles))[_0x299324(0x13f)];}catch{_0x3e31ca=0x1;}_0x3e31ca===0x0&&console[_0x299324(0x8c)]('\x0a'+_0x35f40a['sGzgu'](formatProfileRequiredMessage,_0x1ae27d=>bold(_0x1ae27d)));}const _0x3339f5=_0x2b0716[_0x299324(0x14a)]?_0x2b0716['scenarios'][_0x299324(0x10c)](_0xceb81c=>_0xceb81c[_0x299324(0x12a)]()):[],_0x35e44b=_0x35f40a['gmJql'](getGitRepoUrl),_0x5ce77b=_0x35f40a[_0x299324(0xe5)](getGitBranch);console['log'](_0x299324(0xec));const _0x353290=await _0x35f40a[_0x299324(0x13e)](createFeature,{'name':_0x1c135d,'description':_0x2b0716[_0x299324(0x119)],'checklist':_0x3339f5,'gitRepoUrl':_0x35e44b,'gitBranch':_0x5ce77b});await _0x35f40a['lVbKI'](setActiveFeatureId,_0x353290['id']),await _0x35f40a['KwnHH'](tryStartCurrentSession,_0x353290['id']);const _0x382715=process[_0x299324(0x11b)]['CLAUDE_SESSION_ID'];_0x382715&&registerSession(_0x382715,_0x353290['id']),console[_0x299324(0x71)](_0x299324(0x14b)+_0x353290['id']),displayFeature(_0x353290,_0x353290['checklistItems']),console['log']('\x0a➡️\x20\x20Set\x20as\x20active\x20feature\x20review');}export async function featureList(_0x393aaa){const _0x5e368b=_0x4550,_0x5c1e21={'xtTGf':_0x5e368b(0xc4),'JaLFN':function(_0x11ca80,_0x4c4c90){return _0x11ca80+_0x4c4c90;}},_0x34a0e1={'limit':_0x393aaa[_0x5e368b(0xaa)]??0xa,'offset':_0x393aaa['offset']??0x0,'includeDeleted':_0x393aaa[_0x5e368b(0x135)]};_0x393aaa['currentBranch']&&(_0x34a0e1['gitRepoUrl']=getGitRepoUrl(),_0x34a0e1[_0x5e368b(0xb8)]=getGitBranch());const _0xaf668=await listFeatures(_0x34a0e1);if(_0xaf668['items']['length']===0x0){console['log'](_0x5c1e21['xtTGf']);return;}const _0x39f254=_0xaf668[_0x5e368b(0x8a)]>_0xaf668[_0x5e368b(0x134)]['length']?'Showing\x20'+_0xaf668[_0x5e368b(0x134)][_0x5e368b(0x13f)]+'\x20of\x20'+_0xaf668['totalCount']:_0xaf668[_0x5e368b(0x8a)]+'\x20feature\x20review(s)\x20found';console['log']('\x0a'+_0x39f254+':\x0a');for(const _0xa02af9 of _0xaf668[_0x5e368b(0x134)]){console[_0x5e368b(0x71)](''+_0xa02af9['name']),console['log'](_0x5e368b(0xc2)+_0xa02af9['id']),_0xa02af9[_0x5e368b(0xa0)]&&console['log'](_0x5e368b(0x14d)+getProgressDisplay(_0xa02af9['stats'])),_0xa02af9[_0x5e368b(0xb8)]&&console['log']('\x20\x20\x20Branch:\x20'+_0xa02af9[_0x5e368b(0xb8)]),console[_0x5e368b(0x71)]('\x20\x20\x20Created:\x20'+new Date(_0xa02af9['createdAt'])['toLocaleDateString']()),console['log']('');}const _0x29340d=_0x34a0e1[_0x5e368b(0xaa)]??0xa,_0x55c88b=_0x5c1e21[_0x5e368b(0xfd)](_0x34a0e1[_0x5e368b(0xae)]??0x0,_0xaf668[_0x5e368b(0x134)][_0x5e368b(0x13f)]);if(_0x55c88b<_0xaf668['totalCount']){const _0x16ae16=_0x29340d!==0xa?'\x20--limit\x20'+_0x29340d:'',_0x1e4036=_0x393aaa['currentBranch']?_0x5e368b(0x149):'',_0x320718=_0x393aaa['includeDeleted']?'\x20--include-deleted':'';console['log']('Next\x20page:\x20ranger\x20list\x20--offset\x20'+_0x55c88b+_0x16ae16+_0x1e4036+_0x320718);}}export async function featureShow(_0x1a4064){const _0x312edb=_0x4550,_0x39c414={'WMoul':_0x312edb(0xcc)},_0x11f114=_0x1a4064||await getActiveFeatureId();if(!_0x11f114)throw new Error(_0x39c414[_0x312edb(0xb7)]);const _0x6b9315=await getFeature(_0x11f114);displayFeature(_0x6b9315,_0x6b9315[_0x312edb(0xd0)]);}export async function featureResume(_0x5679fc){const _0x2a76f5=_0x4550,_0x100aab={'XdWdX':function(_0x512de4){return _0x512de4();},'cpgIq':function(_0x55fe1,_0x50be69){return _0x55fe1!==_0x50be69;},'CWYOj':function(_0x4b2da4,_0x2bddec){return _0x4b2da4(_0x2bddec);},'sGzBw':function(_0x306cb0){return _0x306cb0();},'lTBvL':function(_0x4b9acf,_0xd31aa7){return _0x4b9acf&&_0xd31aa7;},'NmXKy':_0x2a76f5(0xbf),'vFTBj':function(_0x505535,_0x3a2332){return _0x505535||_0x3a2332;},'wVWGI':'any','Qepxl':function(_0x120623,_0x1f86ad){return _0x120623(_0x1f86ad);},'vfyQt':function(_0x2f62e8,_0x1b1bcb){return _0x2f62e8===_0x1b1bcb;},'pKqQJ':_0x2a76f5(0x123),'LmHDs':_0x2a76f5(0x8b),'hvNIL':_0x2a76f5(0xf4),'zPTHU':function(_0x11ae1e,_0x18c32e){return _0x11ae1e(_0x18c32e);},'tQDrO':function(_0x4c9629,_0x2e73ca,_0x11713c){return _0x4c9629(_0x2e73ca,_0x11713c);},'NknCz':function(_0x4036e7,_0xa2df29){return _0x4036e7(_0xa2df29);}};if(_0x5679fc){const _0x32eed3=await getFeature(_0x5679fc);await setActiveFeatureId(_0x32eed3['id']);const _0x47c04b=_0x100aab[_0x2a76f5(0xea)](getGitBranch);_0x47c04b&&_0x100aab[_0x2a76f5(0x13a)](_0x47c04b,_0x32eed3['gitBranch'])&&(await updateFeature(_0x32eed3['id'],{'gitBranch':_0x47c04b}),console[_0x2a76f5(0x71)]('\x20\x20\x20Updated\x20branch\x20to:\x20'+_0x47c04b));console['log'](_0x2a76f5(0xe3)+_0x32eed3['name']+'\x20('+_0x32eed3['id']+')'),await _0x100aab[_0x2a76f5(0x110)](tryStartCurrentSession,_0x32eed3['id']);const _0x3d45dd=process[_0x2a76f5(0x11b)]['CLAUDE_SESSION_ID'];_0x3d45dd&&registerSession(_0x3d45dd,_0x32eed3['id']);displayFeature(_0x32eed3,_0x32eed3[_0x2a76f5(0xd0)]),await _0x100aab[_0x2a76f5(0x110)](printFeedbackNudge,_0x32eed3['id']);return;}const _0x159056=getGitRepoUrl(),_0x5c4bfd=_0x100aab['sGzBw'](getGitBranch);if(_0x100aab['lTBvL'](!_0x159056,!_0x5c4bfd))throw new Error(_0x100aab['NmXKy']);console[_0x2a76f5(0x71)](_0x2a76f5(0x114)+(_0x159056||_0x2a76f5(0xc9))+'\x20/\x20'+_0x100aab['vFTBj'](_0x5c4bfd,_0x100aab['wVWGI'])+_0x2a76f5(0x111));const _0x4a9d61=await _0x100aab[_0x2a76f5(0x10f)](listFeatures,{'gitRepoUrl':_0x159056,'gitBranch':_0x5c4bfd}),_0x1d6ddb=_0x4a9d61['items'][_0x2a76f5(0xdf)](_0x3e5366=>_0x3e5366['status']?_0x3e5366[_0x2a76f5(0x139)]!==_0x2a76f5(0x9a):!_0x3e5366['completedAt']);if(_0x100aab['vfyQt'](_0x1d6ddb['length'],0x0)){console[_0x2a76f5(0x71)](_0x100aab['pKqQJ']),console['log']('Run:\x20ranger\x20create\x20\x22<name>\x22\x20to\x20create\x20a\x20new\x20feature\x20review');return;}let _0x8ef568;if(_0x1d6ddb[_0x2a76f5(0x13f)]===0x1)_0x8ef568=_0x1d6ddb[0x0];else{const _0x5dfc4b=process['stdin']['isTTY']&&process[_0x2a76f5(0x93)]['isTTY'];if(!_0x5dfc4b){console['log']('\x0aNon-interactive\x20mode\x20detected.\x20Multiple\x20feature\x20reviews\x20found:');for(const _0x3ffb67 of _0x1d6ddb){console[_0x2a76f5(0x71)]('\x20\x20'+_0x3ffb67[_0x2a76f5(0xac)]),console[_0x2a76f5(0x71)]('\x20\x20\x20\x20\x20ID:\x20'+_0x3ffb67['id']),_0x3ffb67['stats']&&console[_0x2a76f5(0x71)]('\x20\x20\x20\x20\x20Progress:\x20'+_0x100aab['Qepxl'](getProgressDisplay,_0x3ffb67[_0x2a76f5(0xa0)])),_0x3ffb67['gitBranch']&&console[_0x2a76f5(0x71)]('\x20\x20\x20\x20\x20Branch:\x20'+_0x3ffb67['gitBranch']);}throw new Error('Please\x20specify\x20the\x20feature\x20review\x20ID:\x20ranger\x20resume\x20<id>');}const {selected:_0x4315fb}=await _0x550f7e[_0x2a76f5(0xbc)]([{'type':_0x2a76f5(0x6d),'name':_0x100aab['LmHDs'],'message':_0x100aab[_0x2a76f5(0x7b)],'choices':_0x1d6ddb['map'](_0x212040=>({'name':_0x212040['name']+'\x20('+_0x212040['id']+')','value':_0x212040['id']}))}]);_0x8ef568=_0x1d6ddb[_0x2a76f5(0x11c)](_0x1d6d90=>_0x1d6d90['id']===_0x4315fb);}await _0x100aab[_0x2a76f5(0xe9)](setActiveFeatureId,_0x8ef568['id']);_0x5c4bfd&&_0x100aab[_0x2a76f5(0x13a)](_0x5c4bfd,_0x8ef568[_0x2a76f5(0xb8)])&&(await _0x100aab['tQDrO'](updateFeature,_0x8ef568['id'],{'gitBranch':_0x5c4bfd}),console[_0x2a76f5(0x71)](_0x2a76f5(0xa1)+_0x5c4bfd));console['log']('\x0a✅\x20Resumed\x20feature\x20review:\x20'+_0x8ef568['name']+'\x20('+_0x8ef568['id']+')'),await tryStartCurrentSession(_0x8ef568['id']);const _0x144515=await _0x100aab[_0x2a76f5(0x7a)](getFeature,_0x8ef568['id']),_0x1493d4=process['env']['CLAUDE_SESSION_ID'];_0x1493d4&&registerSession(_0x1493d4,_0x144515['id']),_0x100aab[_0x2a76f5(0x86)](displayFeature,_0x144515,_0x144515['checklistItems']),await _0x100aab[_0x2a76f5(0x7a)](printFeedbackNudge,_0x144515['id']);}async function printFeedbackNudge(_0x4da274){const _0x1ea4b9=_0x4550,_0x496491={'xYruA':function(_0x4a43fd,_0x13c204){return _0x4a43fd>_0x13c204;},'xEtkD':'\x20\x20\x20Run\x20`ranger\x20get-review`\x20to\x20see\x20what\x20needs\x20to\x20be\x20fixed.'};try{const {items:_0x2242a6}=await getActionItems(_0x4da274);let _0x12f8c5=0x0,_0xe5f2e3=0x0;for(const _0x89920e of _0x2242a6){const _0x39e8e2=await getItemFeedback(_0x4da274,_0x89920e['id']);_0x39e8e2[_0x1ea4b9(0x80)][_0x1ea4b9(0x13f)]>0x0&&(_0x12f8c5+=_0x39e8e2['unaddressedComments'][_0x1ea4b9(0x13f)],_0xe5f2e3++);}_0x496491['xYruA'](_0x12f8c5,0x0)&&(console[_0x1ea4b9(0x71)](_0x1ea4b9(0x9b)+_0x12f8c5+_0x1ea4b9(0x9d)+_0xe5f2e3+_0x1ea4b9(0xef)),console['log'](_0x496491[_0x1ea4b9(0x127)]));}catch{}}async function tryStartCurrentSession(_0xb29cac){const _0x147c40=_0x4550,_0x4bebff={'KxioH':function(_0x2d6a0b,_0x149994){return _0x2d6a0b(_0x149994);}};try{const {sessions:_0x38f37e}=await _0x4bebff['KxioH'](listFeatureSessions,_0xb29cac),_0x200eda=_0x38f37e['find'](_0x281278=>_0x281278['status']===_0x147c40(0x138));_0x200eda&&(await startSession(_0xb29cac,_0x200eda['id']),console['log'](_0x147c40(0xd4)+_0x200eda['iteration']));}catch{}}export async function featureReport(_0xbaa47a,_0x495bb5){const _0x35dc29=_0x4550,_0x1f6759={'bYYtw':function(_0x20a4fe){return _0x20a4fe();},'lZqvI':function(_0x81d11c){return _0x81d11c();},'cuEYp':_0x35dc29(0x109),'wrvgf':'utf-8'},_0xacdff7=_0xbaa47a||await _0x1f6759['bYYtw'](getActiveFeatureId);if(!_0xacdff7)throw new Error(_0x35dc29(0x10b));console['log']('\x0aGenerating\x20report...');const _0x599ee6=await getFeatureReportMarkdown(_0xacdff7,{'style':_0x495bb5[_0x35dc29(0xf2)]}),_0x458148=_0x495bb5['output']||join(_0x1f6759['lZqvI'](getRangerDir),_0x1f6759['cuEYp'],_0xacdff7+'.md'),_0x4fbda1=join(_0x458148,'..');!existsSync(_0x4fbda1)&&await mkdir(_0x4fbda1,{'recursive':!![]}),await writeFile(_0x458148,_0x599ee6,_0x1f6759['wrvgf']),console['log']('\x0a✅\x20Report\x20generated:\x20'+_0x458148);}function getScenarioResult(_0x348e38){const _0x364a84=_0x4550,_0x448e1b={'PheYv':function(_0x47cd55,_0x3225a8){return _0x47cd55===_0x3225a8;},'wmuam':function(_0x381b75,_0x1684d5){return _0x381b75===_0x1684d5;}};if(_0x448e1b['PheYv'](_0x348e38[_0x364a84(0x139)],_0x364a84(0xaf)))return _0x348e38[_0x364a84(0xc1)]??_0x364a84(0xaf);if(_0x448e1b['wmuam'](_0x348e38[_0x364a84(0x139)],_0x364a84(0xdd)))return _0x364a84(0xd3);return _0x348e38[_0x364a84(0x139)];}function getScenarioRationale(_0x3bf43b,_0x24e75c){const _0x3342b8=_0x4550,_0x3e6abb={'BUwYO':_0x3342b8(0xce)},_0x1d2a3c=_0x3e6abb[_0x3342b8(0x104)]['split']('|');let _0xaea018=0x0;while(!![]){switch(_0x1d2a3c[_0xaea018++]){case'0':if(_0x3bf43b['incompleteReason'])return _0x3bf43b[_0x3342b8(0xda)];continue;case'1':if(_0x24e75c)return _0x24e75c;continue;case'2':if(_0x3bf43b['canceledReason'])return _0x3bf43b[_0x3342b8(0xbb)];continue;case'3':if(_0x3bf43b['notes'])return _0x3bf43b[_0x3342b8(0x7f)];continue;case'4':if(_0x3bf43b[_0x3342b8(0xd9)])return _0x3bf43b['blockedReason'];continue;case'5':return null;}break;}}export async function featureReportPrDescription(_0x3358dc,_0x2322d4){const _0x1550e3=_0x4550,_0x3c3558={'WzJKM':_0x1550e3(0x10b),'tnkrT':function(_0x132dba,_0x501ae5,_0x2a1b40){return _0x132dba(_0x501ae5,_0x2a1b40);},'FDwMJ':function(_0x473706,_0x57b37c){return _0x473706===_0x57b37c;},'aTeOh':function(_0x3c97a6,_0x12f9d9){return _0x3c97a6>_0x12f9d9;},'xrFld':'\x0aAvailable\x20scenarios:','ckEwF':function(_0x4c82c8,_0xf33925){return _0x4c82c8<_0xf33925;},'HjFGS':function(_0x2788a5,_0x25d55b,_0x2779d7,_0x185e89){return _0x2788a5(_0x25d55b,_0x2779d7,_0x185e89);},'JZHgJ':function(_0x282c7f,_0x1196cd,_0x2737c5){return _0x282c7f(_0x1196cd,_0x2737c5);}},_0x17c16f=_0x3358dc||await getActiveFeatureId();if(!_0x17c16f)throw new Error(_0x3c3558['WzJKM']);const _0x44779f=await getFeature(_0x17c16f),_0x5c9d02=_0x44779f[_0x1550e3(0xd0)]||[],_0x1f127a=_0x3c3558[_0x1550e3(0xeb)](getCurrentSessionItems,_0x44779f,_0x5c9d02);_0x3c3558['FDwMJ'](_0x1f127a[_0x1550e3(0x13f)],0x0)&&(console['error']('\x0a❌\x20No\x20scenarios\x20found\x20to\x20include.'),process['exit'](0x1));const _0x4fb2ca=_0x2322d4['excludeScenarios']??[],_0x26ff72=_0x4fb2ca[_0x1550e3(0xdf)](_0x121c1f=>!Number[_0x1550e3(0x12d)](_0x121c1f)||_0x121c1f<0x1||_0x121c1f>_0x1f127a['length']);if(_0x3c3558[_0x1550e3(0x91)](_0x26ff72[_0x1550e3(0x13f)],0x0)){console['error'](_0x1550e3(0xe4)+_0x26ff72['join'](',\x20')),console[_0x1550e3(0x71)](_0x3c3558['xrFld']);for(let _0x5ed8d3=0x0;_0x3c3558['ckEwF'](_0x5ed8d3,_0x1f127a[_0x1550e3(0x13f)]);_0x5ed8d3++){console['log']('\x20\x20'+(_0x5ed8d3+0x1)+'.\x20'+_0x1f127a[_0x5ed8d3][_0x1550e3(0x119)]);}process['exit'](0x1);}const _0x3a1d68=new Set(_0x4fb2ca[_0x1550e3(0x10c)](_0x2cb183=>_0x2cb183-0x1)),_0x4ef97f=_0x1f127a[_0x1550e3(0xdf)]((_0x45232b,_0x50cef9)=>!_0x3a1d68['has'](_0x50cef9));_0x4ef97f[_0x1550e3(0x13f)]===0x0&&(console['error']('\x0a❌\x20All\x20scenarios\x20were\x20excluded.'),process[_0x1550e3(0x100)](0x1));if(_0x2322d4[_0x1550e3(0xd1)])await _0x3c3558[_0x1550e3(0xbd)](outputJsonReport,_0x17c16f,_0x44779f,_0x4ef97f);else{const _0x1c5d97=await _0x3c3558[_0x1550e3(0x12b)](getFeatureReportMarkdown,_0x17c16f,{'itemIds':_0x4ef97f[_0x1550e3(0x10c)](_0x133f7a=>_0x133f7a['id'])});process['stdout'][_0x1550e3(0xf9)](_0x1c5d97[_0x1550e3(0x95)]()+'\x0a');}}async function outputJsonReport(_0x39f3be,_0x3194ae,_0x4dcd08){const _0x3a661b=_0x4550,_0xe5aa88={'fjuAu':function(_0x9d224d,_0x12553d){return _0x9d224d(_0x12553d);},'LHqMf':function(_0xde39b0,_0x4dec84){return _0xde39b0===_0x4dec84;},'Bivdb':function(_0x5b427b,_0x3d5341,_0x2c9038){return _0x5b427b(_0x3d5341,_0x2c9038);},'cASNs':function(_0x1cb7b8,_0x46846f){return _0x1cb7b8(_0x46846f);}},_0x3c2b69=getApiBaseUrl(),_0x381b5b=await _0xe5aa88['cASNs'](getFeatureReport,_0x39f3be),_0x7d4b66=new Map(_0x381b5b['checklistItems']['map'](_0x2b4b62=>[_0x2b4b62['id'],_0x2b4b62])),_0x3b9f2a=await Promise['all'](_0x4dcd08[_0x3a661b(0x10c)](async _0x48cbb5=>{const _0x28d802=_0x3a661b,_0x451e4e=_0x7d4b66['get'](_0x48cbb5['id']),_0x3d8d60=_0x451e4e?.['linkedSession']??null;let _0x3962fa=[];if(_0x48cbb5[_0x28d802(0x72)])try{const {steps:_0x1ce6d1}=await _0xe5aa88[_0x28d802(0x8d)](getBrowserSessionSteps,_0x48cbb5[_0x28d802(0x72)]);_0x1ce6d1['length']>0x0&&(_0x3962fa=_0x1ce6d1['map'](_0x208d1c=>{const _0x15407e=_0x28d802,_0x5082b8=_0x208d1c[_0x15407e(0xa2)]['find'](_0x185f0c=>_0x185f0c[_0x15407e(0xad)]===_0x15407e(0xc7)&&_0x185f0c[_0x15407e(0xd7)]==='after')??_0x208d1c[_0x15407e(0xa2)][_0x15407e(0x11c)](_0x26de4a=>_0x26de4a[_0x15407e(0xad)]==='screenshot');let _0x10d845=null,_0x3026f7=null;if(_0x5082b8){const _0x5b3b52=_0x5082b8[_0x15407e(0x76)][_0x15407e(0xc5)]['split']('/')['pop']();_0x10d845=_0x3c2b69+'/api/v1/mcp/browser-sessions/'+_0x48cbb5['browserSessionId']+_0x15407e(0x81)+_0x5b3b52,_0x5b3b52&&(_0x3026f7=_0x5b3b52['replace'](/\.\w+$/,'')[_0x15407e(0x108)](/^(key_)?\d+_/,'')['replace'](/[-_]/g,'\x20'));}return{'description':_0x3026f7||_0x208d1c['description']||_0x208d1c['stepName']||'Step\x20'+_0x208d1c[_0x15407e(0x89)],'screenshot':_0x10d845,'is_key_step':_0x208d1c['isKeyStep']};}));}catch{}return _0xe5aa88[_0x28d802(0xf3)](_0x3962fa[_0x28d802(0x13f)],0x0)&&_0x3d8d60?.['screenshotUrls']&&(_0x3962fa=_0x3d8d60[_0x28d802(0x102)]['map']((_0x2975c4,_0x480553)=>({'description':'Screenshot\x20'+(_0x480553+0x1),'screenshot':_0x2975c4,'is_key_step':![]}))),{'description':_0x48cbb5[_0x28d802(0x119)],'result':getScenarioResult(_0x48cbb5),'rationale':_0xe5aa88['Bivdb'](getScenarioRationale,_0x48cbb5,_0x3d8d60?.['agentResponse']),'steps':_0x3962fa};})),_0x23d60b={'url':_0x3194ae[_0x3a661b(0x75)],'scenarios':_0x3b9f2a};process[_0x3a661b(0x93)]['write'](JSON['stringify'](_0x23d60b,null,0x2)+'\x0a');}export async function featureConcludeSession(_0x3fd1d6){const _0x330cb3=_0x4550,_0x6191dc={'QYSNN':_0x330cb3(0xcc),'MNhWE':_0x330cb3(0xfc),'ClnQD':function(_0x3230a3,_0x16001c){return _0x3230a3(_0x16001c);},'tsNaf':_0x330cb3(0xf7),'WgwXg':function(_0xcaf140,_0x104850){return _0xcaf140===_0x104850;},'UVJXR':_0x330cb3(0xd3),'soSKV':_0x330cb3(0x137)},_0x2d5df6=_0x3fd1d6||await getActiveFeatureId();if(!_0x2d5df6)throw new Error(_0x6191dc[_0x330cb3(0x12c)]);const _0x560b71=await getFeature(_0x2d5df6);if(!_0x560b71[_0x330cb3(0x10d)])throw new Error(_0x6191dc['MNhWE']);const {sessions:_0x2beea4}=await _0x6191dc['ClnQD'](listFeatureSessions,_0x2d5df6),_0x118802=_0x2beea4[_0x330cb3(0x11c)](_0x174138=>_0x174138['id']===_0x560b71[_0x330cb3(0x10d)]);if(!_0x118802)throw new Error(_0x6191dc[_0x330cb3(0x11a)]);if(_0x6191dc[_0x330cb3(0xa4)](_0x118802['status'],'completed')){console['log'](_0x330cb3(0xb0));return;}if(_0x118802['status']!==_0x6191dc[_0x330cb3(0x115)])throw new Error(_0x330cb3(0x8e)+_0x118802[_0x330cb3(0x139)]);console[_0x330cb3(0x71)](_0x6191dc[_0x330cb3(0x105)]),await concludeSession(_0x2d5df6,_0x560b71['currentSessionId']),console['log']('\x0a✅\x20Session\x20'+_0x118802[_0x330cb3(0xca)]+'\x20concluded.'),console['log'](_0x330cb3(0x148));}export async function featureSessions(_0x2af00d){const _0x3fa1ad=_0x4550,_0x5c680a={'TcwEJ':function(_0x1409b8){return _0x1409b8();},'iyllo':function(_0x199bb8,_0x3eb632){return _0x199bb8(_0x3eb632);},'skdAg':function(_0x26ff34,_0x3ef322){return _0x26ff34(_0x3ef322);},'NoOht':function(_0x499e7e,_0x21c359){return _0x499e7e===_0x21c359;},'mcvzS':function(_0x9acd67,_0x1876d1){return _0x9acd67===_0x1876d1;},'tHdkr':'in_progress'},_0x253884=_0x2af00d||await _0x5c680a['TcwEJ'](getActiveFeatureId);if(!_0x253884)throw new Error('No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.');const _0x39d353=await _0x5c680a[_0x3fa1ad(0x129)](getFeature,_0x253884);console[_0x3fa1ad(0x71)](_0x3fa1ad(0x107)+_0x39d353[_0x3fa1ad(0xac)]+'\x0a');const {sessions:_0x14805f}=await _0x5c680a['skdAg'](listFeatureSessions,_0x253884);if(_0x5c680a[_0x3fa1ad(0xed)](_0x14805f['length'],0x0)){console['log']('No\x20sessions\x20found.');return;}for(const _0x2d359b of _0x14805f){const _0x12609a=_0x2d359b[_0x3fa1ad(0x139)]===_0x3fa1ad(0xa5)?'✅':_0x5c680a[_0x3fa1ad(0x6c)](_0x2d359b['status'],_0x5c680a[_0x3fa1ad(0x118)])?'🔄':'▶️';console[_0x3fa1ad(0x71)](_0x12609a+_0x3fa1ad(0x6f)+_0x2d359b['iteration']+'\x20('+_0x2d359b['id']+')'),console[_0x3fa1ad(0x71)](_0x3fa1ad(0x9f)+_0x2d359b['status']),console['log'](_0x3fa1ad(0x6e)+new Date(_0x2d359b[_0x3fa1ad(0xa8)])[_0x3fa1ad(0x11f)]()),_0x2d359b[_0x3fa1ad(0x92)]&&console[_0x3fa1ad(0x71)](_0x3fa1ad(0x78)+new Date(_0x2d359b[_0x3fa1ad(0x92)])[_0x3fa1ad(0x11f)]()),console[_0x3fa1ad(0x71)]('');}}export async function featureAddScenario(_0x58f177,_0x4a8084){const _0x34c369=_0x4550,_0x27caf1={'eQCzl':'No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review'},_0x8b10ad=_0x4a8084||await getActiveFeatureId();if(!_0x8b10ad)throw new Error(_0x27caf1['eQCzl']);const _0x51ccc7=await getFeature(_0x8b10ad);if(_0x51ccc7['latestReview']&&!_0x51ccc7['latestReview']['submittedAt'])throw new Error(_0x34c369(0x88)+_0x51ccc7['dashboardUrl']);await createChecklistItem(_0x8b10ad,_0x58f177);const _0x3200b7=await getFeature(_0x8b10ad);console[_0x34c369(0x71)](_0x34c369(0x74)),displayFeature(_0x3200b7,_0x3200b7['checklistItems']);}export async function featureEditScenario(_0x4bf6ca,_0x5e6879){const _0x117ed1=_0x4550,_0x1f0d00={'ZibLl':_0x117ed1(0x70),'WRAsp':function(_0x3395c9,_0x453e11){return _0x3395c9===_0x453e11;},'wGIGy':function(_0x44c3c1,_0x6ef4ae){return _0x44c3c1<_0x6ef4ae;},'biAnR':function(_0x3b5f97,_0x1f4cbd){return _0x3b5f97>=_0x1f4cbd;},'tRKex':'\x0aAvailable\x20scenarios:','AvgMk':function(_0x3485ea,_0x3e2381){return _0x3485ea<_0x3e2381;},'wVnnc':function(_0x3bf2aa,_0x487257){return _0x3bf2aa+_0x487257;},'Spwzx':function(_0xa72f9c,_0x5c748e,_0x240957,_0x3db005){return _0xa72f9c(_0x5c748e,_0x240957,_0x3db005);},'bNejK':function(_0x57e73b,_0x55ecd4){return _0x57e73b(_0x55ecd4);}},_0x5ee143=_0x5e6879['id']||await getActiveFeatureId();!_0x5ee143&&(console['error'](_0x117ed1(0xfb)),console['error']('Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review'),process[_0x117ed1(0x100)](0x1));const _0x20fdb9=await getFeature(_0x5ee143);_0x20fdb9[_0x117ed1(0xf6)]&&!_0x20fdb9['latestReview']['submittedAt']&&(console['error'](_0x1f0d00['ZibLl']),console[_0x117ed1(0x82)]('Please\x20finish\x20your\x20review\x20first:'),console[_0x117ed1(0x82)]('\x20\x20'+_0x20fdb9[_0x117ed1(0x75)]),process[_0x117ed1(0x100)](0x1));const _0x1034d8=_0x20fdb9[_0x117ed1(0xd0)]||[];_0x1034d8[_0x117ed1(0x13f)]===0x0&&(console[_0x117ed1(0x82)](_0x117ed1(0x99)),process[_0x117ed1(0x100)](0x1));if(_0x1f0d00[_0x117ed1(0x113)](_0x5e6879[_0x117ed1(0xdc)],undefined)){console[_0x117ed1(0x82)]('\x0a❌\x20No\x20scenario\x20number\x20provided.\x20Use\x20--scenario\x20<number>.'),console[_0x117ed1(0x71)](_0x117ed1(0xb3));for(let _0x1bfbca=0x0;_0x1f0d00[_0x117ed1(0xe0)](_0x1bfbca,_0x1034d8['length']);_0x1bfbca++){console['log']('\x20\x20'+(_0x1bfbca+0x1)+'.\x20'+_0x1034d8[_0x1bfbca]['description']);}process['exit'](0x1);}const _0x2f3149=_0x5e6879['scenario']-0x1;if(_0x1f0d00[_0x117ed1(0xe0)](_0x2f3149,0x0)||_0x1f0d00[_0x117ed1(0xf8)](_0x2f3149,_0x1034d8['length'])){console['error']('\x0a❌\x20Invalid\x20scenario\x20index:\x20'+_0x5e6879[_0x117ed1(0xdc)]+'.\x20Feature\x20review\x20has\x20'+_0x1034d8['length']+_0x117ed1(0x96)),console[_0x117ed1(0x71)](_0x1f0d00[_0x117ed1(0x146)]);for(let _0x19e861=0x0;_0x1f0d00['AvgMk'](_0x19e861,_0x1034d8[_0x117ed1(0x13f)]);_0x19e861++){console[_0x117ed1(0x71)]('\x20\x20'+_0x1f0d00[_0x117ed1(0xd8)](_0x19e861,0x1)+'.\x20'+_0x1034d8[_0x19e861][_0x117ed1(0x119)]);}process['exit'](0x1);}const _0x7022c7=_0x1034d8[_0x2f3149];await _0x1f0d00[_0x117ed1(0x87)](updateChecklistItem,_0x5ee143,_0x7022c7['id'],{'description':_0x4bf6ca});const _0xecdee8=await _0x1f0d00['bNejK'](getFeature,_0x5ee143);console[_0x117ed1(0x71)](_0x117ed1(0xba)),displayFeature(_0xecdee8,_0xecdee8['checklistItems']);}async function downloadFeedbackImage(_0x380e40,_0x5b404b){const _0x3c1ee2=_0x4550,_0x2a332f={'ZnZQL':function(_0x104310,_0x2150ea,_0x1aabf9){return _0x104310(_0x2150ea,_0x1aabf9);},'CckYa':function(_0x39429b,_0x13eba4){return _0x39429b(_0x13eba4);},'eNIcs':function(_0x269c00,_0x2faff5,_0x3c6a95){return _0x269c00(_0x2faff5,_0x3c6a95);}};try{const _0x37471c=_0x2a332f[_0x3c1ee2(0xee)](join,getRangerDir(),_0x3c1ee2(0xde));await mkdir(_0x37471c,{'recursive':!![]});const _0x33ff95=join(_0x37471c,'comment_'+_0x5b404b+'.png'),_0x5467fe=await _0x2a332f['CckYa'](fetch,_0x380e40);if(!_0x5467fe['ok'])return null;const _0x9059c0=Buffer['from'](await _0x5467fe['arrayBuffer']());return await _0x2a332f[_0x3c1ee2(0x84)](writeFile,_0x33ff95,_0x9059c0),_0x33ff95;}catch{return null;}}export async function featureGetReview(_0x549fb3){const _0x41f10f=_0x4550,_0x26af10={'ViETi':function(_0x4543de){return _0x4543de();},'CvujG':_0x41f10f(0xcc),'yGghw':function(_0x3884ec,_0x3f4c03){return _0x3884ec(_0x3f4c03);},'QbmwW':function(_0xe2c11d,_0x16f9fe){return _0xe2c11d===_0x16f9fe;},'fsrZa':_0x41f10f(0xb9),'ALGXw':function(_0x5a73f1,_0x379740,_0x579f53){return _0x5a73f1(_0x379740,_0x579f53);},'cEKFV':function(_0x25420a,_0x557460){return _0x25420a>_0x557460;},'hmtBk':_0x41f10f(0x12e),'lIViL':'numeric','TGynT':_0x41f10f(0xff),'fQnJN':'point','jpygp':function(_0x3b0c50,_0x49f9ab){return _0x3b0c50>=_0x49f9ab;}},_0x2488dd=_0x549fb3||await _0x26af10['ViETi'](getActiveFeatureId);if(!_0x2488dd)throw new Error(_0x26af10[_0x41f10f(0x13c)]);const _0x4b884a=await _0x26af10['yGghw'](getFeature,_0x2488dd),{items:_0x29b1a7}=await _0x26af10['yGghw'](getActionItems,_0x2488dd);console[_0x41f10f(0x71)](_0x41f10f(0xa6)+_0x4b884a['name']+'\x20('+_0x4b884a['id']+')\x0a');if(_0x26af10['QbmwW'](_0x29b1a7[_0x41f10f(0x13f)],0x0)){console['log'](_0x26af10[_0x41f10f(0xb5)]);return;}for(let _0x1853b5=0x0;_0x1853b5<_0x29b1a7[_0x41f10f(0x13f)];_0x1853b5++){const _0x56f550=_0x29b1a7[_0x1853b5],_0x50e6ac=_0x56f550[_0x41f10f(0x126)]>0x1?_0x41f10f(0x121)+_0x56f550[_0x41f10f(0x126)]+')':'',_0x407897=await _0x26af10['ALGXw'](getItemFeedback,_0x2488dd,_0x56f550['id']);if(_0x26af10[_0x41f10f(0x143)](_0x407897[_0x41f10f(0x80)]['length'],0x0)){console['log'](_0x41f10f(0xe2)+(_0x1853b5+0x1)+_0x41f10f(0x116)+_0x56f550[_0x41f10f(0x119)]+'\x22'+_0x50e6ac+_0x41f10f(0xe8)+_0x407897['unaddressedComments'][_0x41f10f(0x13f)]+'\x20unaddressed\x20comment(s)');for(const _0x35a782 of _0x407897['unaddressedComments']){const _0x47e0af=new Date(_0x35a782['createdAt'])[_0x41f10f(0xb4)]('en-US',{'month':_0x26af10[_0x41f10f(0x133)],'day':_0x26af10['lIViL']}),_0x516bed=_0x35a782['authorName']||_0x35a782[_0x41f10f(0xd2)]||_0x26af10['TGynT'];console[_0x41f10f(0x71)]('\x20\x20💬\x20'+_0x516bed+'\x20('+_0x47e0af+_0x41f10f(0xb2)+_0x35a782['content']+'\x22');if(_0x35a782['assetUrl']){const _0x16e4cd=await downloadFeedbackImage(_0x35a782['assetUrl'],_0x35a782['id']);_0x16e4cd&&console[_0x41f10f(0x71)](_0x41f10f(0xdb)+_0x16e4cd);}if(_0x35a782['domRef']){const _0x182e2a=_0x35a782['domRef'][_0x41f10f(0x131)]['split'](_0x41f10f(0xd6))[_0x41f10f(0x10a)]()?.[_0x41f10f(0x14c)](':')[0x0]||'element',_0x14c168=_0x35a782[_0x41f10f(0x10e)][_0x41f10f(0x94)]?'\x20\x22'+_0x35a782[_0x41f10f(0x10e)]['textContent'][_0x41f10f(0xb6)](0x0,0x3c)+'\x22':'';console['log']('\x20\x20\x20\x20\x20🎯\x20Element:\x20<'+_0x182e2a+'>'+_0x14c168),console[_0x41f10f(0x71)](_0x41f10f(0x83)+_0x35a782[_0x41f10f(0x10e)][_0x41f10f(0x131)]);}else{if(_0x35a782[_0x41f10f(0x97)]){const _0x4120a2=_0x35a782['spatial']['coordinates'];_0x35a782[_0x41f10f(0x97)][_0x41f10f(0x142)]===_0x26af10[_0x41f10f(0x8f)]&&_0x26af10['jpygp'](_0x4120a2['length'],0x2)?console['log'](_0x41f10f(0x77)+_0x4120a2[0x0][_0x41f10f(0x11d)](0x2)+',\x20'+_0x4120a2[0x1][_0x41f10f(0x11d)](0x2)+')'):console[_0x41f10f(0x71)]('\x20\x20\x20\x20\x20📍\x20Annotation:\x20'+_0x35a782['spatial']['type']+_0x41f10f(0x132)+_0x4120a2['map'](_0x20232d=>_0x20232d[_0x41f10f(0x11d)](0x2))[_0x41f10f(0xbe)](',\x20')+']');}}}if(_0x407897[_0x41f10f(0x117)]){console['log'](_0x41f10f(0xc6));for(const _0x363848 of _0x407897['canonicalFlow']['split']('\x0a')){console['log']('\x20\x20\x20\x20'+_0x363848);}}}else console['log']('Scenario\x20'+(_0x1853b5+0x1)+':\x20\x22'+_0x56f550[_0x41f10f(0x119)]+'\x22'+_0x50e6ac+_0x41f10f(0xc0)),console[_0x41f10f(0x71)](_0x41f10f(0x130));console['log']('');}}export async function featureDelete(_0x3bd2b5){const _0x4036aa=_0x4550,_0x52475f={'tUshJ':function(_0x13122e){return _0x13122e();},'hetfZ':'No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','lRxYh':function(_0x454152,_0x4d6c6a){return _0x454152(_0x4d6c6a);}},_0x22f733=_0x3bd2b5||await _0x52475f['tUshJ'](getActiveFeatureId);if(!_0x22f733)throw new Error(_0x52475f[_0x4036aa(0x122)]);const _0x1e4718=await _0x52475f[_0x4036aa(0xab)](getFeature,_0x22f733);await softDeleteFeature(_0x22f733),console['log'](_0x4036aa(0xfa)+_0x1e4718[_0x4036aa(0xac)]+'\x20('+_0x22f733+')'),console[_0x4036aa(0x71)]('\x20\x20\x20To\x20restore\x20it,\x20run:\x20ranger\x20restore\x20'+_0x22f733);}export async function featureRestore(_0x3c4032){const _0x4ed1fc=_0x4550,_0x588c16={'LvhIf':function(_0x27fb85,_0x2bf451){return _0x27fb85(_0x2bf451);},'JwlZq':function(_0x3ec475,_0x21e3a0){return _0x3ec475(_0x21e3a0);},'ExQoz':function(_0x38b191,_0x41ff82,_0x221828){return _0x38b191(_0x41ff82,_0x221828);}};await _0x588c16['LvhIf'](restoreFeature,_0x3c4032);const _0x1b67c0=await _0x588c16[_0x4ed1fc(0x7d)](getFeature,_0x3c4032);console['log']('\x0a✅\x20Restored\x20feature\x20review:\x20'+_0x1b67c0[_0x4ed1fc(0xac)]+'\x20('+_0x3c4032+')'),_0x588c16[_0x4ed1fc(0x136)](displayFeature,_0x1b67c0,_0x1b67c0[_0x4ed1fc(0xd0)]);}
@@ -1 +1 @@
1
- (function(_0x277dfb,_0x411e6c){const _0x4a664b=_0x293c,_0x4e091d=_0x277dfb();while(!![]){try{const _0x1dce23=-parseInt(_0x4a664b(0x8d))/0x1*(parseInt(_0x4a664b(0x88))/0x2)+-parseInt(_0x4a664b(0x8b))/0x3+-parseInt(_0x4a664b(0x87))/0x4*(parseInt(_0x4a664b(0x89))/0x5)+-parseInt(_0x4a664b(0x7b))/0x6*(-parseInt(_0x4a664b(0x84))/0x7)+parseInt(_0x4a664b(0x82))/0x8*(parseInt(_0x4a664b(0x80))/0x9)+-parseInt(_0x4a664b(0x81))/0xa*(parseInt(_0x4a664b(0x7e))/0xb)+-parseInt(_0x4a664b(0x8c))/0xc;if(_0x1dce23===_0x411e6c)break;else _0x4e091d['push'](_0x4e091d['shift']());}catch(_0x267860){_0x4e091d['push'](_0x4e091d['shift']());}}}(_0x84f6,0x9174f));import{sessionStart,sessionEnd,preCompact,postEdit,planStart,planReminder,exitPlanMode,stopHook,enable,disable,autoPrompt}from'./hooks/index.js';function _0x293c(_0x59ebb2,_0x210d20){_0x59ebb2=_0x59ebb2-0x7a;const _0x84f680=_0x84f6();let _0x293c8a=_0x84f680[_0x59ebb2];return _0x293c8a;}const HOOKS={'session-start':sessionStart,'session-end':sessionEnd,'pre-compact':preCompact,'post-edit':postEdit,'plan-start':planStart,'plan-reminder':planReminder,'exit-plan-mode':exitPlanMode,'stop':stopHook,'enable':enable,'disable':disable,'auto-prompt':autoPrompt};function _0x84f6(){const _0x5190ce=['17882YKfoqS','SIGINT','10518eiQRZs','once','error','22nPrwHA','exit','27zYyxuu','2082340Pknomt','1538008iHqdEK','keys','4193xyDjhe','Valid\x20hooks:\x20','SIGTERM','4wcYMGv','8IPffac','714335KAfxTF','join','240984dLKSie','3837816RrrrMs'];_0x84f6=function(){return _0x5190ce;};return _0x84f6();}let cancellationHandlersInstalled=![];function installCancellationHandlers(){const _0x4c216c=_0x293c,_0x327317={'XNDbs':'SIGHUP'};if(cancellationHandlersInstalled)return;const _0x4d674b=()=>{const _0x2276d4=_0x293c;process[_0x2276d4(0x7f)](0x0);};process[_0x4c216c(0x7c)](_0x4c216c(0x7a),_0x4d674b),process[_0x4c216c(0x7c)](_0x4c216c(0x86),_0x4d674b),process[_0x4c216c(0x7c)](_0x327317['XNDbs'],_0x4d674b),cancellationHandlersInstalled=!![];}export async function hook(_0x37f6f6,_0x33f6e4){const _0x3966d9=_0x293c,_0x46c4c7={'nnCUv':function(_0xf1c9e3){return _0xf1c9e3();}};_0x46c4c7['nnCUv'](installCancellationHandlers);const _0x373f81=HOOKS[_0x37f6f6];if(!_0x373f81){const _0xae750c=Object[_0x3966d9(0x83)](HOOKS)[_0x3966d9(0x8a)](',\x20');console[_0x3966d9(0x7d)]('Unknown\x20hook:\x20'+_0x37f6f6),console[_0x3966d9(0x7d)](_0x3966d9(0x85)+_0xae750c),process[_0x3966d9(0x7f)](0x1);}await _0x373f81(_0x33f6e4);}
1
+ (function(_0x1eae1b,_0x4e31c9){const _0x5b04f2=_0x330c,_0x26b88e=_0x1eae1b();while(!![]){try{const _0x3f44cf=parseInt(_0x5b04f2(0x129))/0x1*(parseInt(_0x5b04f2(0x128))/0x2)+parseInt(_0x5b04f2(0x11b))/0x3+parseInt(_0x5b04f2(0x127))/0x4*(parseInt(_0x5b04f2(0x119))/0x5)+-parseInt(_0x5b04f2(0x117))/0x6*(-parseInt(_0x5b04f2(0x11f))/0x7)+-parseInt(_0x5b04f2(0x125))/0x8*(-parseInt(_0x5b04f2(0x121))/0x9)+-parseInt(_0x5b04f2(0x122))/0xa*(parseInt(_0x5b04f2(0x118))/0xb)+-parseInt(_0x5b04f2(0x123))/0xc;if(_0x3f44cf===_0x4e31c9)break;else _0x26b88e['push'](_0x26b88e['shift']());}catch(_0x9e2f77){_0x26b88e['push'](_0x26b88e['shift']());}}}(_0x2e36,0xce0ef));import{sessionStart,sessionEnd,preCompact,postEdit,planStart,planReminder,exitPlanMode,stopHook,enable,disable,autoPrompt}from'./hooks/index.js';function _0x330c(_0x4ee0c9,_0x2af8d6){_0x4ee0c9=_0x4ee0c9-0x117;const _0x2e367d=_0x2e36();let _0x330c2f=_0x2e367d[_0x4ee0c9];return _0x330c2f;}const HOOKS={'session-start':sessionStart,'session-end':sessionEnd,'pre-compact':preCompact,'post-edit':postEdit,'plan-start':planStart,'plan-reminder':planReminder,'exit-plan-mode':exitPlanMode,'stop':stopHook,'enable':enable,'disable':disable,'auto-prompt':autoPrompt};function _0x2e36(){const _0x578869=['gZFPd','910mspdGd','exit','5500224hAmnlZ','5300DhsNOu','39651396dtpzrp','error','16rhDIML','join','5027812ZLSRgh','2fbWAKz','867494tVcXtQ','54552plIPLh','27445qyfBzy','5jOFhDS','JMtfS','2825907BUZQFg','once','keys'];_0x2e36=function(){return _0x578869;};return _0x2e36();}let cancellationHandlersInstalled=![];function installCancellationHandlers(){const _0x311107=_0x330c,_0x43a746={'gZFPd':'SIGINT','PChum':'SIGTERM'};if(cancellationHandlersInstalled)return;const _0x4072af=()=>{process['exit'](0x0);};process['once'](_0x43a746[_0x311107(0x11e)],_0x4072af),process[_0x311107(0x11c)](_0x43a746['PChum'],_0x4072af),process['once']('SIGHUP',_0x4072af),cancellationHandlersInstalled=!![];}export async function hook(_0x1f7787,_0x4bcb04){const _0x11c934=_0x330c,_0x5e4356={'JMtfS':function(_0x49f574){return _0x49f574();}};_0x5e4356[_0x11c934(0x11a)](installCancellationHandlers);const _0x5b9cc3=HOOKS[_0x1f7787];if(!_0x5b9cc3){const _0x59b2b9=Object[_0x11c934(0x11d)](HOOKS)[_0x11c934(0x126)](',\x20');console[_0x11c934(0x124)]('Unknown\x20hook:\x20'+_0x1f7787),console[_0x11c934(0x124)]('Valid\x20hooks:\x20'+_0x59b2b9),process[_0x11c934(0x120)](0x1);}await _0x5b9cc3(_0x4bcb04);}
@@ -1 +1 @@
1
- function _0x3a07(){const _0x3a16be=['3095385fEzxiL','862893oAHnSN','\x0a🚨\x20🚨\x20[ACTION\x20REQUIRED]\x20🚨\x20🚨\x0aBefore\x20responding\x20to\x20the\x20user\x27s\x20message,\x20consider\x20whether\x20this\x20task\x20will\x20involve\x20ANY\x20frontend,\x20UI,\x20or\x20browser\x20work.\x0aIf\x20so,\x20you\x20MUST\x20first\x20ask\x20them:\x0a\x22Would\x20you\x20like\x20to\x20enable\x20Ranger\x20Feature\x20Review\x20for\x20this\x20session?\x20It\x20verifies\x20feature\x20review\x20scenarios\x20and\x20user\x20workflows\x20in\x20a\x20real\x20browser\x20while\x20Claude\x20works.\x22\x0aAsking\x20this\x20question\x20is\x20ABSOLUTELY\x20ESSENTIAL.\x20DO\x20NOT\x20SKIP\x20THIS\x20STEP.\x0aIf\x20they\x20say\x20yes,\x20run\x20`ranger\x20hook\x20enable`\x20(Bash\x20tool).\x0aIf\x20they\x20say\x20no,\x20say\x20\x22Sounds\x20good.\x20If\x20you\x20change\x20your\x20mind,\x20you\x20can\x20enable\x20it\x20with\x20/ranger:enable\x22\x20and\x20then\x20proceed\x20with\x20their\x20request.\x0aThis\x20is\x20mandatory\x20—\x20do\x20not\x20skip\x20this\x20step.','1798356DZCkRj','session_id','23383913eraGIA','732640LfLRym','3841971ovgIAo','1127936HiLjRA','rLiCW'];_0x3a07=function(){return _0x3a16be;};return _0x3a07();}const _0x5bdb9d=_0x4d78;(function(_0x40fe35,_0x2e46d9){const _0x2ab044=_0x4d78,_0x12bb26=_0x40fe35();while(!![]){try{const _0x26b0c8=-parseInt(_0x2ab044(0x15e))/0x1+-parseInt(_0x2ab044(0x15b))/0x2+-parseInt(_0x2ab044(0x15a))/0x3+-parseInt(_0x2ab044(0x159))/0x4+parseInt(_0x2ab044(0x15d))/0x5+-parseInt(_0x2ab044(0x160))/0x6+parseInt(_0x2ab044(0x158))/0x7;if(_0x26b0c8===_0x2e46d9)break;else _0x12bb26['push'](_0x12bb26['shift']());}catch(_0x547071){_0x12bb26['push'](_0x12bb26['shift']());}}}(_0x3a07,0xbbcd0));function _0x4d78(_0x2d4f55,_0x1b7137){_0x2d4f55=_0x2d4f55-0x158;const _0x3a074e=_0x3a07();let _0x4d78cb=_0x3a074e[_0x2d4f55];return _0x4d78cb;}import{readHookInput}from'./output.js';import{isSessionEnabled,hasSessionBeenPrompted,markSessionPrompted}from'../utils/sessionCache.js';const AUTO_PROMPT_TEXT=_0x5bdb9d(0x15f);export async function autoPrompt(){const _0x4dd2de=_0x5bdb9d,_0x50471d={'rLiCW':function(_0xfc807b,_0x13b09f){return _0xfc807b(_0x13b09f);}},_0x2b80bb=await readHookInput(),_0x3db3ac=_0x2b80bb?.[_0x4dd2de(0x161)];if(!_0x3db3ac)return;if(_0x50471d['rLiCW'](isSessionEnabled,_0x3db3ac)||hasSessionBeenPrompted(_0x3db3ac))return;_0x50471d[_0x4dd2de(0x15c)](markSessionPrompted,_0x3db3ac),console['log'](AUTO_PROMPT_TEXT);}
1
+ const _0x51ef76=_0x2f1d;(function(_0x28ae96,_0x29e5f8){const _0x5978a9=_0x2f1d,_0x378417=_0x28ae96();while(!![]){try{const _0x1d12c3=-parseInt(_0x5978a9(0x12e))/0x1*(-parseInt(_0x5978a9(0x128))/0x2)+-parseInt(_0x5978a9(0x12b))/0x3+-parseInt(_0x5978a9(0x126))/0x4*(-parseInt(_0x5978a9(0x127))/0x5)+-parseInt(_0x5978a9(0x130))/0x6*(-parseInt(_0x5978a9(0x12c))/0x7)+-parseInt(_0x5978a9(0x12d))/0x8*(parseInt(_0x5978a9(0x12f))/0x9)+-parseInt(_0x5978a9(0x125))/0xa+parseInt(_0x5978a9(0x124))/0xb*(-parseInt(_0x5978a9(0x129))/0xc);if(_0x1d12c3===_0x29e5f8)break;else _0x378417['push'](_0x378417['shift']());}catch(_0x24a4b1){_0x378417['push'](_0x378417['shift']());}}}(_0x5dc9,0x6fdb3));import{readHookInput}from'./output.js';import{isSessionEnabled,hasSessionBeenPrompted,markSessionPrompted}from'../utils/sessionCache.js';function _0x5dc9(){const _0x31aa73=['1362YGympc','33sFZHpR','1911460yvjcpn','4KuSYAG','3066065PQflAN','572ulvrZS','2226732qIrcUE','\x0a🚨\x20🚨\x20[ACTION\x20REQUIRED]\x20🚨\x20🚨\x0aBefore\x20responding\x20to\x20the\x20user\x27s\x20message,\x20consider\x20whether\x20this\x20task\x20will\x20involve\x20ANY\x20frontend,\x20UI,\x20or\x20browser\x20work.\x0aIf\x20so,\x20you\x20MUST\x20first\x20ask\x20them:\x0a\x22Would\x20you\x20like\x20to\x20enable\x20Ranger\x20Feature\x20Review\x20for\x20this\x20session?\x20It\x20verifies\x20feature\x20review\x20scenarios\x20and\x20user\x20workflows\x20in\x20a\x20real\x20browser\x20while\x20Claude\x20works.\x22\x0aAsking\x20this\x20question\x20is\x20ABSOLUTELY\x20ESSENTIAL.\x20DO\x20NOT\x20SKIP\x20THIS\x20STEP.\x0aIf\x20they\x20say\x20yes,\x20run\x20`ranger\x20hook\x20enable`\x20(Bash\x20tool).\x0aIf\x20they\x20say\x20no,\x20say\x20\x22Sounds\x20good.\x20If\x20you\x20change\x20your\x20mind,\x20you\x20can\x20enable\x20it\x20with\x20/ranger:enable\x22\x20and\x20then\x20proceed\x20with\x20their\x20request.\x0aThis\x20is\x20mandatory\x20—\x20do\x20not\x20skip\x20this\x20step.','1636155PhNLuP','16877KFrCag','4504xsuEZa','3190FXLVzK','5139WRLKct'];_0x5dc9=function(){return _0x31aa73;};return _0x5dc9();}function _0x2f1d(_0x22a5ed,_0xfc16b){_0x22a5ed=_0x22a5ed-0x124;const _0x5dc9c7=_0x5dc9();let _0x2f1d66=_0x5dc9c7[_0x22a5ed];return _0x2f1d66;}const AUTO_PROMPT_TEXT=_0x51ef76(0x12a);export async function autoPrompt(){const _0x22170a=await readHookInput(),_0x5cd180=_0x22170a?.['session_id'];if(!_0x5cd180)return;if(isSessionEnabled(_0x5cd180)||hasSessionBeenPrompted(_0x5cd180))return;markSessionPrompted(_0x5cd180),console['log'](AUTO_PROMPT_TEXT);}
@@ -1 +1 @@
1
- (function(_0x1d27ba,_0x36325a){const _0xe2ec13=_0x5a9d,_0x746913=_0x1d27ba();while(!![]){try{const _0x55cffa=-parseInt(_0xe2ec13(0x1d4))/0x1+parseInt(_0xe2ec13(0x1cd))/0x2+-parseInt(_0xe2ec13(0x1cf))/0x3*(parseInt(_0xe2ec13(0x1d2))/0x4)+-parseInt(_0xe2ec13(0x1da))/0x5+parseInt(_0xe2ec13(0x1d0))/0x6*(-parseInt(_0xe2ec13(0x1ca))/0x7)+parseInt(_0xe2ec13(0x1d7))/0x8+parseInt(_0xe2ec13(0x1cb))/0x9*(parseInt(_0xe2ec13(0x1d6))/0xa);if(_0x55cffa===_0x36325a)break;else _0x746913['push'](_0x746913['shift']());}catch(_0x363dba){_0x746913['push'](_0x746913['shift']());}}}(_0x50ba,0xef539));function _0x5a9d(_0x2b39d0,_0xdf47f4){_0x2b39d0=_0x2b39d0-0x1ca;const _0x50baa5=_0x50ba();let _0x5a9de5=_0x50baa5[_0x2b39d0];return _0x5a9de5;}import{disableSession,disableBranch,getCurrentBranch}from'../utils/sessionCache.js';function _0x50ba(){const _0x4d36f5=['6dNyoVt','mWMQw','1280676kHFgKA','uWcSA','811717BFTxkR','.\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`.','500aMJnQU','5766920hiFvsh','CLAUDE_SESSION_ID','\x20and\x20branch\x20\x27','7407015eyGYCE','4137966zGRWEk','536805LHsYFm','qcCKU','3524538WbszME','master','15REeOtM'];_0x50ba=function(){return _0x4d36f5;};return _0x50ba();}import{printBlock}from'./output.js';export async function disable(_0x2c7377){const _0x187cbc=_0x5a9d,_0xfadfa5={'uWcSA':function(_0x562798){return _0x562798();},'XCIsm':function(_0x5a4651,_0x1ab805){return _0x5a4651!==_0x1ab805;},'BKReI':function(_0x2f4a52,_0x999336){return _0x2f4a52(_0x999336);},'mWMQw':function(_0x443b78,_0x5adb1e){return _0x443b78(_0x5adb1e);},'iAplJ':'main','qcCKU':_0x187cbc(0x1ce)},_0x2d7465=_0x2c7377||process['env'][_0x187cbc(0x1d8)]||'';_0x2d7465&&disableSession(_0x2d7465);const _0x57101e=_0xfadfa5[_0x187cbc(0x1d3)](getCurrentBranch);_0x57101e&&_0x57101e!=='main'&&_0xfadfa5['XCIsm'](_0x57101e,_0x187cbc(0x1ce))&&_0xfadfa5['BKReI'](disableBranch,_0x57101e),_0xfadfa5[_0x187cbc(0x1d1)](printBlock,'#\x20RANGER\x20DISABLED\x0a\x0aThe\x20user\x20has\x20expressly\x20disabled\x20Ranger\x20hooks\x20for\x20this\x20session'+(_0x57101e&&_0x57101e!==_0xfadfa5['iAplJ']&&_0x57101e!==_0xfadfa5[_0x187cbc(0x1cc)]?_0x187cbc(0x1d9)+_0x57101e+'\x27':'')+_0x187cbc(0x1d5));}
1
+ function _0x1303(_0xb81937,_0x5ab9a5){_0xb81937=_0xb81937-0x17d;const _0x6ebc99=_0x6ebc();let _0x130325=_0x6ebc99[_0xb81937];return _0x130325;}(function(_0x296814,_0x3db56d){const _0xbdb3df=_0x1303,_0x5dee81=_0x296814();while(!![]){try{const _0x4f6f11=-parseInt(_0xbdb3df(0x18f))/0x1+-parseInt(_0xbdb3df(0x186))/0x2*(parseInt(_0xbdb3df(0x182))/0x3)+-parseInt(_0xbdb3df(0x18d))/0x4+-parseInt(_0xbdb3df(0x185))/0x5*(-parseInt(_0xbdb3df(0x184))/0x6)+-parseInt(_0xbdb3df(0x188))/0x7*(parseInt(_0xbdb3df(0x17e))/0x8)+-parseInt(_0xbdb3df(0x18c))/0x9+parseInt(_0xbdb3df(0x180))/0xa*(parseInt(_0xbdb3df(0x18a))/0xb);if(_0x4f6f11===_0x3db56d)break;else _0x5dee81['push'](_0x5dee81['shift']());}catch(_0x30504a){_0x5dee81['push'](_0x5dee81['shift']());}}}(_0x6ebc,0x4dba1));import{disableSession,disableBranch,getCurrentBranch}from'../utils/sessionCache.js';function _0x6ebc(){const _0x3db637=['23637JffdHE','master','12hPyxFa','1251605WYXQRd','14LCRdno','pbXpX','316638CRmIEI','UYvQP','83270IVDdey','iMDJS','5458086LIcoQU','352868hdebgk','#\x20RANGER\x20DISABLED\x0a\x0aThe\x20user\x20has\x20expressly\x20disabled\x20Ranger\x20hooks\x20for\x20this\x20session','23467dtxEAE','main','24KLwBFC','.\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`.','960KQujPa','kllQD'];_0x6ebc=function(){return _0x3db637;};return _0x6ebc();}import{printBlock}from'./output.js';export async function disable(_0x5bb659){const _0x53ffc3=_0x1303,_0xb7456c={'vKrAS':function(_0x8ac940){return _0x8ac940();},'iMDJS':function(_0x561814,_0x3e1d29){return _0x561814!==_0x3e1d29;},'iYcSw':'main','UYvQP':_0x53ffc3(0x183),'pbXpX':function(_0x4254f9,_0x55d0df){return _0x4254f9(_0x55d0df);},'kllQD':function(_0x6319af,_0xef204f){return _0x6319af!==_0xef204f;}},_0x350f28=_0x5bb659||process['env']['CLAUDE_SESSION_ID']||'';_0x350f28&&disableSession(_0x350f28);const _0x3ee4db=_0xb7456c['vKrAS'](getCurrentBranch);_0x3ee4db&&_0xb7456c[_0x53ffc3(0x18b)](_0x3ee4db,_0xb7456c['iYcSw'])&&_0x3ee4db!==_0xb7456c[_0x53ffc3(0x189)]&&_0xb7456c[_0x53ffc3(0x187)](disableBranch,_0x3ee4db),printBlock(_0x53ffc3(0x18e)+(_0x3ee4db&&_0xb7456c[_0x53ffc3(0x181)](_0x3ee4db,_0x53ffc3(0x17d))&&_0xb7456c['iMDJS'](_0x3ee4db,'master')?'\x20and\x20branch\x20\x27'+_0x3ee4db+'\x27':'')+_0x53ffc3(0x17f));}
@@ -1 +1 @@
1
- (function(_0x1375c0,_0x5b8f6e){const _0x1c6109=_0x21a6,_0x2fac2d=_0x1375c0();while(!![]){try{const _0x3e1183=parseInt(_0x1c6109(0xaf))/0x1+parseInt(_0x1c6109(0xa7))/0x2*(-parseInt(_0x1c6109(0xb1))/0x3)+parseInt(_0x1c6109(0xb2))/0x4*(-parseInt(_0x1c6109(0xaa))/0x5)+parseInt(_0x1c6109(0xa9))/0x6+-parseInt(_0x1c6109(0xa6))/0x7+parseInt(_0x1c6109(0xa3))/0x8+parseInt(_0x1c6109(0xa4))/0x9;if(_0x3e1183===_0x5b8f6e)break;else _0x2fac2d['push'](_0x2fac2d['shift']());}catch(_0x47531f){_0x2fac2d['push'](_0x2fac2d['shift']());}}}(_0x2910,0xdc145));function _0x21a6(_0x34184f,_0x39c2c9){_0x34184f=_0x34184f-0xa0;const _0x29103f=_0x2910();let _0x21a62f=_0x29103f[_0x34184f];return _0x21a62f;}import{enableSession,getCurrentBranch}from'../utils/sessionCache.js';function _0x2910(){const _0x5dc47e=['nCaCG','774884AkDhCr','GUbii','27tkzgfc','1993076kjZCjU','env','EHsFd','master','12294672iHndHR','10195938qrDfUx','ranger\x20setup','5536062fEbxoq','331106XjhDJs','`\x0a\x0aA\x20browser\x20will\x20open\x20for\x20authentication.\x20A\x20human\x20needs\x20to\x20complete\x20the\x20login.\x0a','4405356fFEyID','10zkwcTF','JkkgX','ranger\x20setup\x20--opencode','fbCRB'];_0x2910=function(){return _0x5dc47e;};return _0x2910();}import{getToken}from'../utils/keychain.js';import{getRangerSkillContent}from'../utils/skillContent.js';import{printBlock}from'./output.js';import{update}from'../update.js';export async function enable(_0x90abac){const _0x4abfde=_0x21a6,_0x41faee={'GUbii':function(_0x1086a3,_0x51c832){return _0x1086a3(_0x51c832);},'nCaCG':function(_0x2ae0f1){return _0x2ae0f1();},'zDQTl':_0x4abfde(0xac),'JkkgX':_0x4abfde(0xa5),'nwWHJ':'Restart\x20your\x20OpenCode\x20session\x20after\x20setup.','WUmiW':function(_0x3b96a9,_0xf4f66d){return _0x3b96a9(_0xf4f66d);},'EHsFd':'main','djacz':_0x4abfde(0xa2),'fbCRB':function(_0x2facb8){return _0x2facb8();}},_0x4679a5=_0x90abac||process[_0x4abfde(0xa0)]['CLAUDE_SESSION_ID']||'',_0x3e75f8=_0x41faee[_0x4abfde(0xb0)](Boolean,_0x90abac),_0x2b07a7=await _0x41faee['nCaCG'](getToken);if(!_0x2b07a7){const _0x3d7902=_0x3e75f8?_0x41faee['zDQTl']:_0x41faee[_0x4abfde(0xab)],_0x2dc30a=_0x3e75f8?_0x41faee['nwWHJ']:'Restart\x20your\x20Claude\x20Code\x20session\x20after\x20setup.';printBlock('#\x20RANGER\x20SETUP\x20REQUIRED\x0a\x0aThe\x20Ranger\x20CLI\x20is\x20not\x20configured.\x20To\x20get\x20started:\x0a\x0a1.\x20Install:\x20`npm\x20install\x20-g\x20@ranger-testing/ranger-cli`\x0a2.\x20Run:\x20`'+_0x3d7902+_0x4abfde(0xa8)+_0x2dc30a);return;}try{await _0x41faee[_0x4abfde(0xae)](update);}catch{}_0x4679a5&&_0x41faee['WUmiW'](enableSession,_0x4679a5);const _0x4ae013=_0x41faee[_0x4abfde(0xae)](getCurrentBranch),_0x20553e=_0x4ae013&&_0x4ae013!==_0x41faee[_0x4abfde(0xa1)]&&_0x4ae013!==_0x41faee['djacz']?'\x0a\x0a**Branch\x20\x27'+_0x4ae013+'\x27\x20is\x20now\x20enabled**\x20-\x20Ranger\x20will\x20stay\x20active\x20on\x20this\x20branch\x20across\x20sessions.':'',_0x20239d=_0x41faee[_0x4abfde(0xad)](getRangerSkillContent);printBlock('#\x20RANGER\x20ENABLED'+_0x20553e+'\x0a\x0a**For\x20ANY\x20UI\x20work,\x20you\x20MUST\x20use\x20the\x20/ranger\x20skill.**\x0a\x0a'+_0x20239d+'\x0a\x0a##\x20Quick\x20Reference\x0a\x0a**In\x20plan\x20mode:**\x20Include\x20Ranger\x20Feature\x20Review\x20Specification\x20at\x20end\x20of\x20plan.\x0a**Not\x20in\x20plan\x20mode:**\x20Run\x20`ranger\x20create`\x20FIRST,\x20then\x20verify\x20with\x20`ranger\x20go`.');}
1
+ (function(_0x205e58,_0x1139b2){const _0x10c214=_0x4497,_0x3aff99=_0x205e58();while(!![]){try{const _0x32d607=parseInt(_0x10c214(0xa8))/0x1*(parseInt(_0x10c214(0xad))/0x2)+-parseInt(_0x10c214(0xab))/0x3+parseInt(_0x10c214(0xb2))/0x4+-parseInt(_0x10c214(0xb6))/0x5+-parseInt(_0x10c214(0xb7))/0x6+-parseInt(_0x10c214(0xb0))/0x7+parseInt(_0x10c214(0xac))/0x8;if(_0x32d607===_0x1139b2)break;else _0x3aff99['push'](_0x3aff99['shift']());}catch(_0x124b99){_0x3aff99['push'](_0x3aff99['shift']());}}}(_0x1dba,0x2c5e3));function _0x4497(_0x24a66f,_0x3ea97d){_0x24a66f=_0x24a66f-0xa7;const _0x1dbab2=_0x1dba();let _0x4497b5=_0x1dbab2[_0x24a66f];return _0x4497b5;}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 _0x1dba(){const _0x22be99=['`\x0a\x0aA\x20browser\x20will\x20open\x20for\x20authentication.\x20A\x20human\x20needs\x20to\x20complete\x20the\x20login.\x0a','658540aJVnLT','mzDdB','fLUBy','CLAUDE_SESSION_ID','438085CZeIhQ','1570404RnqJal','env','\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`.','1yvmNtW','ZeBAu','\x0a\x0a**For\x20ANY\x20UI\x20work,\x20you\x20MUST\x20use\x20the\x20/ranger\x20skill.**\x0a\x0a','536652mvMAYg','4643000Obqqhe','619198RwyHPQ','xNAbk','#\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`','2412501Jfjlyi'];_0x1dba=function(){return _0x22be99;};return _0x1dba();}import{update}from'../update.js';export async function enable(_0x337743){const _0x19c80d=_0x4497,_0x1b984b={'xNAbk':function(_0x384b3f,_0x3a57af){return _0x384b3f(_0x3a57af);},'mzDdB':function(_0x1e3ec0){return _0x1e3ec0();},'fLUBy':'ranger\x20setup\x20--opencode','ZeBAu':'ranger\x20setup','XOTFA':'Restart\x20your\x20Claude\x20Code\x20session\x20after\x20setup.','WhuJp':'master','doRFX':function(_0x59e3e1){return _0x59e3e1();}},_0x1f5205=_0x337743||process[_0x19c80d(0xb8)][_0x19c80d(0xb5)]||'',_0x48fa92=_0x1b984b['xNAbk'](Boolean,_0x337743),_0x3954f6=await _0x1b984b['mzDdB'](getToken);if(!_0x3954f6){const _0x548f68=_0x48fa92?_0x1b984b[_0x19c80d(0xb4)]:_0x1b984b[_0x19c80d(0xa9)],_0x16fae9=_0x48fa92?'Restart\x20your\x20OpenCode\x20session\x20after\x20setup.':_0x1b984b['XOTFA'];printBlock(_0x19c80d(0xaf)+_0x548f68+_0x19c80d(0xb1)+_0x16fae9);return;}try{await _0x1b984b[_0x19c80d(0xb3)](update);}catch{}_0x1f5205&&enableSession(_0x1f5205);const _0x2d2866=getCurrentBranch(),_0x2a06b4=_0x2d2866&&_0x2d2866!=='main'&&_0x2d2866!==_0x1b984b['WhuJp']?'\x0a\x0a**Branch\x20\x27'+_0x2d2866+'\x27\x20is\x20now\x20enabled**\x20-\x20Ranger\x20will\x20stay\x20active\x20on\x20this\x20branch\x20across\x20sessions.':'',_0x307ebd=_0x1b984b['doRFX'](getRangerSkillContent);_0x1b984b[_0x19c80d(0xae)](printBlock,'#\x20RANGER\x20ENABLED'+_0x2a06b4+_0x19c80d(0xaa)+_0x307ebd+_0x19c80d(0xa7));}
@@ -1 +1 @@
1
- (function(_0x34bbe9,_0x1158ba){const _0x407f9a=_0x5d1e,_0x4ac1fc=_0x34bbe9();while(!![]){try{const _0x31e433=parseInt(_0x407f9a(0x15b))/0x1*(parseInt(_0x407f9a(0x154))/0x2)+-parseInt(_0x407f9a(0x158))/0x3+-parseInt(_0x407f9a(0x155))/0x4*(parseInt(_0x407f9a(0x157))/0x5)+-parseInt(_0x407f9a(0x153))/0x6*(parseInt(_0x407f9a(0x151))/0x7)+-parseInt(_0x407f9a(0x156))/0x8*(parseInt(_0x407f9a(0x159))/0x9)+parseInt(_0x407f9a(0x152))/0xa+parseInt(_0x407f9a(0x15a))/0xb;if(_0x31e433===_0x1158ba)break;else _0x4ac1fc['push'](_0x4ac1fc['shift']());}catch(_0x3506b6){_0x4ac1fc['push'](_0x4ac1fc['shift']());}}}(_0x5e06,0xa5229));function _0x5e06(){const _0x5cd8db=['1045zYJArK','3718875YERGhr','5518224oybVdE','17843925PxqMDl','36FJitWi','63uEmeUc','5094150iTYYqJ','141786CVPSUr','73922igvGje','2052aVrTrz','16HoFlTL'];_0x5e06=function(){return _0x5cd8db;};return _0x5e06();}import{printBlock,getEnabledSessionId}from'./output.js';function _0x5d1e(_0x13c122,_0x168bdb){_0x13c122=_0x13c122-0x151;const _0x5e0676=_0x5e06();let _0x5d1e32=_0x5e0676[_0x13c122];return _0x5d1e32;}export async function exitPlanMode(_0x4f2eb1){const _0x4704b4={'niKUc':function(_0x5c2255,_0x51cb94){return _0x5c2255(_0x51cb94);}},_0x13702d=await getEnabledSessionId(_0x4f2eb1);if(!_0x13702d)return;_0x4704b4['niKUc'](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 _0x59fe(_0x522422,_0x53ca97){_0x522422=_0x522422-0x1b5;const _0x55ae45=_0x55ae();let _0x59fee9=_0x55ae45[_0x522422];return _0x59fee9;}(function(_0x2cec9a,_0x11d072){const _0x5b422f=_0x59fe,_0x561058=_0x2cec9a();while(!![]){try{const _0x2b1a40=-parseInt(_0x5b422f(0x1b5))/0x1*(parseInt(_0x5b422f(0x1c1))/0x2)+-parseInt(_0x5b422f(0x1be))/0x3*(parseInt(_0x5b422f(0x1bf))/0x4)+parseInt(_0x5b422f(0x1bb))/0x5*(parseInt(_0x5b422f(0x1b6))/0x6)+-parseInt(_0x5b422f(0x1bd))/0x7+-parseInt(_0x5b422f(0x1ba))/0x8*(parseInt(_0x5b422f(0x1b9))/0x9)+-parseInt(_0x5b422f(0x1c0))/0xa+-parseInt(_0x5b422f(0x1b8))/0xb*(-parseInt(_0x5b422f(0x1b7))/0xc);if(_0x2b1a40===_0x11d072)break;else _0x561058['push'](_0x561058['shift']());}catch(_0x1313d1){_0x561058['push'](_0x561058['shift']());}}}(_0x55ae,0xddb48));import{printBlock,getEnabledSessionId}from'./output.js';function _0x55ae(){const _0x4c9507=['12368936UnsYoW','10LQYiEX','===\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===','11014843rpbpTU','21LduZod','163876RHLbQL','16267690CHigMb','388nYksAJ','692JLdDqk','140394mSEZRD','24VoDBJl','33158246bkFaPM','9xIvqIW'];_0x55ae=function(){return _0x4c9507;};return _0x55ae();}export async function exitPlanMode(_0x11d484){const _0x1c5fad=_0x59fe,_0x2b5b8e={'TBlgw':function(_0x5499ae,_0x58821e){return _0x5499ae(_0x58821e);}},_0x4e456c=await getEnabledSessionId(_0x11d484);if(!_0x4e456c)return;_0x2b5b8e['TBlgw'](printBlock,_0x1c5fad(0x1bc));}
@@ -1 +1 @@
1
- (function(_0x306aa4,_0x18f29e){var _0x3394c7=_0x2cde,_0x1a380b=_0x306aa4();while(!![]){try{var _0xeb78b2=parseInt(_0x3394c7(0x15b))/0x1+parseInt(_0x3394c7(0x160))/0x2+parseInt(_0x3394c7(0x15f))/0x3*(parseInt(_0x3394c7(0x161))/0x4)+-parseInt(_0x3394c7(0x158))/0x5*(-parseInt(_0x3394c7(0x15d))/0x6)+-parseInt(_0x3394c7(0x159))/0x7*(-parseInt(_0x3394c7(0x15c))/0x8)+parseInt(_0x3394c7(0x15a))/0x9+parseInt(_0x3394c7(0x15e))/0xa*(-parseInt(_0x3394c7(0x157))/0xb);if(_0xeb78b2===_0x18f29e)break;else _0x1a380b['push'](_0x1a380b['shift']());}catch(_0x84caa0){_0x1a380b['push'](_0x1a380b['shift']());}}}(_0xeee0,0xdc4eb));export{sessionStart}from'./sessionStart.js';export{sessionEnd}from'./sessionEnd.js';function _0x2cde(_0x1e9d12,_0x433031){_0x1e9d12=_0x1e9d12-0x157;var _0xeee0e1=_0xeee0();var _0x2cde09=_0xeee0e1[_0x1e9d12];return _0x2cde09;}export{preCompact}from'./preCompact.js';export{postEdit}from'./postEdit.js';export{planStart}from'./planStart.js';export{planReminder}from'./planReminder.js';export{exitPlanMode}from'./exitPlanMode.js';function _0xeee0(){var _0x298919=['584991XcCLrO','5eVJfRd','21427xvVgOH','4201371QoHJgo','1708251BVfxyO','1480QjCytd','3878634NMVBus','610PKOpEe','641553wgNxLc','1089550BGjwoo','4ZeWHDt'];_0xeee0=function(){return _0x298919;};return _0xeee0();}export{stopHook}from'./stopHook.js';export{enable}from'./enable.js';export{disable}from'./disable.js';export{autoPrompt}from'./autoPrompt.js';
1
+ (function(_0x20d196,_0x3d4296){var _0x55312b=_0x1bdf,_0x8d963b=_0x20d196();while(!![]){try{var _0x2429cf=-parseInt(_0x55312b(0x1da))/0x1*(-parseInt(_0x55312b(0x1dc))/0x2)+parseInt(_0x55312b(0x1d7))/0x3*(-parseInt(_0x55312b(0x1db))/0x4)+parseInt(_0x55312b(0x1de))/0x5+parseInt(_0x55312b(0x1d5))/0x6*(-parseInt(_0x55312b(0x1d9))/0x7)+parseInt(_0x55312b(0x1d8))/0x8*(-parseInt(_0x55312b(0x1d6))/0x9)+-parseInt(_0x55312b(0x1d4))/0xa+parseInt(_0x55312b(0x1dd))/0xb;if(_0x2429cf===_0x3d4296)break;else _0x8d963b['push'](_0x8d963b['shift']());}catch(_0x1dad7e){_0x8d963b['push'](_0x8d963b['shift']());}}}(_0x2688,0x83903));export{sessionStart}from'./sessionStart.js';export{sessionEnd}from'./sessionEnd.js';export{preCompact}from'./preCompact.js';export{postEdit}from'./postEdit.js';function _0x1bdf(_0xf3b471,_0x49b519){_0xf3b471=_0xf3b471-0x1d4;var _0x268831=_0x2688();var _0x1bdfc8=_0x268831[_0xf3b471];return _0x1bdfc8;}function _0x2688(){var _0x32c4b7=['3724870lCvkYf','8172780gkGgqH','1569222RDcdHr','100512aQVTgr','1605CbLupE','16TcFITf','21ilOaua','64513jEWglw','5972mVEWud','28HPdgeL','14450777oJJLaa'];_0x2688=function(){return _0x32c4b7;};return _0x2688();}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 +1 @@
1
- (function(_0x3f64cd,_0x4fb1a0){const _0x1f565d=_0xbcf2,_0x1e84ae=_0x3f64cd();while(!![]){try{const _0x5ed327=-parseInt(_0x1f565d(0xa9))/0x1+-parseInt(_0x1f565d(0xa6))/0x2*(-parseInt(_0x1f565d(0xa2))/0x3)+parseInt(_0x1f565d(0xae))/0x4+parseInt(_0x1f565d(0xad))/0x5*(-parseInt(_0x1f565d(0xab))/0x6)+-parseInt(_0x1f565d(0xa8))/0x7+parseInt(_0x1f565d(0xa4))/0x8+-parseInt(_0x1f565d(0xac))/0x9*(parseInt(_0x1f565d(0xa7))/0xa);if(_0x5ed327===_0x4fb1a0)break;else _0x1e84ae['push'](_0x1e84ae['shift']());}catch(_0x20e3c8){_0x1e84ae['push'](_0x1e84ae['shift']());}}}(_0x286e,0xb1b3b));import{isSessionEnabled}from'../utils/sessionCache.js';export function printBlock(_0x378524){const _0x3abc6d=_0xbcf2;console[_0x3abc6d(0xa0)](_0x378524);}export async function readHookInput(){const _0x3318f9=_0xbcf2;let _0xb7169='';try{for await(const _0x1ac0c8 of process[_0x3318f9(0xa5)]){_0xb7169+=_0x1ac0c8;}}catch{return null;}if(!_0xb7169['trim']())return null;try{return JSON['parse'](_0xb7169);}catch{return null;}}export async function getEnabledSessionId(_0x350ce3){const _0x5d7d88=_0xbcf2,_0x255764={'XleuL':function(_0x1efb06,_0x27cab5){return _0x1efb06(_0x27cab5);},'gYaYW':function(_0x17d94b){return _0x17d94b();}};if(_0x350ce3)return _0x255764[_0x5d7d88(0xaa)](isSessionEnabled,_0x350ce3)?_0x350ce3:null;const _0x30bef3=await _0x255764[_0x5d7d88(0xa3)](readHookInput),_0x246967=_0x30bef3?.[_0x5d7d88(0xa1)];if(!_0x246967||!isSessionEnabled(_0x246967))return null;return _0x246967;}function _0xbcf2(_0xc5b9de,_0x28b805){_0xc5b9de=_0xc5b9de-0xa0;const _0x286e1c=_0x286e();let _0xbcf208=_0x286e1c[_0xc5b9de];return _0xbcf208;}export async function getEnabledHookContext(_0x591140){if(_0x591140){if(!isSessionEnabled(_0x591140))return null;return{'sessionId':_0x591140,'input':{'session_id':_0x591140}};}const _0x55238c=await readHookInput(),_0x5344f0=_0x55238c?.['session_id'];if(!_0x5344f0||!isSessionEnabled(_0x5344f0))return null;return{'sessionId':_0x5344f0,'input':_0x55238c};}function _0x286e(){const _0x97c2ed=['21fdtoJn','gYaYW','9880992qxvDEI','stdin','405488fmUgZj','78400pnrISp','4479531njdYko','556407XPmuhs','XleuL','18vcbqRT','1575oQCdHW','1204015yjzyXn','5457136wJlQVk','log','session_id'];_0x286e=function(){return _0x97c2ed;};return _0x286e();}
1
+ (function(_0x4ca81d,_0x5e3a1a){const _0x2c8a47=_0x108b,_0x19691b=_0x4ca81d();while(!![]){try{const _0x1e01cb=-parseInt(_0x2c8a47(0x103))/0x1+-parseInt(_0x2c8a47(0xfd))/0x2*(parseInt(_0x2c8a47(0x102))/0x3)+-parseInt(_0x2c8a47(0x106))/0x4*(parseInt(_0x2c8a47(0x10a))/0x5)+parseInt(_0x2c8a47(0xfb))/0x6*(parseInt(_0x2c8a47(0xfa))/0x7)+-parseInt(_0x2c8a47(0x105))/0x8+-parseInt(_0x2c8a47(0xff))/0x9+parseInt(_0x2c8a47(0x108))/0xa;if(_0x1e01cb===_0x5e3a1a)break;else _0x19691b['push'](_0x19691b['shift']());}catch(_0x53bef2){_0x19691b['push'](_0x19691b['shift']());}}}(_0x19ce,0xe6596));function _0x108b(_0xe89d25,_0xec258d){_0xe89d25=_0xe89d25-0xfa;const _0x19cefc=_0x19ce();let _0x108ba6=_0x19cefc[_0xe89d25];return _0x108ba6;}import{isSessionEnabled}from'../utils/sessionCache.js';export function printBlock(_0x12c6cc){const _0x564d55=_0x108b;console[_0x564d55(0x107)](_0x12c6cc);}function _0x19ce(){const _0x164f92=['bVrDw','5411312qrCgNr','3988cPuwts','log','34526760fbSEeU','session_id','1370qDzaes','410375dSdJJe','72ZfHAVs','HatSB','168634OChSyk','ePHyn','12224547glksTo','parse','trim','9JqPtgD','651840uLDnPm'];_0x19ce=function(){return _0x164f92;};return _0x19ce();}export async function readHookInput(){const _0x2704ba=_0x108b;let _0x340efb='';try{for await(const _0xab2400 of process['stdin']){_0x340efb+=_0xab2400;}}catch{return null;}if(!_0x340efb[_0x2704ba(0x101)]())return null;try{return JSON[_0x2704ba(0x100)](_0x340efb);}catch{return null;}}export async function getEnabledSessionId(_0x2713d4){const _0x2af4f5=_0x108b,_0x2db222={'HatSB':function(_0x3fafdd){return _0x3fafdd();},'ePHyn':function(_0x2f6c7d,_0x1d8e98){return _0x2f6c7d(_0x1d8e98);}};if(_0x2713d4)return isSessionEnabled(_0x2713d4)?_0x2713d4:null;const _0x3ec5b2=await _0x2db222[_0x2af4f5(0xfc)](readHookInput),_0x1b87d5=_0x3ec5b2?.[_0x2af4f5(0x109)];if(!_0x1b87d5||!_0x2db222[_0x2af4f5(0xfe)](isSessionEnabled,_0x1b87d5))return null;return _0x1b87d5;}export async function getEnabledHookContext(_0x18b0ab){const _0x1fb935=_0x108b,_0x78768c={'vvUZk':function(_0x44cf04,_0x266668){return _0x44cf04(_0x266668);},'bVrDw':function(_0x5de80b,_0x2a4071){return _0x5de80b(_0x2a4071);}};if(_0x18b0ab){if(!_0x78768c['vvUZk'](isSessionEnabled,_0x18b0ab))return null;return{'sessionId':_0x18b0ab,'input':{'session_id':_0x18b0ab}};}const _0xdfc1ad=await readHookInput(),_0x18d14f=_0xdfc1ad?.[_0x1fb935(0x109)];if(!_0x18d14f||!_0x78768c[_0x1fb935(0x104)](isSessionEnabled,_0x18d14f))return null;return{'sessionId':_0x18d14f,'input':_0xdfc1ad};}
@@ -1 +1 @@
1
- (function(_0x4a9847,_0x4ff8fe){const _0xe272de=_0x16b1,_0x4f4ab7=_0x4a9847();while(!![]){try{const _0x11790b=parseInt(_0xe272de(0x100))/0x1+parseInt(_0xe272de(0x102))/0x2*(-parseInt(_0xe272de(0x104))/0x3)+-parseInt(_0xe272de(0x108))/0x4*(-parseInt(_0xe272de(0x10c))/0x5)+-parseInt(_0xe272de(0x109))/0x6+-parseInt(_0xe272de(0x106))/0x7+parseInt(_0xe272de(0x10d))/0x8+parseInt(_0xe272de(0x101))/0x9;if(_0x11790b===_0x4ff8fe)break;else _0x4f4ab7['push'](_0x4f4ab7['shift']());}catch(_0xe7fead){_0x4f4ab7['push'](_0x4f4ab7['shift']());}}}(_0x215b,0xcf77f));function _0x215b(){const _0x5b457a=['PIQVj','514845XJooDi','8086752zfgkVQ','556974KKVCHC','4422375pGNWOi','48NHDkik','sessionId','138978hdJeRH','permission_mode','1830185nMmQBP','input','60RVVDOs','8283948BDDwNx','ciAou'];_0x215b=function(){return _0x5b457a;};return _0x215b();}import{printBlock,getEnabledHookContext}from'./output.js';import{shouldShowPlanReminder}from'../utils/sessionCache.js';function _0x16b1(_0x42b598,_0x30bfea){_0x42b598=_0x42b598-0x100;const _0x215b8d=_0x215b();let _0x16b197=_0x215b8d[_0x42b598];return _0x16b197;}export async function planReminder(_0x1703e4){const _0x309ad6=_0x16b1,_0xf48000={'ciAou':function(_0x18b9bd,_0x3461eb){return _0x18b9bd(_0x3461eb);},'PIQVj':function(_0x334eba,_0x1612bf){return _0x334eba!==_0x1612bf;}},_0x38e323=await _0xf48000[_0x309ad6(0x10a)](getEnabledHookContext,_0x1703e4);if(!_0x38e323)return;if(_0xf48000[_0x309ad6(0x10b)](_0x38e323[_0x309ad6(0x107)][_0x309ad6(0x105)],'plan'))return;if(!shouldShowPlanReminder(_0x38e323[_0x309ad6(0x103)]))return;printBlock('===\x20RANGER:\x20ACTION\x20REQUIRED\x20===\x0a\x0aIf\x20this\x20plan\x20involves\x20ANY\x20UI\x20changes,\x20you\x20MUST:\x0a\x0a1.\x20**READ\x20/ranger\x20skill\x20NOW**\x20-\x20specifically\x20the\x20create.md\x20instructions\x0a2.\x20**Add\x20a\x20Ranger\x20Feature\x20Review\x20Specification**\x20to\x20the\x20end\x20of\x20your\x20plan\x0a\x0aDO\x20NOT\x20write\x20scenarios\x20without\x20reading\x20create.md\x20first.\x0aScenarios\x20are\x20E2E\x20test\x20flows,\x20NOT\x20implementation\x20tasks.\x0a\x0aYour\x20plan\x20must\x20end\x20with:\x0a```\x0a###\x20Ranger\x20Feature\x20Review\x20Specification\x20(create\x20this\x20first\x20with\x20`ranger\x20create`)\x0aFeature\x20Review\x20Name:\x20<name>\x0aDescription:\x20<description>\x0aScenarios:\x0a1.\x20<E2E\x20user\x20flow\x20that\x20can\x20be\x20verified\x20in\x20browser>\x0a2.\x20<another\x20E2E\x20user\x20flow\x20if\x20needed>\x0a```\x0a\x0aThen\x20run:\x20`ranger\x20create\x20\x22<name>\x22\x20-d\x20\x22<desc>\x22\x20-c\x20\x22<scenario1>\x22\x20-c\x20\x22<scenario2>\x22`\x0a\x0a===\x20END\x20===');}
1
+ (function(_0x2739a7,_0x1d96b1){const _0xab012c=_0x57dd,_0xbc4feb=_0x2739a7();while(!![]){try{const _0x7e7ddd=-parseInt(_0xab012c(0x1d0))/0x1*(parseInt(_0xab012c(0x1d8))/0x2)+-parseInt(_0xab012c(0x1d4))/0x3*(parseInt(_0xab012c(0x1d9))/0x4)+-parseInt(_0xab012c(0x1cb))/0x5*(parseInt(_0xab012c(0x1cf))/0x6)+parseInt(_0xab012c(0x1d3))/0x7*(-parseInt(_0xab012c(0x1d7))/0x8)+parseInt(_0xab012c(0x1d6))/0x9*(parseInt(_0xab012c(0x1d5))/0xa)+parseInt(_0xab012c(0x1ce))/0xb*(parseInt(_0xab012c(0x1cc))/0xc)+parseInt(_0xab012c(0x1d2))/0xd;if(_0x7e7ddd===_0x1d96b1)break;else _0xbc4feb['push'](_0xbc4feb['shift']());}catch(_0x227e4c){_0xbc4feb['push'](_0xbc4feb['shift']());}}}(_0x2e9d,0x19a5a));import{printBlock,getEnabledHookContext}from'./output.js';function _0x57dd(_0x41e52c,_0x5737dc){_0x41e52c=_0x41e52c-0x1cb;const _0x2e9d89=_0x2e9d();let _0x57dd34=_0x2e9d89[_0x41e52c];return _0x57dd34;}import{shouldShowPlanReminder}from'../utils/sessionCache.js';function _0x2e9d(){const _0x4e99c9=['696440hLlUdD','36KIWokU','plan','164494DTxauf','6bOMPKT','1816lazrLa','fusQo','4962230PYKCIE','95914XgQoEX','95484tmomCF','10660VjWBLk','711jYLRno','16omADPB','88DQldmV','20BDkHQo'];_0x2e9d=function(){return _0x4e99c9;};return _0x2e9d();}export async function planReminder(_0x46e70f){const _0x45fba6=_0x57dd,_0x3c6694={'EyqRO':function(_0x12451a,_0x4ec744){return _0x12451a(_0x4ec744);},'fEUKP':function(_0x1352e0,_0x57a3ed){return _0x1352e0!==_0x57a3ed;},'fusQo':_0x45fba6(0x1cd)},_0x711ee2=await _0x3c6694['EyqRO'](getEnabledHookContext,_0x46e70f);if(!_0x711ee2)return;if(_0x3c6694['fEUKP'](_0x711ee2['input']['permission_mode'],_0x3c6694[_0x45fba6(0x1d1)]))return;if(!shouldShowPlanReminder(_0x711ee2['sessionId']))return;printBlock('===\x20RANGER:\x20ACTION\x20REQUIRED\x20===\x0a\x0aIf\x20this\x20plan\x20involves\x20ANY\x20UI\x20changes,\x20you\x20MUST:\x0a\x0a1.\x20**READ\x20/ranger\x20skill\x20NOW**\x20-\x20specifically\x20the\x20create.md\x20instructions\x0a2.\x20**Add\x20a\x20Ranger\x20Feature\x20Review\x20Specification**\x20to\x20the\x20end\x20of\x20your\x20plan\x0a\x0aDO\x20NOT\x20write\x20scenarios\x20without\x20reading\x20create.md\x20first.\x0aScenarios\x20are\x20E2E\x20test\x20flows,\x20NOT\x20implementation\x20tasks.\x0a\x0aYour\x20plan\x20must\x20end\x20with:\x0a```\x0a###\x20Ranger\x20Feature\x20Review\x20Specification\x20(create\x20this\x20first\x20with\x20`ranger\x20create`)\x0aFeature\x20Review\x20Name:\x20<name>\x0aDescription:\x20<description>\x0aScenarios:\x0a1.\x20<E2E\x20user\x20flow\x20that\x20can\x20be\x20verified\x20in\x20browser>\x0a2.\x20<another\x20E2E\x20user\x20flow\x20if\x20needed>\x0a```\x0a\x0aThen\x20run:\x20`ranger\x20create\x20\x22<name>\x22\x20-d\x20\x22<desc>\x22\x20-c\x20\x22<scenario1>\x22\x20-c\x20\x22<scenario2>\x22`\x0a\x0a===\x20END\x20===');}
@@ -1 +1 @@
1
- (function(_0x404564,_0x19cb32){const _0x2ced95=_0x2ec7,_0x3862f2=_0x404564();while(!![]){try{const _0x128a43=parseInt(_0x2ced95(0xbc))/0x1+parseInt(_0x2ced95(0xbd))/0x2*(-parseInt(_0x2ced95(0xba))/0x3)+parseInt(_0x2ced95(0xbb))/0x4+-parseInt(_0x2ced95(0xc1))/0x5+parseInt(_0x2ced95(0xc2))/0x6*(parseInt(_0x2ced95(0xc0))/0x7)+parseInt(_0x2ced95(0xb9))/0x8+-parseInt(_0x2ced95(0xbf))/0x9*(-parseInt(_0x2ced95(0xbe))/0xa);if(_0x128a43===_0x19cb32)break;else _0x3862f2['push'](_0x3862f2['shift']());}catch(_0xb2c587){_0x3862f2['push'](_0x3862f2['shift']());}}}(_0x5942,0x438aa));function _0x5942(){const _0x19564b=['70tosWOo','90333BTeUqm','28dTXTRM','2030730epuAJs','746058yxzcBN','koemY','3505312TRjbQi','1152477SWqDzA','13760rMIByq','57720dghTUb','2hUHfhK'];_0x5942=function(){return _0x19564b;};return _0x5942();}import{printBlock,getEnabledSessionId}from'./output.js';function _0x2ec7(_0xfef905,_0xde9a3e){_0xfef905=_0xfef905-0xb8;const _0x5942c8=_0x5942();let _0x2ec7e5=_0x5942c8[_0xfef905];return _0x2ec7e5;}export async function planStart(_0x40619b){const _0x39d49c=_0x2ec7,_0x176ff4={'koemY':function(_0x382e6b,_0x4f1be4){return _0x382e6b(_0x4f1be4);}},_0x1939b9=await _0x176ff4['koemY'](getEnabledSessionId,_0x40619b);if(!_0x1939b9)return;_0x176ff4[_0x39d49c(0xb8)](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(_0x1e2586,_0x31c533){const _0x456707=_0x312a,_0x328ac5=_0x1e2586();while(!![]){try{const _0x3aa61f=parseInt(_0x456707(0x12d))/0x1*(parseInt(_0x456707(0x12b))/0x2)+parseInt(_0x456707(0x122))/0x3+-parseInt(_0x456707(0x12c))/0x4*(-parseInt(_0x456707(0x123))/0x5)+-parseInt(_0x456707(0x129))/0x6*(-parseInt(_0x456707(0x124))/0x7)+-parseInt(_0x456707(0x12a))/0x8+parseInt(_0x456707(0x125))/0x9+-parseInt(_0x456707(0x121))/0xa*(parseInt(_0x456707(0x126))/0xb);if(_0x3aa61f===_0x31c533)break;else _0x328ac5['push'](_0x328ac5['shift']());}catch(_0x27d0f8){_0x328ac5['push'](_0x328ac5['shift']());}}}(_0x5acc,0xad225));import{printBlock,getEnabledSessionId}from'./output.js';export async function planStart(_0x31833b){const _0x4fdf9c=_0x312a,_0x57b2ac={'ZUOId':function(_0x70b766,_0x1507d8){return _0x70b766(_0x1507d8);}},_0x59cd3d=await getEnabledSessionId(_0x31833b);if(!_0x59cd3d)return;_0x57b2ac[_0x4fdf9c(0x127)](printBlock,_0x4fdf9c(0x128));}function _0x312a(_0x5745c8,_0x574b6d){_0x5745c8=_0x5745c8-0x121;const _0x5acc28=_0x5acc();let _0x312a19=_0x5acc28[_0x5745c8];return _0x312a19;}function _0x5acc(){const _0x3513f1=['669472yprhGd','17828wYPlDe','1XzYXYn','11384020LtEPhD','2398059ducaWZ','1475BsweRg','7665YruPfr','8195085nIErzy','22AhMuPl','ZUOId','===\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===','5106TDLkWE','10442824vbBHjb'];_0x5acc=function(){return _0x3513f1;};return _0x5acc();}
@@ -1 +1 @@
1
- function _0x1777(_0x3a4793,_0x3d5a53){_0x3a4793=_0x3a4793-0x79;const _0x249834=_0x2498();let _0x177715=_0x249834[_0x3a4793];return _0x177715;}function _0x2498(){const _0x1d2e5f=['7721CSrWFm','1288xusDAH','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.','83961ztvVCL','EQpLQ','1031139qcAGyp','194080nVhSmO','RANGER:\x20If\x20this\x20change\x20expands\x20the\x20scope\x20of\x20the\x20active\x20feature\x20review,\x20you\x20may\x20need\x20to\x20add\x20a\x20scenario.\x20See\x20Workflow\x201\x20in\x20/ranger.\x20If\x20you\x20decide\x20to\x20add\x20a\x20scenario,\x20you\x20MUST\x20read\x20Workflow\x201\x20IN\x20DETAIL\x20first.\x20Remember:\x20when\x20you\x20finish\x20your\x20work,\x20your\x20final\x20message\x20to\x20the\x20user\x20must\x20direct\x20them\x20to\x20the\x20Ranger\x20feature\x20review\x20dashboard\x20to\x20review\x20(e.g.\x20\x22Go\x20to\x20the\x20Ranger\x20feature\x20dashboard\x20to\x20review:\x20https://dashboard.ranger.net/features/{feature_id}\x22).','PostToolUse','log','110uTVCZg','4497660sOXOlv','64698lFNqLN','2ZXDSzO','827840AMSUOQ'];_0x2498=function(){return _0x1d2e5f;};return _0x2498();}(function(_0x94d497,_0x1f8770){const _0x288fca=_0x1777,_0x10017b=_0x94d497();while(!![]){try{const _0x441d0c=-parseInt(_0x288fca(0x7a))/0x1*(parseInt(_0x288fca(0x81))/0x2)+-parseInt(_0x288fca(0x86))/0x3+parseInt(_0x288fca(0x82))/0x4+parseInt(_0x288fca(0x7e))/0x5*(-parseInt(_0x288fca(0x80))/0x6)+-parseInt(_0x288fca(0x83))/0x7*(parseInt(_0x288fca(0x84))/0x8)+parseInt(_0x288fca(0x79))/0x9+parseInt(_0x288fca(0x7f))/0xa;if(_0x441d0c===_0x1f8770)break;else _0x10017b['push'](_0x10017b['shift']());}catch(_0x4d93fb){_0x10017b['push'](_0x10017b['shift']());}}}(_0x2498,0x20d15));import{getSessionEntry,updateBranchTracking}from'../utils/sessionCache.js';import{getToken}from'../utils/keychain.js';import{getEnabledSessionId}from'./output.js';export async function postEdit(_0x23c408){const _0xeb9bac=_0x1777,_0xc9c7aa={'EQpLQ':_0xeb9bac(0x7c)},_0x33c259=await getEnabledSessionId(_0x23c408);if(!_0x33c259)return;updateBranchTracking(_0x33c259);const _0x1c8750=await getToken();if(!_0x1c8750)return;const _0x4a2e88=getSessionEntry(_0x33c259);if(_0x4a2e88){const _0x3a25d4={'hookSpecificOutput':{'hookEventName':_0xc9c7aa[_0xeb9bac(0x87)],'additionalContext':_0xeb9bac(0x7b)}};console[_0xeb9bac(0x7d)](JSON['stringify'](_0x3a25d4));return;}const _0x526b8e={'hookSpecificOutput':{'hookEventName':_0xc9c7aa[_0xeb9bac(0x87)],'additionalContext':_0xeb9bac(0x85)}};console[_0xeb9bac(0x7d)](JSON['stringify'](_0x526b8e));}
1
+ (function(_0x363c7e,_0x4b7def){const _0x2fd110=_0x5078,_0x4a2dda=_0x363c7e();while(!![]){try{const _0x91878a=parseInt(_0x2fd110(0x110))/0x1*(parseInt(_0x2fd110(0x10d))/0x2)+parseInt(_0x2fd110(0x11a))/0x3*(parseInt(_0x2fd110(0x119))/0x4)+-parseInt(_0x2fd110(0x11d))/0x5+-parseInt(_0x2fd110(0x10f))/0x6*(parseInt(_0x2fd110(0x115))/0x7)+parseInt(_0x2fd110(0x10e))/0x8+parseInt(_0x2fd110(0x118))/0x9+parseInt(_0x2fd110(0x112))/0xa*(-parseInt(_0x2fd110(0x11b))/0xb);if(_0x91878a===_0x4b7def)break;else _0x4a2dda['push'](_0x4a2dda['shift']());}catch(_0x909b7d){_0x4a2dda['push'](_0x4a2dda['shift']());}}}(_0x37aa,0x41697));import{getSessionEntry,updateBranchTracking}from'../utils/sessionCache.js';import{getToken}from'../utils/keychain.js';function _0x37aa(){const _0x8d1e7f=['143217hJOgxd','385gkVmpT','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.','122120pUADFH','ruCQf','400078elChqA','1056248UvVPvX','4434MGnnNf','1lmDfnU','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).','185270mIlWBi','stringify','dPxNw','1939RveZJP','IiqrP','log','4742955zXatUv','24xCqYQA'];_0x37aa=function(){return _0x8d1e7f;};return _0x37aa();}function _0x5078(_0x5cab81,_0x3ce8be){_0x5cab81=_0x5cab81-0x10d;const _0x37aa33=_0x37aa();let _0x50787b=_0x37aa33[_0x5cab81];return _0x50787b;}import{getEnabledSessionId}from'./output.js';export async function postEdit(_0x4d8757){const _0x14817b=_0x5078,_0x2101c3={'ruCQf':function(_0x56ddee,_0x2bb497){return _0x56ddee(_0x2bb497);},'dPxNw':function(_0xfe1950){return _0xfe1950();},'jaCay':function(_0x199836,_0x2d85df){return _0x199836(_0x2d85df);},'IiqrP':'PostToolUse'},_0x23fe84=await _0x2101c3[_0x14817b(0x11e)](getEnabledSessionId,_0x4d8757);if(!_0x23fe84)return;updateBranchTracking(_0x23fe84);const _0x512eac=await _0x2101c3[_0x14817b(0x114)](getToken);if(!_0x512eac)return;const _0x131c99=_0x2101c3['jaCay'](getSessionEntry,_0x23fe84);if(_0x131c99){const _0x1127e9={'hookSpecificOutput':{'hookEventName':'PostToolUse','additionalContext':_0x14817b(0x111)}};console['log'](JSON[_0x14817b(0x113)](_0x1127e9));return;}const _0x799800={'hookSpecificOutput':{'hookEventName':_0x2101c3[_0x14817b(0x116)],'additionalContext':_0x14817b(0x11c)}};console[_0x14817b(0x117)](JSON[_0x14817b(0x113)](_0x799800));}
@@ -1 +1 @@
1
- (function(_0x142051,_0x5daa09){const _0x534f19=_0x4f25,_0x20b691=_0x142051();while(!![]){try{const _0x2f505d=parseInt(_0x534f19(0x1db))/0x1+parseInt(_0x534f19(0x1e3))/0x2+-parseInt(_0x534f19(0x1e4))/0x3*(-parseInt(_0x534f19(0x1dd))/0x4)+-parseInt(_0x534f19(0x1df))/0x5+parseInt(_0x534f19(0x1d9))/0x6+-parseInt(_0x534f19(0x1e1))/0x7*(-parseInt(_0x534f19(0x1e0))/0x8)+parseInt(_0x534f19(0x1da))/0x9*(-parseInt(_0x534f19(0x1dc))/0xa);if(_0x2f505d===_0x5daa09)break;else _0x20b691['push'](_0x20b691['shift']());}catch(_0x51a340){_0x20b691['push'](_0x20b691['shift']());}}}(_0x22aa,0x7a5b3));import{getToken}from'../utils/keychain.js';function _0x22aa(){const _0x2c8bd9=['TNxAh','3120885sXiZVC','8tDcucT','5542873mdrCjy','===\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`.','1288160NsnLJV','107427EKsXnV','qJGvr','5402364sBsdvA','747VmOiBv','458643jtaZrf','283130fDxTpo','76WQxDtU'];_0x22aa=function(){return _0x2c8bd9;};return _0x22aa();}import{printBlock,getEnabledSessionId}from'./output.js';function _0x4f25(_0x4c5dae,_0xbe95d4){_0x4c5dae=_0x4c5dae-0x1d9;const _0x22aa5c=_0x22aa();let _0x4f2594=_0x22aa5c[_0x4c5dae];return _0x4f2594;}export async function preCompact(_0x1cde66){const _0x4fcbaf=_0x4f25,_0x1d6554={'qJGvr':function(_0xbcfb8e,_0x4527c1){return _0xbcfb8e(_0x4527c1);},'TNxAh':function(_0x35371f){return _0x35371f();}},_0x3b0d4a=await _0x1d6554[_0x4fcbaf(0x1e5)](getEnabledSessionId,_0x1cde66);if(!_0x3b0d4a)return;try{const _0x3ea7cb=await _0x1d6554[_0x4fcbaf(0x1de)](getToken);if(!_0x3ea7cb)return;printBlock(_0x4fcbaf(0x1e2));}catch{}}
1
+ function _0x1c9a(_0x34c60c,_0x575cd0){_0x34c60c=_0x34c60c-0x89;const _0x34ce08=_0x34ce();let _0x1c9a06=_0x34ce08[_0x34c60c];return _0x1c9a06;}function _0x34ce(){const _0x59fc06=['14545QuzlbI','10576856QxtCEa','1795131MmHRMp','1256255QqAjtK','447117wgRgIu','1734CWVpaY','5614168AxMizy','16SOkbHE','297878XVqjuf'];_0x34ce=function(){return _0x59fc06;};return _0x34ce();}(function(_0xc6b751,_0x52c615){const _0x2a6c3e=_0x1c9a,_0x25a7a1=_0xc6b751();while(!![]){try{const _0x118c71=parseInt(_0x2a6c3e(0x8a))/0x1+parseInt(_0x2a6c3e(0x8e))/0x2*(parseInt(_0x2a6c3e(0x8b))/0x3)+-parseInt(_0x2a6c3e(0x8d))/0x4+parseInt(_0x2a6c3e(0x90))/0x5*(parseInt(_0x2a6c3e(0x8c))/0x6)+parseInt(_0x2a6c3e(0x8f))/0x7+-parseInt(_0x2a6c3e(0x91))/0x8+parseInt(_0x2a6c3e(0x89))/0x9;if(_0x118c71===_0x52c615)break;else _0x25a7a1['push'](_0x25a7a1['shift']());}catch(_0x1c72bb){_0x25a7a1['push'](_0x25a7a1['shift']());}}}(_0x34ce,0xc4b00));import{getToken}from'../utils/keychain.js';import{printBlock,getEnabledSessionId}from'./output.js';export async function preCompact(_0x4225fc){const _0xe7c89d={'mkXqJ':function(_0x155b21,_0x2782e6){return _0x155b21(_0x2782e6);},'fYawp':function(_0x474fa7,_0x1b6467){return _0x474fa7(_0x1b6467);}},_0x42fd2b=await _0xe7c89d['mkXqJ'](getEnabledSessionId,_0x4225fc);if(!_0x42fd2b)return;try{const _0x11c44d=await getToken();if(!_0x11c44d)return;_0xe7c89d['fYawp'](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(_0x4fa45c,_0x53707d){const _0x2c8fe0=_0x3ba0,_0x3007b3=_0x4fa45c();while(!![]){try{const _0x285327=-parseInt(_0x2c8fe0(0x145))/0x1+parseInt(_0x2c8fe0(0x13d))/0x2*(parseInt(_0x2c8fe0(0x144))/0x3)+parseInt(_0x2c8fe0(0x149))/0x4+parseInt(_0x2c8fe0(0x147))/0x5+parseInt(_0x2c8fe0(0x148))/0x6+-parseInt(_0x2c8fe0(0x146))/0x7*(parseInt(_0x2c8fe0(0x140))/0x8)+-parseInt(_0x2c8fe0(0x143))/0x9;if(_0x285327===_0x53707d)break;else _0x3007b3['push'](_0x3007b3['shift']());}catch(_0x44a02d){_0x3007b3['push'](_0x3007b3['shift']());}}}(_0x15da,0x79a1f));import{isSessionEnabled,recordEnabledSessionCleared}from'../utils/sessionCache.js';import{readHookInput}from'./output.js';function _0x3ba0(_0x59d211,_0x56c247){_0x59d211=_0x59d211-0x13d;const _0x15daea=_0x15da();let _0x3ba056=_0x15daea[_0x59d211];return _0x3ba056;}function _0x15da(){const _0x4f413d=['356621dzGzUo','1189293ScUVaa','2839080UptgnG','855126ZUNPpo','441684pzANRH','148130fIUPNA','clear','session_id','24bnwLle','wDdbR','env','1105362qHNHmi','27paMwmD'];_0x15da=function(){return _0x4f413d;};return _0x15da();}export async function sessionEnd(_0x16e5a5){const _0x4aae1d=_0x3ba0,_0x91a81e={'mnaKw':function(_0x42e124,_0x2db4b2){return _0x42e124===_0x2db4b2;},'wDdbR':_0x4aae1d(0x13e)},_0x199010=process[_0x4aae1d(0x142)]['CLAUDE_SESSION_ID'];let _0x3ce4f1=_0x16e5a5,_0x5737ba;if(!_0x16e5a5){if(_0x199010&&!isSessionEnabled(_0x199010))return;const _0x17a108=await readHookInput();_0x3ce4f1=_0x17a108?.[_0x4aae1d(0x13f)]||_0x199010,_0x5737ba=_0x17a108?.['reason'];}if(!_0x3ce4f1)return;_0x91a81e['mnaKw'](_0x5737ba,_0x91a81e[_0x4aae1d(0x141)])&&recordEnabledSessionCleared(_0x3ce4f1);}
1
+ function _0x4e0c(){const _0x20afe9=['EUAtG','102639qwouqY','5320nmTKhu','8DmSOVm','CLAUDE_SESSION_ID','6BiWadN','8873601xKUYoN','tvCqz','5268wDEgQo','session_id','34294368qYyEmt','HUjPP','1061586OKpBTS','10ydUlRh','81453RcFrcJ','44XXeYoD','2235840sXMOmS'];_0x4e0c=function(){return _0x20afe9;};return _0x4e0c();}(function(_0x280f67,_0x200d2b){const _0x20c64e=_0x53a0,_0x237656=_0x280f67();while(!![]){try{const _0x30ab1f=-parseInt(_0x20c64e(0xbd))/0x1*(parseInt(_0x20c64e(0xc1))/0x2)+parseInt(_0x20c64e(0xb9))/0x3*(-parseInt(_0x20c64e(0xba))/0x4)+-parseInt(_0x20c64e(0xbb))/0x5+parseInt(_0x20c64e(0xb3))/0x6*(-parseInt(_0x20c64e(0xbe))/0x7)+-parseInt(_0x20c64e(0xbf))/0x8*(-parseInt(_0x20c64e(0xb7))/0x9)+parseInt(_0x20c64e(0xb8))/0xa*(-parseInt(_0x20c64e(0xb1))/0xb)+parseInt(_0x20c64e(0xb5))/0xc;if(_0x30ab1f===_0x200d2b)break;else _0x237656['push'](_0x237656['shift']());}catch(_0x10d57a){_0x237656['push'](_0x237656['shift']());}}}(_0x4e0c,0x6d665));function _0x53a0(_0xbae837,_0x3f5227){_0xbae837=_0xbae837-0xb1;const _0x4e0cde=_0x4e0c();let _0x53a0b7=_0x4e0cde[_0xbae837];return _0x53a0b7;}import{isSessionEnabled,recordEnabledSessionCleared}from'../utils/sessionCache.js';import{readHookInput}from'./output.js';export async function sessionEnd(_0x376dac){const _0x74e356=_0x53a0,_0x4aeeb2={'tvCqz':function(_0x14d4ea,_0x4e2706){return _0x14d4ea(_0x4e2706);},'HUjPP':function(_0x1323df){return _0x1323df();},'EUAtG':function(_0x135e50,_0x5f092b){return _0x135e50===_0x5f092b;},'jCSGt':function(_0x4fc9bb,_0x3f554a){return _0x4fc9bb(_0x3f554a);}},_0x1ac47f=process['env'][_0x74e356(0xc0)];let _0x4eb4ad=_0x376dac,_0x498761;if(!_0x376dac){if(_0x1ac47f&&!_0x4aeeb2[_0x74e356(0xb2)](isSessionEnabled,_0x1ac47f))return;const _0xd57575=await _0x4aeeb2[_0x74e356(0xb6)](readHookInput);_0x4eb4ad=_0xd57575?.[_0x74e356(0xb4)]||_0x1ac47f,_0x498761=_0xd57575?.['reason'];}if(!_0x4eb4ad)return;_0x4aeeb2[_0x74e356(0xbc)](_0x498761,'clear')&&_0x4aeeb2['jCSGt'](recordEnabledSessionCleared,_0x4eb4ad);}
@@ -1 +1 @@
1
- const _0x4d54b0=_0x43b3;(function(_0x84daed,_0x11104b){const _0x3330d9=_0x43b3,_0x6ba8b4=_0x84daed();while(!![]){try{const _0x44d130=parseInt(_0x3330d9(0x105))/0x1+parseInt(_0x3330d9(0x11a))/0x2*(parseInt(_0x3330d9(0x114))/0x3)+-parseInt(_0x3330d9(0x118))/0x4+-parseInt(_0x3330d9(0x11b))/0x5*(-parseInt(_0x3330d9(0x10b))/0x6)+-parseInt(_0x3330d9(0x116))/0x7*(parseInt(_0x3330d9(0x10d))/0x8)+parseInt(_0x3330d9(0x11e))/0x9*(parseInt(_0x3330d9(0x10f))/0xa)+-parseInt(_0x3330d9(0x11d))/0xb*(parseInt(_0x3330d9(0x113))/0xc);if(_0x44d130===_0x11104b)break;else _0x6ba8b4['push'](_0x6ba8b4['shift']());}catch(_0x7efe3f){_0x6ba8b4['push'](_0x6ba8b4['shift']());}}}(_0xb93e,0xb8679));import{appendFile}from'fs/promises';import{initBranchTracking,shouldAutoEnableAfterClear,autoEnableAfterClear,isSessionEnabled,getCurrentBranch}from'../utils/sessionCache.js';import{createTelemetryCollector}from'../utils/telemetry.js';import{getToken}from'../utils/keychain.js';function _0xb93e(){const _0x12d5b5=['\x20(Branch:\x20','vHJGL','114pfKzrp','stKrp','2581584NrFVmi','pKWNT','10evZDTe','session_id','OWkQc','trackCommandEnd','12tKYLKC','33WiAfNp','PyLnv','7REnYaF','log','3385400xtgmrw','=================================================================\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=================================================================','212362TbOlzb','30005LDhWRR','parse','616022dqJTly','1421469eLlxmr','540420vagAMV','QzIka','shYAI','trackCommandStart'];_0xb93e=function(){return _0x12d5b5;};return _0xb93e();}function _0x43b3(_0x57865c,_0x56dff0){_0x57865c=_0x57865c-0x105;const _0xb93e9=_0xb93e();let _0x43b3f2=_0xb93e9[_0x57865c];return _0x43b3f2;}const RANGER_AUTO_ENABLED_PROMPT=_0x4d54b0(0x119);export async function sessionStart(_0x366afb){const _0x3c0b01=_0x4d54b0,_0x9d38c4={'gMlOm':'source','EJjkp':function(_0x1c296e,_0x3dbd52){return _0x1c296e&&_0x3dbd52;},'shYAI':function(_0x4db0e9,_0x5f56f9){return _0x4db0e9(_0x5f56f9);},'pKWNT':'success','stKrp':function(_0x6abf10,_0x14a0da){return _0x6abf10!==_0x14a0da;},'QzIka':'main','PyLnv':function(_0xff70ab,_0x235108){return _0xff70ab!==_0x235108;},'vHJGL':'master','OWkQc':'SessionStart'};let _0x5f0e88=_0x366afb||'',_0x5a9efd;if(!_0x366afb){let _0x2454e6='';for await(const _0x4c96af of process['stdin']){_0x2454e6+=_0x4c96af;}try{const _0x48acea=JSON[_0x3c0b01(0x11c)](_0x2454e6);_0x5f0e88=_0x48acea[_0x3c0b01(0x110)]||'',_0x5a9efd=_0x48acea[_0x9d38c4['gMlOm']];}catch{}const _0x5d696c=process['env']['CLAUDE_ENV_FILE'];if(_0x9d38c4['EJjkp'](_0x5d696c,_0x5f0e88))try{await appendFile(_0x5d696c,'export\x20CLAUDE_SESSION_ID=\x22'+_0x5f0e88+'\x22\x0a');}catch{}}try{await getToken();}catch{}if(_0x5f0e88){shouldAutoEnableAfterClear(_0x5a9efd)&&_0x9d38c4[_0x3c0b01(0x107)](autoEnableAfterClear,_0x5f0e88);_0x9d38c4[_0x3c0b01(0x107)](initBranchTracking,_0x5f0e88);const _0x32cbac=isSessionEnabled(_0x5f0e88);try{const _0xc21f5e=createTelemetryCollector('hook:session-start');await _0xc21f5e[_0x3c0b01(0x108)]({'sessionId':_0x5f0e88,'hooksEnabled':_0x32cbac}),await _0xc21f5e[_0x3c0b01(0x112)](_0x9d38c4[_0x3c0b01(0x10e)]);}catch{}if(_0x32cbac){const _0x2f5fee=getCurrentBranch(),_0x221ab5=_0x2f5fee&&_0x9d38c4[_0x3c0b01(0x10c)](_0x2f5fee,_0x9d38c4[_0x3c0b01(0x106)])&&_0x9d38c4[_0x3c0b01(0x115)](_0x2f5fee,_0x9d38c4[_0x3c0b01(0x10a)])?_0x3c0b01(0x109)+_0x2f5fee+')':'',_0x160f3d={'hookSpecificOutput':{'hookEventName':_0x9d38c4[_0x3c0b01(0x111)],'additionalContext':RANGER_AUTO_ENABLED_PROMPT+_0x221ab5}};console[_0x3c0b01(0x117)](JSON['stringify'](_0x160f3d));}}}
1
+ (function(_0x1a7150,_0x9b5b5){const _0x27cbc4=_0x1eea,_0xa6aee4=_0x1a7150();while(!![]){try{const _0x44ee30=-parseInt(_0x27cbc4(0x1ed))/0x1+-parseInt(_0x27cbc4(0x1dc))/0x2*(parseInt(_0x27cbc4(0x1f3))/0x3)+parseInt(_0x27cbc4(0x1d9))/0x4*(-parseInt(_0x27cbc4(0x1e2))/0x5)+-parseInt(_0x27cbc4(0x1e4))/0x6*(-parseInt(_0x27cbc4(0x1ee))/0x7)+parseInt(_0x27cbc4(0x1e8))/0x8+parseInt(_0x27cbc4(0x1de))/0x9*(-parseInt(_0x27cbc4(0x1e1))/0xa)+parseInt(_0x27cbc4(0x1e0))/0xb;if(_0x44ee30===_0x9b5b5)break;else _0xa6aee4['push'](_0xa6aee4['shift']());}catch(_0x2694d4){_0xa6aee4['push'](_0xa6aee4['shift']());}}}(_0x4278,0x8c8ca));function _0x1eea(_0x143235,_0x30ae77){_0x143235=_0x143235-0x1d8;const _0x4278d6=_0x4278();let _0x1eea06=_0x4278d6[_0x143235];return _0x1eea06;}import{appendFile}from'fs/promises';import{initBranchTracking,shouldAutoEnableAfterClear,autoEnableAfterClear,isSessionEnabled,getCurrentBranch}from'../utils/sessionCache.js';import{createTelemetryCollector}from'../utils/telemetry.js';import{getToken}from'../utils/keychain.js';const RANGER_AUTO_ENABLED_PROMPT='=================================================================\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=================================================================';function _0x4278(){const _0x3b4d22=['8440448UefBaJ','Jcbgo','\x20(Branch:\x20','parse','GobbD','639838DaNTgK','7qRzTkH','trackCommandStart','SxaJg','hook:session-start','qgVuC','6QRksFq','BTnBY','4siakeC','success','log','446314xEDOgk','source','1967283FRmOsF','stdin','14455529TpGtKv','30zMxZsx','4888220ePxpvH','Rurzs','5556312kJsfwB','session_id','env','mDCWH'];_0x4278=function(){return _0x3b4d22;};return _0x4278();}export async function sessionStart(_0x245e91){const _0x495436=_0x1eea,_0x5e2646={'BTnBY':function(_0x31381d,_0x5e1eb3){return _0x31381d||_0x5e1eb3;},'SxaJg':_0x495436(0x1e5),'qgVuC':function(_0x34e1e3){return _0x34e1e3();},'Jcbgo':function(_0x3b2f70,_0x45fecc){return _0x3b2f70(_0x45fecc);},'mDCWH':function(_0x3c7d95,_0x3daca3){return _0x3c7d95(_0x3daca3);},'xeTbr':_0x495436(0x1f1),'Rurzs':_0x495436(0x1da),'GobbD':function(_0xc91082,_0x4badb5){return _0xc91082!==_0x4badb5;},'XRdHn':'SessionStart'};let _0x5ea294=_0x5e2646[_0x495436(0x1d8)](_0x245e91,''),_0x460b51;if(!_0x245e91){let _0x2222cc='';for await(const _0x5d70f2 of process[_0x495436(0x1df)]){_0x2222cc+=_0x5d70f2;}try{const _0x481c39=JSON[_0x495436(0x1eb)](_0x2222cc);_0x5ea294=_0x481c39[_0x5e2646[_0x495436(0x1f0)]]||'',_0x460b51=_0x481c39[_0x495436(0x1dd)];}catch{}const _0x555dab=process[_0x495436(0x1e6)]['CLAUDE_ENV_FILE'];if(_0x555dab&&_0x5ea294)try{await appendFile(_0x555dab,'export\x20CLAUDE_SESSION_ID=\x22'+_0x5ea294+'\x22\x0a');}catch{}}try{await _0x5e2646[_0x495436(0x1f2)](getToken);}catch{}if(_0x5ea294){shouldAutoEnableAfterClear(_0x460b51)&&_0x5e2646[_0x495436(0x1e9)](autoEnableAfterClear,_0x5ea294);initBranchTracking(_0x5ea294);const _0xe1d72e=isSessionEnabled(_0x5ea294);try{const _0xa232f6=_0x5e2646[_0x495436(0x1e7)](createTelemetryCollector,_0x5e2646['xeTbr']);await _0xa232f6[_0x495436(0x1ef)]({'sessionId':_0x5ea294,'hooksEnabled':_0xe1d72e}),await _0xa232f6['trackCommandEnd'](_0x5e2646[_0x495436(0x1e3)]);}catch{}if(_0xe1d72e){const _0x3ff530=_0x5e2646['qgVuC'](getCurrentBranch),_0x4d5650=_0x3ff530&&_0x5e2646[_0x495436(0x1ec)](_0x3ff530,'main')&&_0x3ff530!=='master'?_0x495436(0x1ea)+_0x3ff530+')':'',_0x4f10c0={'hookSpecificOutput':{'hookEventName':_0x5e2646['XRdHn'],'additionalContext':RANGER_AUTO_ENABLED_PROMPT+_0x4d5650}};console[_0x495436(0x1db)](JSON['stringify'](_0x4f10c0));}}}
@@ -1 +1 @@
1
- (function(_0x53bb22,_0x42fc75){const _0x2e88df=_0x1cbe,_0x1ac3db=_0x53bb22();while(!![]){try{const _0x5e2910=parseInt(_0x2e88df(0x13e))/0x1+-parseInt(_0x2e88df(0x136))/0x2*(-parseInt(_0x2e88df(0x139))/0x3)+-parseInt(_0x2e88df(0x145))/0x4*(-parseInt(_0x2e88df(0x146))/0x5)+parseInt(_0x2e88df(0x133))/0x6*(parseInt(_0x2e88df(0x13f))/0x7)+parseInt(_0x2e88df(0x137))/0x8*(-parseInt(_0x2e88df(0x147))/0x9)+parseInt(_0x2e88df(0x134))/0xa+parseInt(_0x2e88df(0x144))/0xb*(-parseInt(_0x2e88df(0x141))/0xc);if(_0x5e2910===_0x42fc75)break;else _0x1ac3db['push'](_0x1ac3db['shift']());}catch(_0x3b389c){_0x1ac3db['push'](_0x1ac3db['shift']());}}}(_0x3750,0xc930a));import{getToken}from'../utils/keychain.js';import{getFeature,concludeSession}from'../utils/featureApi.js';function _0x3750(){const _0x24651a=['filter','658960rcYbcb','8205015ItTqyN','Stop','11189172aEVciU','status','blocked','33JSgauM','16ITYOTw','1544195XQgSGx','657RrBanK','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','checklistItems','awEAG','6Oiagyo','6937260CWVDVT','closed','6PAwEwU','69512QhNjuQ','cxEGq','495477hNnHhf','sessionId','featureId','log'];_0x3750=function(){return _0x24651a;};return _0x3750();}import{getSessionEntry,shouldShowStopReminder}from'../utils/sessionCache.js';import{getEnabledHookContext}from'./output.js';import{createTelemetryCollector}from'../utils/telemetry.js';function _0x1cbe(_0x21f7dc,_0x32adf6){_0x21f7dc=_0x21f7dc-0x133;const _0x3750d9=_0x3750();let _0x1cbed7=_0x3750d9[_0x21f7dc];return _0x1cbed7;}export async function stopHook(_0x79a553){const _0x13d0a4=_0x1cbe,_0x18f025={'OsIIP':function(_0x4ef09,_0x31cf8c){return _0x4ef09(_0x31cf8c);},'cIyNy':function(_0x894f01,_0x57d2db){return _0x894f01&&_0x57d2db;},'thDNv':function(_0x2cb01c,_0x2cd76e){return _0x2cb01c(_0x2cd76e);},'awEAG':function(_0x3c0bd7,_0x49f131,_0x1def75,_0x1c2c89){return _0x3c0bd7(_0x49f131,_0x1def75,_0x1c2c89);}},_0x397669=await getEnabledHookContext(_0x79a553),_0x27a075=_0x397669?.[_0x13d0a4(0x13a)]??null;let _0x617e7f=!![];if(!_0x27a075){await trackStop(_0x27a075,![],_0x617e7f);return;}try{const _0x40888d=_0x18f025['OsIIP'](getSessionEntry,_0x27a075);if(!_0x40888d){await trackStop(_0x27a075,!![],_0x617e7f);return;}const _0x343c1c=await getToken(),_0x24eed3='https://dashboard.ranger.net/features/'+_0x40888d['featureId'];let _0x3bdb7a=null,_0x12f780=![],_0x27b706=![];if(_0x343c1c)try{const _0x46726c=await _0x18f025['OsIIP'](getFeature,_0x40888d['featureId']);_0x3bdb7a=_0x46726c['currentSessionId']??null;const _0x30e0a5=_0x46726c[_0x13d0a4(0x149)][_0x13d0a4(0x13d)](_0x38f485=>_0x38f485['sessionId']===_0x3bdb7a);_0x12f780=_0x30e0a5['some'](_0x1fa9ea=>_0x1fa9ea['status']!=='verified'&&_0x1fa9ea[_0x13d0a4(0x142)]!==_0x13d0a4(0x143)&&_0x1fa9ea['status']!==_0x13d0a4(0x135)&&_0x1fa9ea[_0x13d0a4(0x142)]!=='incomplete'),_0x27b706=_0x30e0a5['some'](_0x4f3a4f=>_0x4f3a4f['status']==='verification_in_progress');}catch{}if(_0x18f025['cIyNy'](_0x343c1c,_0x3bdb7a)&&_0x12f780){if(!_0x27b706&&_0x18f025['thDNv'](shouldShowStopReminder,_0x27a075)){const _0x30d983={'hookSpecificOutput':{'hookEventName':_0x13d0a4(0x140),'additionalContext':_0x13d0a4(0x148)+_0x24eed3}};console[_0x13d0a4(0x13c)](JSON['stringify'](_0x30d983));}}if(_0x343c1c&&_0x3bdb7a&&!_0x12f780)try{await concludeSession(_0x40888d[_0x13d0a4(0x13b)],_0x3bdb7a);}catch{}await _0x18f025['awEAG'](trackStop,_0x27a075,!![],_0x617e7f);return;}catch{await _0x18f025[_0x13d0a4(0x14a)](trackStop,_0x27a075,!![],_0x617e7f);return;}}async function trackStop(_0x4ab119,_0x402e01,_0x4ebd18){const _0x41001c=_0x1cbe,_0x6466fd={'cxEGq':function(_0x33cc1f,_0x160404){return _0x33cc1f(_0x160404);}};try{const _0x146a0b=_0x6466fd[_0x41001c(0x138)](createTelemetryCollector,'hook:stop');await _0x146a0b['trackCommandStart']({'sessionId':_0x4ab119??undefined,'hooksEnabled':_0x402e01,'stopAllowed':_0x4ebd18}),await _0x146a0b['trackCommandEnd']('success');}catch{}}
1
+ function _0x6ea1(){const _0x4b3823=['blocked','441145IIDLcz','https://dashboard.ranger.net/features/','sessionId','trackCommandEnd','3CNZCJm','status','Stop','LPDfD','featureId','some','494451LiOEYh','32vTzitt','3346KDPIqE','checklistItems','trackCommandStart','MrYuD','2778xTaUer','verified','365464nDeEas','1011532BhKOFh','log','248706oKlNpQ','8359490vvxDQM'];_0x6ea1=function(){return _0x4b3823;};return _0x6ea1();}(function(_0x18c8d0,_0x363571){const _0x1d198c=_0x28d7,_0x184077=_0x18c8d0();while(!![]){try{const _0x40f0d4=-parseInt(_0x1d198c(0x82))/0x1+parseInt(_0x1d198c(0x7f))/0x2+parseInt(_0x1d198c(0x89))/0x3*(-parseInt(_0x1d198c(0x80))/0x4)+parseInt(_0x1d198c(0x85))/0x5+parseInt(_0x1d198c(0x7d))/0x6*(-parseInt(_0x1d198c(0x79))/0x7)+-parseInt(_0x1d198c(0x78))/0x8*(parseInt(_0x1d198c(0x77))/0x9)+parseInt(_0x1d198c(0x83))/0xa;if(_0x40f0d4===_0x363571)break;else _0x184077['push'](_0x184077['shift']());}catch(_0x413dbf){_0x184077['push'](_0x184077['shift']());}}}(_0x6ea1,0x2819b));import{getToken}from'../utils/keychain.js';import{getFeature,concludeSession}from'../utils/featureApi.js';function _0x28d7(_0x466d84,_0x54c52d){_0x466d84=_0x466d84-0x76;const _0x6ea106=_0x6ea1();let _0x28d76d=_0x6ea106[_0x466d84];return _0x28d76d;}import{getSessionEntry,shouldShowStopReminder}from'../utils/sessionCache.js';import{getEnabledHookContext}from'./output.js';import{createTelemetryCollector}from'../utils/telemetry.js';export async function stopHook(_0x176ccf){const _0xe18069=_0x28d7,_0x1f1e88={'LPDfD':function(_0x51eb53,_0xd820a4){return _0x51eb53(_0xd820a4);},'ymGfW':function(_0x51f81e,_0x1b8106,_0x1f3d40,_0x238750){return _0x51f81e(_0x1b8106,_0x1f3d40,_0x238750);},'MrYuD':_0xe18069(0x8b),'tPSpH':function(_0x1b92ea,_0x17730d,_0x55fcde){return _0x1b92ea(_0x17730d,_0x55fcde);}},_0x9bfb3=await _0x1f1e88[_0xe18069(0x8c)](getEnabledHookContext,_0x176ccf),_0x3f789e=_0x9bfb3?.[_0xe18069(0x87)]??null;let _0xf0e905=!![];if(!_0x3f789e){await trackStop(_0x3f789e,![],_0xf0e905);return;}try{const _0xa669f8=getSessionEntry(_0x3f789e);if(!_0xa669f8){await _0x1f1e88['ymGfW'](trackStop,_0x3f789e,!![],_0xf0e905);return;}const _0x517962=await getToken(),_0x5194b1=_0xe18069(0x86)+_0xa669f8['featureId'];let _0x5b41b8=null,_0x5d93cb=![],_0xb04191=![];if(_0x517962)try{const _0x1f4471=await getFeature(_0xa669f8[_0xe18069(0x8d)]);_0x5b41b8=_0x1f4471['currentSessionId']??null;const _0x5d4ef2=_0x1f4471[_0xe18069(0x7a)]['filter'](_0x2b177a=>_0x2b177a[_0xe18069(0x87)]===_0x5b41b8);_0x5d93cb=_0x5d4ef2['some'](_0x10164c=>_0x10164c['status']!==_0xe18069(0x7e)&&_0x10164c['status']!==_0xe18069(0x84)&&_0x10164c['status']!=='closed'&&_0x10164c[_0xe18069(0x8a)]!=='incomplete'),_0xb04191=_0x5d4ef2[_0xe18069(0x76)](_0x4337cd=>_0x4337cd[_0xe18069(0x8a)]==='verification_in_progress');}catch{}if(_0x517962&&_0x5b41b8&&_0x5d93cb){if(!_0xb04191&&_0x1f1e88[_0xe18069(0x8c)](shouldShowStopReminder,_0x3f789e)){const _0x270af4={'hookSpecificOutput':{'hookEventName':_0x1f1e88[_0xe18069(0x7c)],'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'+_0x5194b1}};console[_0xe18069(0x81)](JSON['stringify'](_0x270af4));}}if(_0x517962&&_0x5b41b8&&!_0x5d93cb)try{await _0x1f1e88['tPSpH'](concludeSession,_0xa669f8['featureId'],_0x5b41b8);}catch{}await trackStop(_0x3f789e,!![],_0xf0e905);return;}catch{await trackStop(_0x3f789e,!![],_0xf0e905);return;}}async function trackStop(_0xb18042,_0x1364b4,_0x343097){const _0x44a608=_0x28d7;try{const _0x2fbc05=createTelemetryCollector('hook:stop');await _0x2fbc05[_0x44a608(0x7b)]({'sessionId':_0xb18042??undefined,'hooksEnabled':_0x1364b4,'stopAllowed':_0x343097}),await _0x2fbc05[_0x44a608(0x88)]('success');}catch{}}
@@ -1 +1 @@
1
- (function(_0x9a4e00,_0x381c9c){var _0x13ca4f=_0xe578,_0x462fd6=_0x9a4e00();while(!![]){try{var _0x2eac7b=-parseInt(_0x13ca4f(0xe9))/0x1+parseInt(_0x13ca4f(0xeb))/0x2+parseInt(_0x13ca4f(0xe6))/0x3+-parseInt(_0x13ca4f(0xe5))/0x4+-parseInt(_0x13ca4f(0xec))/0x5+parseInt(_0x13ca4f(0xe8))/0x6*(-parseInt(_0x13ca4f(0xea))/0x7)+parseInt(_0x13ca4f(0xe7))/0x8;if(_0x2eac7b===_0x381c9c)break;else _0x462fd6['push'](_0x462fd6['shift']());}catch(_0x101483){_0x462fd6['push'](_0x462fd6['shift']());}}}(_0xe6d3,0xbd2bf));export{addEnv}from'./addEnv.js';export{clean}from'./clean.js';export{login}from'./login.js';export{start,ensureLocalEnv,ensureChromium,authenticate}from'./start.js';export{useEnv}from'./useEnv.js';function _0xe578(_0x2e9069,_0x55d9e9){_0x2e9069=_0x2e9069-0xe5;var _0xe6d3b3=_0xe6d3();var _0xe57867=_0xe6d3b3[_0x2e9069];return _0xe57867;}export{updateEnv}from'./updateEnv.js';export{update}from'./update.js';export{skillup}from'./skillup.js';export{envList}from'./env.js';export{hook}from'./hook.js';export{setupCi}from'./setupCi.js';export{migrateProfile}from'./migrateProfile.js';function _0xe6d3(){var _0x1edb3e=['857575hVMThI','7ytkmot','2476266ElhUBv','5145495JBmRov','1894872Flqxpb','1254732meRTTE','21617128SLesmA','7339674SZBYpa'];_0xe6d3=function(){return _0x1edb3e;};return _0xe6d3();}
1
+ (function(_0x5021a9,_0x4e7820){var _0x39bc58=_0x1683,_0x45513e=_0x5021a9();while(!![]){try{var _0x52dea4=-parseInt(_0x39bc58(0x1a0))/0x1*(-parseInt(_0x39bc58(0x1a4))/0x2)+parseInt(_0x39bc58(0x1a3))/0x3*(parseInt(_0x39bc58(0x1a6))/0x4)+-parseInt(_0x39bc58(0x1a1))/0x5+-parseInt(_0x39bc58(0x1a5))/0x6*(-parseInt(_0x39bc58(0x1a7))/0x7)+parseInt(_0x39bc58(0x19f))/0x8+parseInt(_0x39bc58(0x1a2))/0x9+-parseInt(_0x39bc58(0x19e))/0xa;if(_0x52dea4===_0x4e7820)break;else _0x45513e['push'](_0x45513e['shift']());}catch(_0x2c8b40){_0x45513e['push'](_0x45513e['shift']());}}}(_0x1e46,0xd26d1));export{addEnv}from'./addEnv.js';export{clean}from'./clean.js';export{login}from'./login.js';export{start,ensureLocalEnv,ensureChromium,authenticate}from'./start.js';export{useEnv}from'./useEnv.js';export{deleteProfile}from'./deleteProfile.js';export{updateEnv}from'./updateEnv.js';export{update}from'./update.js';function _0x1683(_0x50b77b,_0x1fdb27){_0x50b77b=_0x50b77b-0x19e;var _0x1e469f=_0x1e46();var _0x168328=_0x1e469f[_0x50b77b];return _0x168328;}export{skillup}from'./skillup.js';function _0x1e46(){var _0x1c494f=['4030401zvmnzs','2033418vNLaHq','48aauidd','4qLJhmR','1489789QBZdMG','45131180yWuCgC','3217632DMZVYY','1UpLGUl','3759605XwapTa','14957532nSFVtv'];_0x1e46=function(){return _0x1c494f;};return _0x1e46();}export{envList}from'./env.js';export{hook}from'./hook.js';export{setupCi}from'./setupCi.js';export{migrateProfile}from'./migrateProfile.js';