@ranger-testing/ranger-cli 3.1.7-alpha.62f152a-54 → 3.1.7-alpha.9dea9f8-61

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 (86) hide show
  1. package/build/cli.js +1 -1
  2. package/build/commands/addEnv.js +1 -1
  3. package/build/commands/authEncrypt.js +1 -1
  4. package/build/commands/clean.js +1 -1
  5. package/build/commands/config.js +1 -1
  6. package/build/commands/deleteProfile.js +1 -1
  7. package/build/commands/env.js +1 -1
  8. package/build/commands/feature.js +1 -1
  9. package/build/commands/hook.js +1 -1
  10. package/build/commands/hooks/autoPrompt.js +1 -1
  11. package/build/commands/hooks/disable.js +1 -1
  12. package/build/commands/hooks/enable.js +1 -1
  13. package/build/commands/hooks/exitPlanMode.js +1 -1
  14. package/build/commands/hooks/index.js +1 -1
  15. package/build/commands/hooks/output.js +1 -1
  16. package/build/commands/hooks/planReminder.js +1 -1
  17. package/build/commands/hooks/planStart.js +1 -1
  18. package/build/commands/hooks/postEdit.js +1 -1
  19. package/build/commands/hooks/preCompact.js +1 -1
  20. package/build/commands/hooks/sessionEnd.js +1 -1
  21. package/build/commands/hooks/sessionStart.js +1 -1
  22. package/build/commands/hooks/stopHook.js +1 -1
  23. package/build/commands/index.js +1 -1
  24. package/build/commands/login.js +1 -1
  25. package/build/commands/mcpBootstrap.js +1 -1
  26. package/build/commands/migrateProfile.js +1 -1
  27. package/build/commands/setup/claude.js +1 -1
  28. package/build/commands/setup/opencode.js +1 -1
  29. package/build/commands/setupCi.js +1 -1
  30. package/build/commands/skillup.js +1 -1
  31. package/build/commands/start.js +1 -1
  32. package/build/commands/status.js +1 -1
  33. package/build/commands/update.js +1 -1
  34. package/build/commands/updateEnv.js +1 -1
  35. package/build/commands/useEnv.js +1 -1
  36. package/build/commands/utils/activeProfile.js +1 -1
  37. package/build/commands/utils/agentEnv.js +1 -1
  38. package/build/commands/utils/browserSessionsApi.js +1 -1
  39. package/build/commands/utils/claudeConfig.js +1 -1
  40. package/build/commands/utils/claudeOverrideSettings.js +1 -1
  41. package/build/commands/utils/claudePlugin.js +1 -1
  42. package/build/commands/utils/cloudProfile.js +1 -1
  43. package/build/commands/utils/cloudProfileSession.js +1 -1
  44. package/build/commands/utils/crypto.js +1 -1
  45. package/build/commands/utils/desirePathLog.js +1 -1
  46. package/build/commands/utils/deviceAuth.js +1 -1
  47. package/build/commands/utils/environment.js +1 -1
  48. package/build/commands/utils/featureApi.js +1 -1
  49. package/build/commands/utils/fixWebmDuration.js +1 -1
  50. package/build/commands/utils/gitTracked.js +1 -1
  51. package/build/commands/utils/keychain.js +1 -1
  52. package/build/commands/utils/legacyWarning.js +1 -1
  53. package/build/commands/utils/localAgentInstallationsApi.js +1 -1
  54. package/build/commands/utils/matchAuthEnvironment.js +1 -1
  55. package/build/commands/utils/mcpImageBase64.js +1 -1
  56. package/build/commands/utils/model.js +1 -1
  57. package/build/commands/utils/novaActCli.js +1 -1
  58. package/build/commands/utils/opencodeConfig.js +1 -1
  59. package/build/commands/utils/organizationEnvApi.js +1 -1
  60. package/build/commands/utils/playwrightCli.js +1 -1
  61. package/build/commands/utils/profileMessages.js +1 -1
  62. package/build/commands/utils/profileSetupBanner.js +1 -1
  63. package/build/commands/utils/projectsConfig.js +1 -1
  64. package/build/commands/utils/rangerConfig.js +1 -1
  65. package/build/commands/utils/rangerRoot.js +1 -1
  66. package/build/commands/utils/rangerwrightCli.js +1 -1
  67. package/build/commands/utils/resolveProfileContext.js +1 -1
  68. package/build/commands/utils/resolveProfileUrl.js +1 -1
  69. package/build/commands/utils/retry.js +1 -1
  70. package/build/commands/utils/scenarioOriginCheck.js +1 -1
  71. package/build/commands/utils/sessionCache.js +1 -1
  72. package/build/commands/utils/settings.js +1 -1
  73. package/build/commands/utils/skillContent.js +1 -1
  74. package/build/commands/utils/skills.js +1 -1
  75. package/build/commands/utils/stitchWebmFiles.js +1 -1
  76. package/build/commands/utils/telemetry.js +1 -1
  77. package/build/commands/utils/tokenRefresh.js +1 -1
  78. package/build/commands/utils/traceSnapshotMapper.js +1 -1
  79. package/build/commands/utils/tunnelClient.js +1 -1
  80. package/build/commands/utils/userApi.js +1 -1
  81. package/build/commands/utils/version.js +1 -1
  82. package/build/commands/verifyFeature.js +1 -1
  83. package/build/commands/verifyFeatureCli.js +1 -1
  84. package/build/commands/verifyFeatureNovaCli.js +1 -1
  85. package/build/commands/verifyFeatureRangerwrightCli.js +1 -1
  86. package/package.json +2 -5
@@ -1 +1 @@
1
- const _0x5d5956=_0x5e92;(function(_0x35c68a,_0x55dbe6){const _0x1e0a2e=_0x5e92,_0x18397e=_0x35c68a();while(!![]){try{const _0x4f7c2c=parseInt(_0x1e0a2e(0x148))/0x1+-parseInt(_0x1e0a2e(0x191))/0x2+-parseInt(_0x1e0a2e(0x141))/0x3*(parseInt(_0x1e0a2e(0x18b))/0x4)+parseInt(_0x1e0a2e(0xcb))/0x5*(-parseInt(_0x1e0a2e(0xc6))/0x6)+-parseInt(_0x1e0a2e(0x16e))/0x7*(parseInt(_0x1e0a2e(0x14c))/0x8)+-parseInt(_0x1e0a2e(0xe8))/0x9+-parseInt(_0x1e0a2e(0x154))/0xa*(-parseInt(_0x1e0a2e(0x129))/0xb);if(_0x4f7c2c===_0x55dbe6)break;else _0x18397e['push'](_0x18397e['shift']());}catch(_0x1a6ee5){_0x18397e['push'](_0x18397e['shift']());}}}(_0x29cf,0xad206));import{readFile,writeFile,mkdir}from'fs/promises';import{join}from'path';import{existsSync}from'fs';import{execSync}from'child_process';import _0x248dba 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';function _0x5e92(_0xba33dd,_0x372c7e){_0xba33dd=_0xba33dd-0xb2;const _0x29cf92=_0x29cf();let _0x5e929c=_0x29cf92[_0xba33dd];return _0x5e929c;}import{formatProfileRequiredMessage}from'./utils/profileMessages.js';import{listCloudProfiles}from'./utils/cloudProfile.js';const ACTIVE_FEATURE_FILE=_0x5d5956(0x140),bold=_0x8e41ba=>'\x1b[1m'+_0x8e41ba+_0x5d5956(0xed);function getGitRepoUrl(){const _0x5b3a24=_0x5d5956,_0x36baf4={'fafMu':_0x5b3a24(0x104),'SRHHt':'pipe','lYFHQ':_0x5b3a24(0x195)};try{const _0x34f3ed=execSync('git\x20remote\x20get-url\x20origin',{'encoding':_0x36baf4[_0x5b3a24(0x168)],'stdio':[_0x36baf4['SRHHt'],_0x5b3a24(0x11d),_0x36baf4[_0x5b3a24(0xda)]]})['trim']();return _0x34f3ed['replace'](/\.git$/,'')['replace'](/^git@github\.com:/,_0x36baf4[_0x5b3a24(0xf1)])[_0x5b3a24(0x10a)](/^https?:\/\//,'');}catch{return undefined;}}function getGitBranch(){const _0x5cea38=_0x5d5956,_0x9f1802={'bQtkK':_0x5cea38(0x11d)};try{return execSync('git\x20rev-parse\x20--abbrev-ref\x20HEAD',{'encoding':_0x5cea38(0x104),'stdio':[_0x5cea38(0x11d),_0x9f1802['bQtkK'],'pipe']})['trim']();}catch{return undefined;}}function _0x29cf(){const _0x1cb61e=['\x20\x20\x20\x20','notes','map','7772310IDVLVm','screenshotUrls','ZpZIZ','iXyWW','\x20\x20\x20\x20\x20📋\x20Selector:\x20','\x1b[0m','write','faBXx','trim','lYFHQ','textContent','timing','.md','latestReview','exit','QiUxX','\x20\x20\x20Run\x20`ranger\x20get-review`\x20to\x20see\x20what\x20needs\x20to\x20be\x20fixed.','KSGUP','gpzko','vPoPk','\x20unaddressed\x20comment(s)','\x0aAvailable\x20scenarios:','\x0aCreating\x20feature\x20review...','MNPQO','Cannot\x20conclude\x20session\x20with\x20status:\x20','\x0a❌\x20No\x20scenario\x20number\x20provided.\x20Use\x20--scenario\x20<number>.','dashboardUrl','mhGHI','utf-8','WRrSn','Rvkuz','\x20[has\x20reviewer\x20feedback]','sfOVy','\x20\x20\x20\x20\x20\x20Cancelled:\x20','replace','gitBranch','\x20--current-branch','Scenario\x20','\x20\x20\x20Branch:\x20','exdef','\x0aNo\x20matching\x20active\x20feature\x20reviews\x20found.','incompleteReason','type','submittedAt','Please\x20specify\x20the\x20feature\x20review\x20ID:\x20ranger\x20resume\x20<id>','\x20of\x20','.png','\x0a✅\x20Scenario\x20added','warn','\x0a❌\x20No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.','isKeyStep','completed','toLocaleString','pipe','hcIME','NHimL','version','wrfsh','iteration','Step\x20','scenarios','VmMeM','\x0a✅\x20Feature\x20review\x20created:\x20','IVRqN','NCZwt','198kvOEUP','tutNj',':\x20\x22','Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','ArsYX','in_progress','Next\x20page:\x20ranger\x20list\x20--offset\x20','GpBzC','comment_','toLocaleDateString','verified','\x0a❌\x20No\x20scenarios\x20found\x20to\x20include.','\x20\x20💬\x20','assetUrl','Current\x20session\x20not\x20found.','canceledReason','LJLGm','screenshot','checklistItems','numeric','uFSiB','Screenshot\x20','CLAUDE_SESSION_ID','active-feature.txt','1959osNPmN','NXkOD','blockedReason','\x20\x20\x20▶️\x20Started\x20session\x20','totalCount','browserSessionId','\x20at\x20[','1071177iqYrmO','stats','join','split','37216PRDyqj','description','\x20\x20\x20Status:\x20','terminalReason','currentBranch','jIEqb','\x20in\x20progress','\x0a📋\x20Feedback\x20for:\x20','1531330UhljOZ','verificationInProgressItems','/artifacts/','EzeLW','env','iuwhg','CbcTR','aHWAJ','gitRepoUrl','blockedItems','nMstv','incomplete','error','parentItemId','TvWFh','assetType','nBuyR','closed','items','\x20\x20\x20Completed:\x20','fafMu','prompt','DYmVG','yXwYF','push','ISYio','1099ekjgvn','scenario','Multiple\x20feature\x20reviews\x20found.\x20Select\x20one:','No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','\x20incomplete','xGwwJ','point','zbgmP','DoDhT','AvbHz','\x20\x20\x20Created:\x20','UJrDs','cDUPJ','TsBgt','unaddressedComments','JrZNV','EpJEh','spatial','\x0a❌\x20All\x20scenarios\x20were\x20excluded.','excludeScenarios','aGvWy','\x20\x20\x20\x20\x20\x20Blocked:\x20','toFixed','length','HUepx','createdAt','\x20\x20Expected\x20flow:','canonicalFlow','\x20>\x20','1224CHJtns','...','\x0aGenerating\x20report...','sessionId','\x20\x20\x20\x20\x20ID:\x20','No\x20sessions\x20found.','172646YGCDJs','mnBVC','HCBQs','\x20\x20\x20Updated\x20branch\x20to:\x20','github.com/','authorEmail','coordinates','\x20/\x20','\x20(v','\x0a❌\x20Invalid\x20scenario\x20index:\x20','pop','\x20\x20\x20','Obfgh','isInteger','authorName','BdFgo','style','cQqpz','FzLwS','\x20scenarios.','\x20scenario(s).','NkZwQ','content','completedAt','stdout','TtLzY','filter','pTaEv','\x0aNo\x20feature\x20reviews\x20found.','\x20\x20\x20To\x20restore\x20it,\x20run:\x20ranger\x20restore\x20','No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.','JpzxA','offset','fUYLu','isTTY','Showing\x20','has','domRef','jzdWI','name','\x20\x20\x20\x20\x20\x20Incomplete:\x20','json','\x20\x20✅\x20No\x20feedback\x20to\x20address','60yyEmxz','No\x20scenarios\x20found.','ijPxE','en-US','NmVVj','619175eQyKiz','MRObw','PKWtL','\x0aNon-interactive\x20mode\x20detected.\x20Multiple\x20feature\x20reviews\x20found:','ZVRjK','limit','currentSessionId','verification_in_progress','lzYDe','log','selector','reports','YDspR','includeDeleted','XGFMH','SRHHt','short','\x20\x20\x20Description:\x20','\x20verified','find','NGuMl','status','JIlBo','RaDCe','Unknown','list'];_0x29cf=function(){return _0x1cb61e;};return _0x29cf();}export async function getActiveFeatureId(){const _0x366412=_0x5d5956,_0x435214=join(getRangerDir(),ACTIVE_FEATURE_FILE);if(!existsSync(_0x435214))return null;try{const _0x480407=await readFile(_0x435214,_0x366412(0x104));return _0x480407['trim']()||null;}catch{return null;}}async function setActiveFeatureId(_0x56a2b9){const _0x16beee=_0x5d5956,_0x264428={'SYpeM':function(_0x340867){return _0x340867();},'nMstv':function(_0x43edd5,_0xd5c092,_0x50b289){return _0x43edd5(_0xd5c092,_0x50b289);},'faBXx':function(_0x50c964,_0x5ae57a,_0x165856){return _0x50c964(_0x5ae57a,_0x165856);},'iXyWW':function(_0x347187,_0x332af7,_0x3d5a91,_0x172e53){return _0x347187(_0x332af7,_0x3d5a91,_0x172e53);},'iBbrC':'utf-8'},_0x31bc88=_0x264428['SYpeM'](getRangerDir),_0x12fa65=_0x264428[_0x16beee(0x15e)](join,_0x31bc88,ACTIVE_FEATURE_FILE);!existsSync(_0x31bc88)&&await _0x264428[_0x16beee(0xef)](mkdir,_0x31bc88,{'recursive':!![]}),await _0x264428[_0x16beee(0xeb)](writeFile,_0x12fa65,_0x56a2b9,_0x264428['iBbrC']);}function getProgressDisplay(_0x1722c0){const _0x12ba01=_0x5d5956,_0x1408ad={'GpBzC':function(_0x4a7897,_0x151f94){return _0x4a7897+_0x151f94;},'NmVVj':function(_0x4e7e24,_0x43fdeb){return _0x4e7e24+_0x43fdeb;},'Obfgh':function(_0x542f5b,_0xb04e06){return _0x542f5b/_0xb04e06;},'xGwwJ':function(_0x57176c,_0x1b5b18){return _0x57176c>_0x1b5b18;}},_0x10bd0b=_0x1722c0['verifiedItems']||0x0,_0x536dfe=_0x1722c0[_0x12ba01(0x155)]||0x0,_0x52f4d2=_0x1722c0[_0x12ba01(0x15d)]||0x0,_0x4784c7=_0x1722c0['incompleteItems']||0x0,_0xd5d87a=_0x1722c0['pendingItems']||0x0,_0x1e0dd1=_0x1408ad[_0x12ba01(0x130)](_0x1408ad['GpBzC'](_0x1408ad[_0x12ba01(0x130)](_0x1408ad[_0x12ba01(0xca)](_0x10bd0b,_0x536dfe),_0x52f4d2),_0x4784c7),_0xd5d87a);if(_0x1e0dd1===0x0)return'-';const _0x53ea15=0xa,_0x41dcaa=Math['round'](_0x1408ad[_0x12ba01(0x19d)](_0x10bd0b,_0x1e0dd1)*_0x53ea15),_0xd5892b='█'['repeat'](_0x41dcaa)+'░'['repeat'](_0x53ea15-_0x41dcaa),_0x3bf25a=[];if(_0x1408ad[_0x12ba01(0x173)](_0x52f4d2,0x0))_0x3bf25a[_0x12ba01(0x16c)](_0x52f4d2+'\x20blocked');if(_0x4784c7>0x0)_0x3bf25a['push'](_0x4784c7+_0x12ba01(0x172));if(_0x536dfe>0x0)_0x3bf25a['push'](_0x536dfe+_0x12ba01(0x152));const _0x161c30=_0x3bf25a['length']>0x0?'\x20('+_0x3bf25a['join'](',\x20')+')':'';return _0xd5892b+'\x20'+_0x10bd0b+'/'+_0x1e0dd1+_0x12ba01(0xdd)+_0x161c30;}function getCurrentSessionItems(_0x5f57e2,_0x336917){const _0x525d5d=_0x5d5956;if(!_0x5f57e2['currentSessionId'])return _0x336917[_0x525d5d(0xb5)](_0xa30083=>!_0xa30083[_0x525d5d(0x18e)]);return _0x336917['filter'](_0x34228a=>_0x34228a['sessionId']===_0x5f57e2[_0x525d5d(0xd1)]||!_0x34228a[_0x525d5d(0x18e)]);}function displayFeature(_0x1a5e21,_0x1e2cfc){const _0x1c7a47=_0x5d5956,_0x26a354={'ijPxE':'\x0a\x20\x20\x20Scenarios:','tSsHA':function(_0xfa9ea7,_0x184f0b){return _0xfa9ea7<_0x184f0b;},'hcIME':function(_0x4aaeea,_0xbbc5d9){return _0x4aaeea===_0xbbc5d9;},'AiwmK':'approved','NHimL':_0x1c7a47(0x133),'exdef':_0x1c7a47(0x15f),'FzLwS':function(_0x2398e9,_0x2da7cd){return _0x2398e9===_0x2da7cd;},'ZxsOn':_0x1c7a47(0x165),'JtVjl':function(_0x43157b,_0x484b6c){return _0x43157b>_0x484b6c;},'jIEqb':function(_0x5166d8,_0x1b74ab){return _0x5166d8>_0x1b74ab;},'juhHY':function(_0x4bacdc,_0x3c5006){return _0x4bacdc!==_0x3c5006;},'FnnoI':function(_0x1fb265,_0x9f553c){return _0x1fb265!==_0x9f553c;},'pTaEv':function(_0x22a9cc,_0x624e69){return _0x22a9cc+_0x624e69;},'LJLGm':function(_0x1f0db6,_0x35c697){return _0x1f0db6===_0x35c697;}};console[_0x1c7a47(0xd4)]('\x0a'+_0x1a5e21[_0x1c7a47(0xc2)]+'\x20('+_0x1a5e21[_0x1c7a47(0x102)]+')');_0x1a5e21[_0x1c7a47(0x149)]&&console[_0x1c7a47(0xd4)]('\x20\x20\x20Progress:\x20'+getProgressDisplay(_0x1a5e21['stats']));_0x1a5e21['description']&&console[_0x1c7a47(0xd4)](_0x1c7a47(0xdc)+_0x1a5e21['description']);_0x1a5e21[_0x1c7a47(0x15c)]&&console['log']('\x20\x20\x20Repository:\x20'+_0x1a5e21[_0x1c7a47(0x15c)]);_0x1a5e21[_0x1c7a47(0x10b)]&&console[_0x1c7a47(0xd4)]('\x20\x20\x20Branch:\x20'+_0x1a5e21['gitBranch']);console[_0x1c7a47(0xd4)](_0x1c7a47(0x178)+new Date(_0x1a5e21['createdAt'])[_0x1c7a47(0x11c)]());_0x1a5e21[_0x1c7a47(0xb2)]&&console[_0x1c7a47(0xd4)]('\x20\x20\x20Completed:\x20'+new Date(_0x1a5e21[_0x1c7a47(0xb2)])['toLocaleString']());if(_0x1e2cfc&&_0x1e2cfc[_0x1c7a47(0x185)]>0x0){console[_0x1c7a47(0xd4)](_0x26a354[_0x1c7a47(0xc8)]);for(let _0x2faff3=0x0;_0x26a354['tSsHA'](_0x2faff3,_0x1e2cfc['length']);_0x2faff3++){const _0x599223=_0x1e2cfc[_0x2faff3];let _0x389755;if(_0x26a354[_0x1c7a47(0x11e)](_0x599223['status'],_0x1c7a47(0x165))&&_0x26a354[_0x1c7a47(0x11e)](_0x599223['terminalReason'],_0x26a354['AiwmK']))_0x389755='✅';else{if(_0x599223[_0x1c7a47(0xe0)]===_0x26a354[_0x1c7a47(0x11f)])_0x389755='🟢';else{if(_0x599223['status']===_0x26a354[_0x1c7a47(0x10f)])_0x389755='🟠';else{if(_0x599223[_0x1c7a47(0xe0)]==='blocked')_0x389755='🛑';else{if(_0x26a354[_0x1c7a47(0x1a3)](_0x599223[_0x1c7a47(0xe0)],_0x26a354['ZxsOn']))_0x389755='⛔';else _0x599223[_0x1c7a47(0xe0)]==='verification_in_progress'?_0x389755='⏳':_0x389755='⬜';}}}}const _0x5e520c=_0x26a354['JtVjl'](_0x599223['version'],0x1)?'\x20(v'+_0x599223[_0x1c7a47(0x120)]+')':'',_0x49da2c=_0x26a354[_0x1c7a47(0x151)](_0x599223[_0x1c7a47(0x120)],0x1)&&_0x599223[_0x1c7a47(0x161)]&&_0x26a354['juhHY'](_0x599223['status'],_0x1c7a47(0x165))&&_0x26a354['FnnoI'](_0x599223[_0x1c7a47(0xe0)],_0x1c7a47(0x133))?_0x1c7a47(0x107):'';console[_0x1c7a47(0xd4)](_0x1c7a47(0x19c)+_0x26a354[_0x1c7a47(0xb6)](_0x2faff3,0x1)+'.\x20'+_0x389755+'\x20'+_0x599223[_0x1c7a47(0x14d)]+_0x5e520c+_0x49da2c);_0x599223['status']==='blocked'&&_0x599223[_0x1c7a47(0x143)]&&console[_0x1c7a47(0xd4)](_0x1c7a47(0x183)+_0x599223[_0x1c7a47(0x143)]);_0x599223[_0x1c7a47(0xe0)]===_0x1c7a47(0x15f)&&_0x599223['incompleteReason']&&console[_0x1c7a47(0xd4)](_0x1c7a47(0xc3)+_0x599223[_0x1c7a47(0x111)]);if(_0x599223['status']===_0x1c7a47(0x165)&&_0x599223['terminalReason']===_0x26a354['AiwmK'])console[_0x1c7a47(0xd4)]('\x20\x20\x20\x20\x20\x20Approved');else _0x26a354[_0x1c7a47(0x139)](_0x599223[_0x1c7a47(0xe0)],'closed')&&_0x599223['canceledReason']&&console[_0x1c7a47(0xd4)](_0x1c7a47(0x109)+_0x599223[_0x1c7a47(0x138)]);}}}export async function featureCreate(_0x2f8af0,_0x365c25){const _0x2c17d6=_0x5d5956,_0x1c88cf={'uFSiB':function(_0x2391d2,_0x31f7c5){return _0x2391d2===_0x31f7c5;},'IyqyF':function(_0x471389,_0x54623a){return _0x471389===_0x54623a;},'ZVRjK':function(_0x37cbe3,_0x4baa70){return _0x37cbe3(_0x4baa70);},'KSGUP':function(_0x3fbf05){return _0x3fbf05();},'TvWFh':function(_0x47fe1f){return _0x47fe1f();},'fUYLu':_0x2c17d6(0xfe),'Rvkuz':function(_0x5c1393,_0xd15c4d){return _0x5c1393(_0xd15c4d);},'doBvE':function(_0x1c94d0,_0x41dcc5,_0x4a1ce9){return _0x1c94d0(_0x41dcc5,_0x4a1ce9);}},{envNames:_0x9ef060}=await getEnvNames();if(_0x1c88cf[_0x2c17d6(0x13d)](_0x9ef060[_0x2c17d6(0x185)],0x0)&&!process['env']['RANGER_TEST_USERNAME']){let _0x569c8c=0x0;try{_0x569c8c=(await listCloudProfiles())[_0x2c17d6(0x185)];}catch{_0x569c8c=0x1;}_0x1c88cf['IyqyF'](_0x569c8c,0x0)&&console[_0x2c17d6(0x118)]('\x0a'+_0x1c88cf[_0x2c17d6(0xcf)](formatProfileRequiredMessage,_0x3b759e=>bold(_0x3b759e)));}const _0x22d0a1=_0x365c25[_0x2c17d6(0x124)]?_0x365c25[_0x2c17d6(0x124)][_0x2c17d6(0xe7)](_0x4b58a2=>_0x4b58a2[_0x2c17d6(0xf0)]()):[],_0x4a8eeb=_0x1c88cf[_0x2c17d6(0xf9)](getGitRepoUrl),_0x3bc57f=_0x1c88cf[_0x2c17d6(0x162)](getGitBranch);console['log'](_0x1c88cf[_0x2c17d6(0xbc)]);const _0x17c5a5=await _0x1c88cf[_0x2c17d6(0x106)](createFeature,{'name':_0x2f8af0,'description':_0x365c25['description'],'checklist':_0x22d0a1,'gitRepoUrl':_0x4a8eeb,'gitBranch':_0x3bc57f});await setActiveFeatureId(_0x17c5a5['id']),await tryStartCurrentSession(_0x17c5a5['id']);const _0x48ab28=process['env'][_0x2c17d6(0x13f)];_0x48ab28&&registerSession(_0x48ab28,_0x17c5a5['id']),console['log'](_0x2c17d6(0x126)+_0x17c5a5['id']),_0x1c88cf['doBvE'](displayFeature,_0x17c5a5,_0x17c5a5[_0x2c17d6(0x13b)]),console[_0x2c17d6(0xd4)]('\x0a➡️\x20\x20Set\x20as\x20active\x20feature\x20review');}export async function featureList(_0x10c2c9){const _0x5e6fdd=_0x5d5956,_0x2c5388={'zbgmP':function(_0x57ab69,_0x37558f){return _0x57ab69(_0x37558f);},'DoDhT':function(_0x10c798,_0x39faa1){return _0x10c798>_0x39faa1;},'UdJlZ':function(_0x5c1a8a,_0x44ad5c){return _0x5c1a8a+_0x44ad5c;},'PExKk':_0x5e6fdd(0x10c)},_0x489eee={'limit':_0x10c2c9['limit']??0xa,'offset':_0x10c2c9['offset']??0x0,'includeDeleted':_0x10c2c9[_0x5e6fdd(0xd8)]};_0x10c2c9['currentBranch']&&(_0x489eee['gitRepoUrl']=getGitRepoUrl(),_0x489eee['gitBranch']=getGitBranch());const _0x56183a=await _0x2c5388[_0x5e6fdd(0x175)](listFeatures,_0x489eee);if(_0x56183a['items'][_0x5e6fdd(0x185)]===0x0){console[_0x5e6fdd(0xd4)](_0x5e6fdd(0xb7));return;}const _0x3c54e9=_0x2c5388[_0x5e6fdd(0x176)](_0x56183a[_0x5e6fdd(0x145)],_0x56183a[_0x5e6fdd(0x166)][_0x5e6fdd(0x185)])?_0x5e6fdd(0xbe)+_0x56183a[_0x5e6fdd(0x166)][_0x5e6fdd(0x185)]+_0x5e6fdd(0x115)+_0x56183a['totalCount']:_0x56183a['totalCount']+'\x20feature\x20review(s)\x20found';console[_0x5e6fdd(0xd4)]('\x0a'+_0x3c54e9+':\x0a');for(const _0x50532e of _0x56183a['items']){console['log'](''+_0x50532e['name']),console['log']('\x20\x20\x20ID:\x20'+_0x50532e['id']),_0x50532e['stats']&&console['log']('\x20\x20\x20Progress:\x20'+getProgressDisplay(_0x50532e['stats'])),_0x50532e['gitBranch']&&console['log'](_0x5e6fdd(0x10e)+_0x50532e[_0x5e6fdd(0x10b)]),console[_0x5e6fdd(0xd4)]('\x20\x20\x20Created:\x20'+new Date(_0x50532e[_0x5e6fdd(0x187)])['toLocaleDateString']()),console['log']('');}const _0x159702=_0x489eee[_0x5e6fdd(0xd0)]??0xa,_0x7963ff=_0x2c5388['UdJlZ'](_0x489eee[_0x5e6fdd(0xbb)]??0x0,_0x56183a['items'][_0x5e6fdd(0x185)]);if(_0x7963ff<_0x56183a['totalCount']){const _0x41c23f=_0x159702!==0xa?'\x20--limit\x20'+_0x159702:'',_0x417083=_0x10c2c9[_0x5e6fdd(0x150)]?_0x2c5388['PExKk']:'',_0x5ab939=_0x10c2c9[_0x5e6fdd(0xd8)]?'\x20--include-deleted':'';console['log'](_0x5e6fdd(0x12f)+_0x7963ff+_0x41c23f+_0x417083+_0x5ab939);}}export async function featureShow(_0xc4b611){const _0x4f103f=_0x5d5956,_0x1dcfea={'mhGHI':function(_0xc09ed5){return _0xc09ed5();}},_0x5d5368=_0xc4b611||await _0x1dcfea[_0x4f103f(0x103)](getActiveFeatureId);if(!_0x5d5368)throw new Error('No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review');const _0x26f1b2=await getFeature(_0x5d5368);displayFeature(_0x26f1b2,_0x26f1b2['checklistItems']);}export async function featureResume(_0xb2358d){const _0x179007=_0x5d5956,_0x3760a0={'UJrDs':function(_0x170884,_0x39fe49){return _0x170884(_0x39fe49);},'wrfsh':function(_0xa2dd8c,_0x58c35c,_0x2f3ce7){return _0xa2dd8c(_0x58c35c,_0x2f3ce7);},'XqOfh':function(_0x17b23c){return _0x17b23c();},'uHjdL':'Not\x20in\x20a\x20git\x20repository.','HUepx':function(_0x210920,_0x509588){return _0x210920||_0x509588;},'RaDCe':'any','OOeRH':function(_0x476f45,_0x413621){return _0x476f45(_0x413621);},'byEvO':_0x179007(0x170),'ArsYX':function(_0x2d2d7a,_0x51d977){return _0x2d2d7a(_0x51d977);},'RFAoG':function(_0x5a28a5,_0x1097bb){return _0x5a28a5!==_0x1097bb;},'NGuMl':function(_0x256f69,_0x499556){return _0x256f69(_0x499556);},'RPswZ':function(_0x412e8e,_0x14d6ac){return _0x412e8e(_0x14d6ac);}};if(_0xb2358d){const _0x3ea45a=await getFeature(_0xb2358d);await setActiveFeatureId(_0x3ea45a['id']);const _0x54c7db=getGitBranch();_0x54c7db&&_0x54c7db!==_0x3ea45a[_0x179007(0x10b)]&&(await updateFeature(_0x3ea45a['id'],{'gitBranch':_0x54c7db}),console['log']('\x20\x20\x20Updated\x20branch\x20to:\x20'+_0x54c7db));console['log']('\x0a✅\x20Resumed\x20feature\x20review:\x20'+_0x3ea45a[_0x179007(0xc2)]+'\x20('+_0x3ea45a['id']+')'),await _0x3760a0[_0x179007(0x179)](tryStartCurrentSession,_0x3ea45a['id']);const _0x237562=process[_0x179007(0x158)]['CLAUDE_SESSION_ID'];_0x237562&&registerSession(_0x237562,_0x3ea45a['id']);_0x3760a0['wrfsh'](displayFeature,_0x3ea45a,_0x3ea45a['checklistItems']),await printFeedbackNudge(_0x3ea45a['id']);return;}const _0x489624=getGitRepoUrl(),_0x52b10f=_0x3760a0['XqOfh'](getGitBranch);if(!_0x489624&&!_0x52b10f)throw new Error(_0x3760a0['uHjdL']);console['log']('\x0aSearching\x20for\x20feature\x20reviews\x20matching:\x20'+_0x3760a0[_0x179007(0x186)](_0x489624,'any')+_0x179007(0x198)+_0x3760a0['HUepx'](_0x52b10f,_0x3760a0[_0x179007(0xe2)])+_0x179007(0x18c));const _0x49dab3=await listFeatures({'gitRepoUrl':_0x489624,'gitBranch':_0x52b10f}),_0x4e1e28=_0x49dab3['items'][_0x179007(0xb5)](_0x246997=>_0x246997['status']?_0x246997['status']!=='verified':!_0x246997['completedAt']);if(_0x4e1e28['length']===0x0){console[_0x179007(0xd4)](_0x179007(0x110)),console['log']('Run:\x20ranger\x20create\x20\x22<name>\x22\x20to\x20create\x20a\x20new\x20feature\x20review');return;}let _0x2a3a22;if(_0x4e1e28['length']===0x1)_0x2a3a22=_0x4e1e28[0x0];else{const _0x1b92f4=process['stdin']['isTTY']&&process[_0x179007(0xb3)][_0x179007(0xbd)];if(!_0x1b92f4){console['log'](_0x179007(0xce));for(const _0x286a80 of _0x4e1e28){console[_0x179007(0xd4)]('\x20\x20'+_0x286a80['name']),console[_0x179007(0xd4)](_0x179007(0x18f)+_0x286a80['id']),_0x286a80[_0x179007(0x149)]&&console['log']('\x20\x20\x20\x20\x20Progress:\x20'+_0x3760a0['OOeRH'](getProgressDisplay,_0x286a80[_0x179007(0x149)])),_0x286a80['gitBranch']&&console['log']('\x20\x20\x20\x20\x20Branch:\x20'+_0x286a80[_0x179007(0x10b)]);}throw new Error(_0x179007(0x114));}const {selected:_0x53054a}=await _0x248dba[_0x179007(0x169)]([{'type':_0x179007(0xe4),'name':'selected','message':_0x3760a0['byEvO'],'choices':_0x4e1e28['map'](_0x20e0a8=>({'name':_0x20e0a8['name']+'\x20('+_0x20e0a8['id']+')','value':_0x20e0a8['id']}))}]);_0x2a3a22=_0x4e1e28[_0x179007(0xde)](_0x282b9f=>_0x282b9f['id']===_0x53054a);}await _0x3760a0[_0x179007(0x12d)](setActiveFeatureId,_0x2a3a22['id']);_0x52b10f&&_0x3760a0['RFAoG'](_0x52b10f,_0x2a3a22[_0x179007(0x10b)])&&(await _0x3760a0[_0x179007(0x121)](updateFeature,_0x2a3a22['id'],{'gitBranch':_0x52b10f}),console[_0x179007(0xd4)](_0x179007(0x194)+_0x52b10f));console['log']('\x0a✅\x20Resumed\x20feature\x20review:\x20'+_0x2a3a22['name']+'\x20('+_0x2a3a22['id']+')'),await tryStartCurrentSession(_0x2a3a22['id']);const _0x1f5290=await _0x3760a0[_0x179007(0xdf)](getFeature,_0x2a3a22['id']),_0x2d3668=process['env'][_0x179007(0x13f)];_0x2d3668&&_0x3760a0[_0x179007(0x121)](registerSession,_0x2d3668,_0x1f5290['id']),_0x3760a0['wrfsh'](displayFeature,_0x1f5290,_0x1f5290['checklistItems']),await _0x3760a0['RPswZ'](printFeedbackNudge,_0x1f5290['id']);}async function printFeedbackNudge(_0x5d5f9b){const _0x121d48=_0x5d5956,_0x475518={'QiUxX':function(_0x2e93b9,_0x19a037){return _0x2e93b9(_0x19a037);},'ISYio':function(_0x1ea101,_0x353886,_0x532f7c){return _0x1ea101(_0x353886,_0x532f7c);},'NILYU':_0x121d48(0xf8)};try{const {items:_0x7ab318}=await _0x475518[_0x121d48(0xf7)](getActionItems,_0x5d5f9b);let _0x52ae2c=0x0,_0x51e5df=0x0;for(const _0x2f59a5 of _0x7ab318){const _0x1316f7=await _0x475518[_0x121d48(0x16d)](getItemFeedback,_0x5d5f9b,_0x2f59a5['id']);_0x1316f7['unaddressedComments'][_0x121d48(0x185)]>0x0&&(_0x52ae2c+=_0x1316f7[_0x121d48(0x17c)]['length'],_0x51e5df++);}_0x52ae2c>0x0&&(console['log']('\x0a⚠️\x20\x20'+_0x52ae2c+'\x20unaddressed\x20reviewer\x20comment(s)\x20across\x20'+_0x51e5df+_0x121d48(0x1a5)),console['log'](_0x475518['NILYU']));}catch{}}async function tryStartCurrentSession(_0x459198){const _0x49e57a=_0x5d5956;try{const {sessions:_0x383828}=await listFeatureSessions(_0x459198),_0x59109a=_0x383828[_0x49e57a(0xde)](_0x5b4d66=>_0x5b4d66[_0x49e57a(0xe0)]==='ready');_0x59109a&&(await startSession(_0x459198,_0x59109a['id']),console[_0x49e57a(0xd4)](_0x49e57a(0x144)+_0x59109a[_0x49e57a(0x122)]));}catch{}}export async function featureReport(_0x5dbc38,_0xa12328){const _0x3b01e4=_0x5d5956,_0x2f50c8={'TsBgt':function(_0x186b7e){return _0x186b7e();},'NHTEL':_0x3b01e4(0xb9),'SRSVM':_0x3b01e4(0x18d),'sfOVy':function(_0x4d3890,_0x4b0a32,_0x10a247,_0x319264){return _0x4d3890(_0x4b0a32,_0x10a247,_0x319264);},'NXkOD':_0x3b01e4(0xd6),'vPoPk':function(_0x52d4f0,_0x399fed,_0x4fb263){return _0x52d4f0(_0x399fed,_0x4fb263);},'mnBVC':function(_0x5ccc7a,_0x458d89,_0x3a17b1,_0x362943){return _0x5ccc7a(_0x458d89,_0x3a17b1,_0x362943);}},_0x3960fe=_0x5dbc38||await _0x2f50c8[_0x3b01e4(0x17b)](getActiveFeatureId);if(!_0x3960fe)throw new Error(_0x2f50c8['NHTEL']);console['log'](_0x2f50c8['SRSVM']);const _0x132f8a=await getFeatureReportMarkdown(_0x3960fe,{'style':_0xa12328[_0x3b01e4(0x1a1)]}),_0x17bcc3=_0xa12328['output']||_0x2f50c8[_0x3b01e4(0x108)](join,_0x2f50c8['TsBgt'](getRangerDir),_0x2f50c8[_0x3b01e4(0x142)],_0x3960fe+_0x3b01e4(0xf4)),_0x514800=join(_0x17bcc3,'..');!existsSync(_0x514800)&&await _0x2f50c8[_0x3b01e4(0xfb)](mkdir,_0x514800,{'recursive':!![]}),await _0x2f50c8[_0x3b01e4(0x192)](writeFile,_0x17bcc3,_0x132f8a,_0x3b01e4(0x104)),console[_0x3b01e4(0xd4)]('\x0a✅\x20Report\x20generated:\x20'+_0x17bcc3);}function getScenarioResult(_0x2a7d20){const _0x296af0=_0x5d5956,_0x1f50e7={'Kefmo':function(_0x32dd61,_0x25600e){return _0x32dd61===_0x25600e;},'ZpZIZ':_0x296af0(0x165),'gGgPw':_0x296af0(0xd2),'cDUPJ':_0x296af0(0x12e)};if(_0x1f50e7['Kefmo'](_0x2a7d20['status'],_0x1f50e7[_0x296af0(0xea)]))return _0x2a7d20[_0x296af0(0x14f)]??_0x1f50e7['ZpZIZ'];if(_0x2a7d20['status']===_0x1f50e7['gGgPw'])return _0x1f50e7[_0x296af0(0x17a)];return _0x2a7d20['status'];}function getScenarioRationale(_0x4706bb,_0x21803a){const _0x15df80=_0x5d5956,_0x370753='0|3|4|1|5|2'[_0x15df80(0x14b)]('|');let _0x5d8165=0x0;while(!![]){switch(_0x370753[_0x5d8165++]){case'0':if(_0x21803a)return _0x21803a;continue;case'1':if(_0x4706bb[_0x15df80(0x138)])return _0x4706bb['canceledReason'];continue;case'2':return null;case'3':if(_0x4706bb[_0x15df80(0x143)])return _0x4706bb[_0x15df80(0x143)];continue;case'4':if(_0x4706bb[_0x15df80(0x111)])return _0x4706bb[_0x15df80(0x111)];continue;case'5':if(_0x4706bb[_0x15df80(0xe6)])return _0x4706bb[_0x15df80(0xe6)];continue;}break;}}export async function featureReportPrDescription(_0x1d13fc,_0x539a82){const _0x4dc279=_0x5d5956,_0x12bdac={'XGFMH':_0x4dc279(0xb9),'uKDyG':function(_0x519265,_0x4e02f5,_0x469f88){return _0x519265(_0x4e02f5,_0x469f88);},'JrZNV':function(_0x217694,_0x34ed73){return _0x217694===_0x34ed73;},'sPEXI':function(_0x2572f1,_0x58f823){return _0x2572f1>_0x58f823;},'DYmVG':_0x4dc279(0xfd),'bqNiX':_0x4dc279(0x180),'YDspR':function(_0x5965c5,_0x6db81d,_0x44ce9d,_0x438ed9){return _0x5965c5(_0x6db81d,_0x44ce9d,_0x438ed9);},'BWuzs':function(_0xfc8a0,_0x10de22,_0x51cb09){return _0xfc8a0(_0x10de22,_0x51cb09);}},_0x5dc3fb=_0x1d13fc||await getActiveFeatureId();if(!_0x5dc3fb)throw new Error(_0x12bdac[_0x4dc279(0xd9)]);const _0x340a9d=await getFeature(_0x5dc3fb),_0x31ddcf=_0x340a9d[_0x4dc279(0x13b)]||[],_0x321e29=_0x12bdac['uKDyG'](getCurrentSessionItems,_0x340a9d,_0x31ddcf);_0x12bdac[_0x4dc279(0x17d)](_0x321e29['length'],0x0)&&(console['error'](_0x4dc279(0x134)),process['exit'](0x1));const _0x262c28=_0x539a82[_0x4dc279(0x181)]??[],_0x3517d5=_0x262c28[_0x4dc279(0xb5)](_0x36c774=>!Number[_0x4dc279(0x19e)](_0x36c774)||_0x36c774<0x1||_0x36c774>_0x321e29['length']);if(_0x12bdac['sPEXI'](_0x3517d5['length'],0x0)){console[_0x4dc279(0x160)]('\x0a❌\x20Invalid\x20scenario\x20number(s):\x20'+_0x3517d5[_0x4dc279(0x14a)](',\x20')),console['log'](_0x12bdac[_0x4dc279(0x16a)]);for(let _0x428712=0x0;_0x428712<_0x321e29['length'];_0x428712++){console['log']('\x20\x20'+(_0x428712+0x1)+'.\x20'+_0x321e29[_0x428712][_0x4dc279(0x14d)]);}process[_0x4dc279(0xf6)](0x1);}const _0x18a4e3=new Set(_0x262c28[_0x4dc279(0xe7)](_0x53abc7=>_0x53abc7-0x1)),_0x3eebf1=_0x321e29['filter']((_0x504211,_0x23827b)=>!_0x18a4e3[_0x4dc279(0xbf)](_0x23827b));_0x3eebf1[_0x4dc279(0x185)]===0x0&&(console['error'](_0x12bdac['bqNiX']),process[_0x4dc279(0xf6)](0x1));if(_0x539a82[_0x4dc279(0xc4)])await _0x12bdac[_0x4dc279(0xd7)](outputJsonReport,_0x5dc3fb,_0x340a9d,_0x3eebf1);else{const _0x3b5e57=await _0x12bdac['BWuzs'](getFeatureReportMarkdown,_0x5dc3fb,{'itemIds':_0x3eebf1[_0x4dc279(0xe7)](_0x3adb89=>_0x3adb89['id'])});process[_0x4dc279(0xb3)]['write'](_0x3b5e57['trimEnd']()+'\x0a');}}async function outputJsonReport(_0x55f494,_0x565d0f,_0x151ccf){const _0x14b476=_0x5d5956,_0x314d8b={'HCBQs':function(_0x39e318,_0x3805ca){return _0x39e318>_0x3805ca;},'AvbHz':function(_0x279ff6){return _0x279ff6();},'JpzxA':function(_0xdde353,_0xf59b5a){return _0xdde353+_0xf59b5a;}},_0x3f13d5=_0x314d8b[_0x14b476(0x177)](getApiBaseUrl),_0x45eeae=await getFeatureReport(_0x55f494),_0x1c7886=new Map(_0x45eeae[_0x14b476(0x13b)]['map'](_0x14a245=>[_0x14a245['id'],_0x14a245])),_0xecca0e=await Promise['all'](_0x151ccf[_0x14b476(0xe7)](async _0x3d72ed=>{const _0x4540a4=_0x14b476,_0x469260=_0x1c7886['get'](_0x3d72ed['id']),_0x1324ff=_0x469260?.['linkedSession']??null;let _0x515a3e=[];if(_0x3d72ed['browserSessionId'])try{const {steps:_0x3e03ae}=await getBrowserSessionSteps(_0x3d72ed[_0x4540a4(0x146)]);_0x314d8b[_0x4540a4(0x193)](_0x3e03ae['length'],0x0)&&(_0x515a3e=_0x3e03ae['map'](_0x420195=>{const _0x21681a=_0x4540a4,_0x57ce24=_0x420195['assets']['find'](_0x3d9991=>_0x3d9991[_0x21681a(0x163)]==='screenshot'&&_0x3d9991[_0x21681a(0xf3)]==='after')??_0x420195['assets']['find'](_0x3fd2ac=>_0x3fd2ac['assetType']===_0x21681a(0x13a));let _0x292403=null,_0x212de0=null;if(_0x57ce24){const _0x5ecd2c=_0x57ce24['storage']['location']['split']('/')[_0x21681a(0x19b)]();_0x292403=_0x3f13d5+'/api/v1/mcp/browser-sessions/'+_0x3d72ed[_0x21681a(0x146)]+_0x21681a(0x156)+_0x5ecd2c,_0x5ecd2c&&(_0x212de0=_0x5ecd2c['replace'](/\.\w+$/,'')[_0x21681a(0x10a)](/^(key_)?\d+_/,'')[_0x21681a(0x10a)](/[-_]/g,'\x20'));}return{'description':_0x212de0||_0x420195[_0x21681a(0x14d)]||_0x420195['stepName']||_0x21681a(0x123)+_0x420195['position'],'screenshot':_0x292403,'is_key_step':_0x420195[_0x21681a(0x11a)]};}));}catch{}return _0x515a3e[_0x4540a4(0x185)]===0x0&&_0x1324ff?.[_0x4540a4(0xe9)]&&(_0x515a3e=_0x1324ff['screenshotUrls']['map']((_0x5d4770,_0x48f6dd)=>({'description':_0x4540a4(0x13e)+(_0x48f6dd+0x1),'screenshot':_0x5d4770,'is_key_step':![]}))),{'description':_0x3d72ed[_0x4540a4(0x14d)],'result':getScenarioResult(_0x3d72ed),'rationale':getScenarioRationale(_0x3d72ed,_0x1324ff?.['agentResponse']),'steps':_0x515a3e};})),_0x852c89={'url':_0x565d0f['dashboardUrl'],'scenarios':_0xecca0e};process[_0x14b476(0xb3)][_0x14b476(0xee)](_0x314d8b[_0x14b476(0xba)](JSON['stringify'](_0x852c89,null,0x2),'\x0a'));}export async function featureConcludeSession(_0xec255c){const _0xdacafd=_0x5d5956,_0x9cb1c7={'BdFgo':_0xdacafd(0x171),'JIlBo':function(_0x51547d,_0x3c4982){return _0x51547d(_0x3c4982);},'NCZwt':_0xdacafd(0x137),'TkKQB':'\x0a✅\x20Session\x20is\x20already\x20completed.','HmLmv':function(_0xee4921,_0x599a79){return _0xee4921!==_0x599a79;},'cQqpz':'in_progress','slanv':'\x0aConcluding\x20session...'},_0x2d73bb=_0xec255c||await getActiveFeatureId();if(!_0x2d73bb)throw new Error(_0x9cb1c7[_0xdacafd(0x1a0)]);const _0x4e64e2=await _0x9cb1c7[_0xdacafd(0xe1)](getFeature,_0x2d73bb);if(!_0x4e64e2[_0xdacafd(0xd1)])throw new Error('No\x20active\x20session\x20for\x20this\x20feature\x20review.');const {sessions:_0xcf1d58}=await listFeatureSessions(_0x2d73bb),_0x2ace0c=_0xcf1d58['find'](_0x1c8513=>_0x1c8513['id']===_0x4e64e2[_0xdacafd(0xd1)]);if(!_0x2ace0c)throw new Error(_0x9cb1c7[_0xdacafd(0x128)]);if(_0x2ace0c['status']===_0xdacafd(0x11b)){console[_0xdacafd(0xd4)](_0x9cb1c7['TkKQB']);return;}if(_0x9cb1c7['HmLmv'](_0x2ace0c['status'],_0x9cb1c7[_0xdacafd(0x1a2)]))throw new Error(_0xdacafd(0x100)+_0x2ace0c['status']);console[_0xdacafd(0xd4)](_0x9cb1c7['slanv']),await concludeSession(_0x2d73bb,_0x4e64e2['currentSessionId']),console['log']('\x0a✅\x20Session\x20'+_0x2ace0c['iteration']+'\x20concluded.'),console[_0xdacafd(0xd4)]('\x20\x20\x20The\x20feature\x20review\x20is\x20now\x20ready\x20for\x20human\x20review\x20on\x20the\x20Ranger\x20dashboard.');}export async function featureSessions(_0x5994b5){const _0x3cdc82=_0x5d5956,_0x1fa361={'aGvWy':function(_0x3a1b40,_0x1e48d0){return _0x3a1b40(_0x1e48d0);},'MNPQO':_0x3cdc82(0x11b),'MRObw':'in_progress'},_0x480c79=_0x5994b5||await getActiveFeatureId();if(!_0x480c79)throw new Error(_0x3cdc82(0xb9));const _0x3d9ef2=await _0x1fa361[_0x3cdc82(0x182)](getFeature,_0x480c79);console['log']('\x0a📁\x20Sessions\x20for\x20feature\x20review:\x20'+_0x3d9ef2['name']+'\x0a');const {sessions:_0x579d72}=await listFeatureSessions(_0x480c79);if(_0x579d72[_0x3cdc82(0x185)]===0x0){console['log'](_0x3cdc82(0x190));return;}for(const _0x12798d of _0x579d72){const _0x172398=_0x12798d['status']===_0x1fa361[_0x3cdc82(0xff)]?'✅':_0x12798d['status']===_0x1fa361[_0x3cdc82(0xcc)]?'🔄':'▶️';console[_0x3cdc82(0xd4)](_0x172398+'\x20Session\x20'+_0x12798d[_0x3cdc82(0x122)]+'\x20('+_0x12798d['id']+')'),console['log'](_0x3cdc82(0x14e)+_0x12798d[_0x3cdc82(0xe0)]),console['log'](_0x3cdc82(0x178)+new Date(_0x12798d['createdAt'])[_0x3cdc82(0x11c)]()),_0x12798d['completedAt']&&console[_0x3cdc82(0xd4)](_0x3cdc82(0x167)+new Date(_0x12798d[_0x3cdc82(0xb2)])['toLocaleString']()),console['log']('');}}export async function featureAddScenario(_0x1704c6,_0x1c319e){const _0x51f6b2=_0x5d5956,_0x2472d2={'cSRQE':function(_0x50a672,_0x48c418){return _0x50a672(_0x48c418);},'jzdWI':function(_0xcd6312,_0x1e5e61,_0x184dec){return _0xcd6312(_0x1e5e61,_0x184dec);},'syGsj':function(_0x194346,_0x4af2ee,_0x43c827){return _0x194346(_0x4af2ee,_0x43c827);}},_0x38b4fa=_0x1c319e||await getActiveFeatureId();if(!_0x38b4fa)throw new Error(_0x51f6b2(0x171));const _0x50b13d=await _0x2472d2['cSRQE'](getFeature,_0x38b4fa);if(_0x50b13d['latestReview']&&!_0x50b13d[_0x51f6b2(0xf5)]['submittedAt'])throw new Error('Cannot\x20add\x20scenario:\x20feature\x20review\x20has\x20an\x20active\x20review.\x20Please\x20finish\x20your\x20review\x20first:\x20'+_0x50b13d[_0x51f6b2(0x102)]);await _0x2472d2[_0x51f6b2(0xc1)](createChecklistItem,_0x38b4fa,_0x1704c6);const _0x3e95a6=await getFeature(_0x38b4fa);console['log'](_0x51f6b2(0x117)),_0x2472d2['syGsj'](displayFeature,_0x3e95a6,_0x3e95a6[_0x51f6b2(0x13b)]);}export async function featureEditScenario(_0x2bfa67,_0x350341){const _0x136199=_0x5d5956,_0x2e26de={'aHWAJ':_0x136199(0x119),'Cixjr':function(_0x15af54,_0x4526ad){return _0x15af54(_0x4526ad);},'NkZwQ':'Please\x20finish\x20your\x20review\x20first:','nBuyR':function(_0x5dbc8b,_0x2390fc){return _0x5dbc8b===_0x2390fc;},'yXwYF':'\x0a❌\x20No\x20scenarios\x20found\x20to\x20edit.','CbcTR':_0x136199(0xfd),'gpzko':function(_0x16ff05,_0x270202){return _0x16ff05+_0x270202;},'VmMeM':function(_0x9d386f,_0x46c62e){return _0x9d386f-_0x46c62e;},'WRrSn':function(_0x9b7e7d,_0x4e411a){return _0x9b7e7d>=_0x4e411a;},'csTGG':function(_0x17f02a,_0x4b24a7){return _0x17f02a<_0x4b24a7;},'sLwVw':function(_0x4cd70d,_0x464008){return _0x4cd70d(_0x464008);},'EpJEh':function(_0xae8544,_0x1592d3,_0x574bd9){return _0xae8544(_0x1592d3,_0x574bd9);}},_0x3ac923=_0x350341['id']||await getActiveFeatureId();!_0x3ac923&&(console['error'](_0x2e26de[_0x136199(0x15b)]),console[_0x136199(0x160)](_0x136199(0x12c)),process[_0x136199(0xf6)](0x1));const _0x29ce53=await _0x2e26de['Cixjr'](getFeature,_0x3ac923);_0x29ce53['latestReview']&&!_0x29ce53['latestReview'][_0x136199(0x113)]&&(console[_0x136199(0x160)]('\x0a❌\x20Cannot\x20edit\x20scenario:\x20feature\x20review\x20has\x20an\x20active\x20review.'),console['error'](_0x2e26de[_0x136199(0x1a6)]),console[_0x136199(0x160)]('\x20\x20'+_0x29ce53['dashboardUrl']),process[_0x136199(0xf6)](0x1));const _0x4ea700=_0x29ce53['checklistItems']||[];_0x2e26de[_0x136199(0x164)](_0x4ea700['length'],0x0)&&(console['error'](_0x2e26de[_0x136199(0x16b)]),process[_0x136199(0xf6)](0x1));if(_0x350341['scenario']===undefined){console['error'](_0x136199(0x101)),console['log'](_0x2e26de[_0x136199(0x15a)]);for(let _0x5ea496=0x0;_0x5ea496<_0x4ea700[_0x136199(0x185)];_0x5ea496++){console['log']('\x20\x20'+_0x2e26de[_0x136199(0xfa)](_0x5ea496,0x1)+'.\x20'+_0x4ea700[_0x5ea496]['description']);}process['exit'](0x1);}const _0x593a8c=_0x2e26de[_0x136199(0x125)](_0x350341[_0x136199(0x16f)],0x1);if(_0x593a8c<0x0||_0x2e26de[_0x136199(0x105)](_0x593a8c,_0x4ea700[_0x136199(0x185)])){console[_0x136199(0x160)](_0x136199(0x19a)+_0x350341[_0x136199(0x16f)]+'.\x20Feature\x20review\x20has\x20'+_0x4ea700[_0x136199(0x185)]+_0x136199(0x1a4)),console[_0x136199(0xd4)]('\x0aAvailable\x20scenarios:');for(let _0x1069cb=0x0;_0x2e26de['csTGG'](_0x1069cb,_0x4ea700['length']);_0x1069cb++){console[_0x136199(0xd4)]('\x20\x20'+_0x2e26de[_0x136199(0xfa)](_0x1069cb,0x1)+'.\x20'+_0x4ea700[_0x1069cb][_0x136199(0x14d)]);}process[_0x136199(0xf6)](0x1);}const _0x1130da=_0x4ea700[_0x593a8c];await updateChecklistItem(_0x3ac923,_0x1130da['id'],{'description':_0x2bfa67});const _0x4522b3=await _0x2e26de['sLwVw'](getFeature,_0x3ac923);console[_0x136199(0xd4)]('\x0a✅\x20Scenario\x20updated'),_0x2e26de[_0x136199(0x17e)](displayFeature,_0x4522b3,_0x4522b3[_0x136199(0x13b)]);}async function downloadFeedbackImage(_0x2f9eb1,_0x2d928f){const _0x15e434=_0x5d5956,_0x48eac0={'TTuyw':'feedback-images','SfufA':function(_0x4e9588,_0x4a1b25,_0x3e2f02){return _0x4e9588(_0x4a1b25,_0x3e2f02);},'OvHpV':function(_0x346fe9,_0x355e9b){return _0x346fe9(_0x355e9b);}};try{const _0x3028b2=join(getRangerDir(),_0x48eac0['TTuyw']);await mkdir(_0x3028b2,{'recursive':!![]});const _0xbabb13=_0x48eac0['SfufA'](join,_0x3028b2,_0x15e434(0x131)+_0x2d928f+_0x15e434(0x116)),_0x4330b9=await _0x48eac0['OvHpV'](fetch,_0x2f9eb1);if(!_0x4330b9['ok'])return null;const _0x4436bf=Buffer['from'](await _0x4330b9['arrayBuffer']());return await writeFile(_0xbabb13,_0x4436bf),_0xbabb13;}catch{return null;}}export async function featureGetReview(_0x53c2a4){const _0x43a207=_0x5d5956,_0x24cd06={'IVRqN':function(_0x515bcd){return _0x515bcd();},'iuwhg':'No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','tutNj':function(_0x20649b,_0x1c5c22){return _0x20649b(_0x1c5c22);},'EzeLW':function(_0x3138d0,_0x40f40e){return _0x3138d0===_0x40f40e;},'iCdZZ':_0x43a207(0xc7),'ShgdV':function(_0x209a7a,_0x48fed4){return _0x209a7a<_0x48fed4;},'QBuHX':function(_0x36ae8f,_0x4e82b4){return _0x36ae8f>_0x4e82b4;},'TtLzY':function(_0x316095,_0x289869,_0x4541ca){return _0x316095(_0x289869,_0x4541ca);},'lzYDe':function(_0x46ad82,_0x3edd80){return _0x46ad82+_0x3edd80;},'RTxYo':_0x43a207(0xdb),'LdNsD':function(_0x8ebb22,_0x5c525e){return _0x8ebb22+_0x5c525e;}},_0x1a1ff4=_0x53c2a4||await _0x24cd06[_0x43a207(0x127)](getActiveFeatureId);if(!_0x1a1ff4)throw new Error(_0x24cd06[_0x43a207(0x159)]);const _0xa55bb3=await _0x24cd06[_0x43a207(0x12a)](getFeature,_0x1a1ff4),{items:_0x43d673}=await getActionItems(_0x1a1ff4);console[_0x43a207(0xd4)](_0x43a207(0x153)+_0xa55bb3[_0x43a207(0xc2)]+'\x20('+_0xa55bb3['id']+')\x0a');if(_0x24cd06[_0x43a207(0x157)](_0x43d673[_0x43a207(0x185)],0x0)){console[_0x43a207(0xd4)](_0x24cd06['iCdZZ']);return;}for(let _0x2e16e3=0x0;_0x24cd06['ShgdV'](_0x2e16e3,_0x43d673['length']);_0x2e16e3++){const _0x180c23=_0x43d673[_0x2e16e3],_0xfda70d=_0x24cd06['QBuHX'](_0x180c23['version'],0x1)?_0x43a207(0x199)+_0x180c23['version']+')':'',_0x33a977=await _0x24cd06[_0x43a207(0xb4)](getItemFeedback,_0x1a1ff4,_0x180c23['id']);if(_0x33a977['unaddressedComments']['length']>0x0){console['log'](_0x43a207(0x10d)+_0x24cd06[_0x43a207(0xd3)](_0x2e16e3,0x1)+_0x43a207(0x12b)+_0x180c23['description']+'\x22'+_0xfda70d+'\x20—\x20'+_0x33a977['unaddressedComments'][_0x43a207(0x185)]+_0x43a207(0xfc));for(const _0x54d387 of _0x33a977[_0x43a207(0x17c)]){const _0x55e566=new Date(_0x54d387['createdAt'])[_0x43a207(0x132)](_0x43a207(0xc9),{'month':_0x24cd06['RTxYo'],'day':_0x43a207(0x13c)}),_0x4a8d98=_0x54d387[_0x43a207(0x19f)]||_0x54d387[_0x43a207(0x196)]||_0x43a207(0xe3);console['log'](_0x43a207(0x135)+_0x4a8d98+'\x20('+_0x55e566+'):\x20\x22'+_0x54d387[_0x43a207(0x1a7)]+'\x22');if(_0x54d387[_0x43a207(0x136)]){const _0x565090=await downloadFeedbackImage(_0x54d387['assetUrl'],_0x54d387['id']);_0x565090&&console[_0x43a207(0xd4)]('\x20\x20\x20\x20\x20📷\x20Screenshot:\x20'+_0x565090);}if(_0x54d387['domRef']){const _0x2ac355=_0x54d387[_0x43a207(0xc0)][_0x43a207(0xd5)]['split'](_0x43a207(0x18a))[_0x43a207(0x19b)]()?.[_0x43a207(0x14b)](':')[0x0]||'element',_0x8fdb5=_0x54d387['domRef'][_0x43a207(0xf2)]?'\x20\x22'+_0x54d387[_0x43a207(0xc0)][_0x43a207(0xf2)]['slice'](0x0,0x3c)+'\x22':'';console[_0x43a207(0xd4)]('\x20\x20\x20\x20\x20🎯\x20Element:\x20<'+_0x2ac355+'>'+_0x8fdb5),console[_0x43a207(0xd4)](_0x43a207(0xec)+_0x54d387['domRef']['selector']);}else{if(_0x54d387[_0x43a207(0x17f)]){const _0x4c657d=_0x54d387['spatial'][_0x43a207(0x197)];_0x24cd06[_0x43a207(0x157)](_0x54d387[_0x43a207(0x17f)][_0x43a207(0x112)],_0x43a207(0x174))&&_0x4c657d[_0x43a207(0x185)]>=0x2?console['log']('\x20\x20\x20\x20\x20📍\x20Annotation:\x20point\x20at\x20('+_0x4c657d[0x0][_0x43a207(0x184)](0x2)+',\x20'+_0x4c657d[0x1][_0x43a207(0x184)](0x2)+')'):console['log']('\x20\x20\x20\x20\x20📍\x20Annotation:\x20'+_0x54d387[_0x43a207(0x17f)][_0x43a207(0x112)]+_0x43a207(0x147)+_0x4c657d[_0x43a207(0xe7)](_0x4931fe=>_0x4931fe[_0x43a207(0x184)](0x2))[_0x43a207(0x14a)](',\x20')+']');}}}if(_0x33a977[_0x43a207(0x189)]){console['log'](_0x43a207(0x188));for(const _0x1f3f86 of _0x33a977[_0x43a207(0x189)][_0x43a207(0x14b)]('\x0a')){console[_0x43a207(0xd4)](_0x43a207(0xe5)+_0x1f3f86);}}}else console[_0x43a207(0xd4)]('Scenario\x20'+_0x24cd06['LdNsD'](_0x2e16e3,0x1)+':\x20\x22'+_0x180c23['description']+'\x22'+_0xfda70d+'\x20—\x20no\x20comments'),console[_0x43a207(0xd4)](_0x43a207(0xc5));console[_0x43a207(0xd4)]('');}}export async function featureDelete(_0x744bfd){const _0x5be361=_0x5d5956,_0x4364bb={'zZXvm':_0x5be361(0x171),'RprKc':function(_0x821403,_0x33b91d){return _0x821403(_0x33b91d);},'PKWtL':_0x5be361(0xb8)},_0x90ac8f=_0x744bfd||await getActiveFeatureId();if(!_0x90ac8f)throw new Error(_0x4364bb['zZXvm']);const _0x427f95=await _0x4364bb['RprKc'](getFeature,_0x90ac8f);await softDeleteFeature(_0x90ac8f),console[_0x5be361(0xd4)]('\x0a🗑️\x20\x20Deleted\x20feature\x20review:\x20'+_0x427f95[_0x5be361(0xc2)]+'\x20('+_0x90ac8f+')'),console[_0x5be361(0xd4)](_0x4364bb[_0x5be361(0xcd)]+_0x90ac8f);}export async function featureRestore(_0x14dbf5){const _0x3b6134=_0x5d5956,_0x3c35f9={'jNOeU':function(_0x429246,_0x15ee57){return _0x429246(_0x15ee57);}};await _0x3c35f9['jNOeU'](restoreFeature,_0x14dbf5);const _0x539fb4=await getFeature(_0x14dbf5);console['log']('\x0a✅\x20Restored\x20feature\x20review:\x20'+_0x539fb4['name']+'\x20('+_0x14dbf5+')'),displayFeature(_0x539fb4,_0x539fb4[_0x3b6134(0x13b)]);}
1
+ const _0x54b1c7=_0x46e0;function _0x46e0(_0x446fa6,_0x113ef8){_0x446fa6=_0x446fa6-0x1ba;const _0x58f0eb=_0x58f0();let _0x46e046=_0x58f0eb[_0x446fa6];return _0x46e046;}(function(_0x58b818,_0x530879){const _0x559dfb=_0x46e0,_0x7ac707=_0x58b818();while(!![]){try{const _0x315e0b=-parseInt(_0x559dfb(0x2a3))/0x1*(-parseInt(_0x559dfb(0x279))/0x2)+parseInt(_0x559dfb(0x26c))/0x3*(-parseInt(_0x559dfb(0x1c4))/0x4)+parseInt(_0x559dfb(0x1fa))/0x5+parseInt(_0x559dfb(0x1d5))/0x6+-parseInt(_0x559dfb(0x24f))/0x7*(parseInt(_0x559dfb(0x20b))/0x8)+parseInt(_0x559dfb(0x237))/0x9*(parseInt(_0x559dfb(0x2a0))/0xa)+parseInt(_0x559dfb(0x27a))/0xb*(parseInt(_0x559dfb(0x28e))/0xc);if(_0x315e0b===_0x530879)break;else _0x7ac707['push'](_0x7ac707['shift']());}catch(_0x2ab0ee){_0x7ac707['push'](_0x7ac707['shift']());}}}(_0x58f0,0x1ad69));import{readFile,writeFile,mkdir}from'fs/promises';import{join}from'path';import{existsSync}from'fs';import{execSync}from'child_process';import _0x1774d3 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=_0x54b1c7(0x20e),bold=_0x341439=>_0x54b1c7(0x1f7)+_0x341439+_0x54b1c7(0x26d);function getGitRepoUrl(){const _0x1deda4=_0x54b1c7,_0x40a807={'cngVj':function(_0x5f1cac,_0x51c834,_0xf43fa0){return _0x5f1cac(_0x51c834,_0xf43fa0);},'pVGcw':_0x1deda4(0x1d8),'bNKZl':'github.com/'};try{const _0x435f44=_0x40a807['cngVj'](execSync,'git\x20remote\x20get-url\x20origin',{'encoding':_0x1deda4(0x1dd),'stdio':[_0x1deda4(0x1d8),'pipe',_0x40a807['pVGcw']]})['trim']();return _0x435f44['replace'](/\.git$/,'')[_0x1deda4(0x1ca)](/^git@github\.com:/,_0x40a807[_0x1deda4(0x2a1)])['replace'](/^https?:\/\//,'');}catch{return undefined;}}function getGitBranch(){const _0x150574=_0x54b1c7,_0x1c7589={'pEmMT':function(_0x1fc7de,_0x533f15,_0x48733b){return _0x1fc7de(_0x533f15,_0x48733b);},'Zddie':'git\x20rev-parse\x20--abbrev-ref\x20HEAD','fAoVn':_0x150574(0x1dd),'DseuT':_0x150574(0x1d8)};try{return _0x1c7589[_0x150574(0x1d1)](execSync,_0x1c7589[_0x150574(0x1f5)],{'encoding':_0x1c7589[_0x150574(0x255)],'stdio':[_0x150574(0x1d8),_0x1c7589['DseuT'],_0x1c7589[_0x150574(0x1da)]]})['trim']();}catch{return undefined;}}export async function getActiveFeatureId(){const _0x1532c4=_0x54b1c7,_0x2c158c={'XzHdB':function(_0x1d283c,_0x3a0f41,_0x525242){return _0x1d283c(_0x3a0f41,_0x525242);},'Kjfoo':'utf-8'},_0x17405c=_0x2c158c[_0x1532c4(0x1c8)](join,getRangerDir(),ACTIVE_FEATURE_FILE);if(!existsSync(_0x17405c))return null;try{const _0x23ca93=await readFile(_0x17405c,_0x2c158c['Kjfoo']);return _0x23ca93[_0x1532c4(0x1ba)]()||null;}catch{return null;}}async function setActiveFeatureId(_0x34a785){const _0x29da8f=_0x54b1c7,_0x27a979={'DMfzy':function(_0x311e6e,_0x4df877){return _0x311e6e(_0x4df877);}},_0x491b2f=getRangerDir(),_0x48af11=join(_0x491b2f,ACTIVE_FEATURE_FILE);!_0x27a979[_0x29da8f(0x203)](existsSync,_0x491b2f)&&await mkdir(_0x491b2f,{'recursive':!![]}),await writeFile(_0x48af11,_0x34a785,_0x29da8f(0x1dd));}function getProgressDisplay(_0x1293f7){const _0x3e5c2e=_0x54b1c7,_0x57a092={'QUJFo':function(_0x3c2f4c,_0x2e65d8){return _0x3c2f4c+_0x2e65d8;},'ezQuj':function(_0x235c39,_0x1b38f1){return _0x235c39*_0x1b38f1;},'WdMBE':function(_0x5a05fe,_0x484ea0){return _0x5a05fe>_0x484ea0;}},_0x5e83a0=_0x1293f7[_0x3e5c2e(0x24d)]||0x0,_0x5e257a=_0x1293f7['verificationInProgressItems']||0x0,_0x226fde=_0x1293f7['blockedItems']||0x0,_0x19bd49=_0x1293f7['incompleteItems']||0x0,_0x19da3b=_0x1293f7[_0x3e5c2e(0x24e)]||0x0,_0x2240bc=_0x57a092['QUJFo'](_0x5e83a0+_0x5e257a+_0x226fde+_0x19bd49,_0x19da3b);if(_0x2240bc===0x0)return'-';const _0x48d4ff=0xa,_0x291199=Math['round'](_0x57a092[_0x3e5c2e(0x21a)](_0x5e83a0/_0x2240bc,_0x48d4ff)),_0x844705='█'['repeat'](_0x291199)+'░'[_0x3e5c2e(0x278)](_0x48d4ff-_0x291199),_0x1679d9=[];if(_0x226fde>0x0)_0x1679d9['push'](_0x226fde+'\x20blocked');if(_0x57a092[_0x3e5c2e(0x1c5)](_0x19bd49,0x0))_0x1679d9[_0x3e5c2e(0x1c0)](_0x19bd49+'\x20incomplete');if(_0x5e257a>0x0)_0x1679d9[_0x3e5c2e(0x1c0)](_0x5e257a+'\x20in\x20progress');const _0x16ee5a=_0x1679d9[_0x3e5c2e(0x27f)]>0x0?'\x20('+_0x1679d9[_0x3e5c2e(0x20a)](',\x20')+')':'';return _0x844705+'\x20'+_0x5e83a0+'/'+_0x2240bc+_0x3e5c2e(0x257)+_0x16ee5a;}function getCurrentSessionItems(_0x4ab341,_0x3c3703){const _0x18fff5=_0x54b1c7;if(!_0x4ab341['currentSessionId'])return _0x3c3703[_0x18fff5(0x216)](_0x357874=>!_0x357874['sessionId']);return _0x3c3703[_0x18fff5(0x216)](_0x4f2122=>_0x4f2122['sessionId']===_0x4ab341[_0x18fff5(0x29b)]||!_0x4f2122[_0x18fff5(0x25d)]);}function displayFeature(_0x5be00c,_0x174687){const _0x43fc00=_0x54b1c7,_0x19f72d={'MVohn':function(_0x54dd92,_0x4263e9){return _0x54dd92(_0x4263e9);},'OUacb':function(_0x573891,_0x180207){return _0x573891<_0x180207;},'OHTus':function(_0x555660,_0x1b282b){return _0x555660===_0x1b282b;},'XCbCB':'approved','TFAgh':'verified','FPbTl':function(_0x3f4d97,_0x369794){return _0x3f4d97===_0x369794;},'HPOqN':function(_0x8052a5,_0xcce4cf){return _0x8052a5===_0xcce4cf;},'jIZam':_0x43fc00(0x1ff),'pBazj':function(_0x39b876,_0x3c2882){return _0x39b876>_0x3c2882;},'KvrYZ':function(_0x2cde44,_0x5b772f){return _0x2cde44!==_0x5b772f;},'yCjpN':_0x43fc00(0x291),'HRkxX':_0x43fc00(0x275),'piiKT':function(_0x283c0a,_0x5e43e6){return _0x283c0a+_0x5e43e6;},'CqdIc':_0x43fc00(0x289),'ZNkHC':function(_0x388abe,_0x4ee832){return _0x388abe===_0x4ee832;},'tWAqJ':function(_0x355d12,_0x41904f){return _0x355d12===_0x41904f;}};console[_0x43fc00(0x205)]('\x0a'+_0x5be00c[_0x43fc00(0x284)]+'\x20('+_0x5be00c['dashboardUrl']+')');_0x5be00c['stats']&&console['log']('\x20\x20\x20Progress:\x20'+_0x19f72d[_0x43fc00(0x250)](getProgressDisplay,_0x5be00c['stats']));_0x5be00c['description']&&console[_0x43fc00(0x205)]('\x20\x20\x20Description:\x20'+_0x5be00c[_0x43fc00(0x21e)]);_0x5be00c['gitRepoUrl']&&console['log'](_0x43fc00(0x23b)+_0x5be00c[_0x43fc00(0x27e)]);_0x5be00c[_0x43fc00(0x1e6)]&&console[_0x43fc00(0x205)]('\x20\x20\x20Branch:\x20'+_0x5be00c[_0x43fc00(0x1e6)]);console['log']('\x20\x20\x20Created:\x20'+new Date(_0x5be00c[_0x43fc00(0x1cd)])['toLocaleString']());_0x5be00c['completedAt']&&console[_0x43fc00(0x205)](_0x43fc00(0x1e3)+new Date(_0x5be00c[_0x43fc00(0x21b)])['toLocaleString']());if(_0x174687&&_0x174687[_0x43fc00(0x27f)]>0x0){console['log'](_0x43fc00(0x294));for(let _0x260685=0x0;_0x19f72d[_0x43fc00(0x229)](_0x260685,_0x174687[_0x43fc00(0x27f)]);_0x260685++){const _0x2ac6d7=_0x174687[_0x260685];let _0x5a4868;if(_0x19f72d['OHTus'](_0x2ac6d7[_0x43fc00(0x22c)],_0x43fc00(0x291))&&_0x19f72d[_0x43fc00(0x223)](_0x2ac6d7['terminalReason'],_0x19f72d['XCbCB']))_0x5a4868='✅';else{if(_0x19f72d[_0x43fc00(0x223)](_0x2ac6d7[_0x43fc00(0x22c)],_0x19f72d[_0x43fc00(0x23e)]))_0x5a4868='🟢';else{if(_0x2ac6d7[_0x43fc00(0x22c)]===_0x43fc00(0x289))_0x5a4868='🟠';else{if(_0x19f72d['FPbTl'](_0x2ac6d7['status'],_0x43fc00(0x1c1)))_0x5a4868='🛑';else{if(_0x19f72d[_0x43fc00(0x223)](_0x2ac6d7['status'],'closed'))_0x5a4868='⛔';else _0x19f72d[_0x43fc00(0x217)](_0x2ac6d7['status'],_0x19f72d[_0x43fc00(0x1d0)])?_0x5a4868='⏳':_0x5a4868='⬜';}}}}const _0x39a884=_0x19f72d[_0x43fc00(0x2a4)](_0x2ac6d7['version'],0x1)?_0x43fc00(0x274)+_0x2ac6d7[_0x43fc00(0x213)]+')':'',_0x1fc3bd=_0x2ac6d7['version']>0x1&&_0x2ac6d7[_0x43fc00(0x201)]&&_0x19f72d[_0x43fc00(0x228)](_0x2ac6d7['status'],_0x19f72d['yCjpN'])&&_0x2ac6d7['status']!=='verified'?_0x19f72d['HRkxX']:'';console['log'](_0x43fc00(0x204)+_0x19f72d[_0x43fc00(0x1f0)](_0x260685,0x1)+'.\x20'+_0x5a4868+'\x20'+_0x2ac6d7[_0x43fc00(0x21e)]+_0x39a884+_0x1fc3bd);_0x2ac6d7['status']===_0x43fc00(0x1c1)&&_0x2ac6d7['blockedReason']&&console['log']('\x20\x20\x20\x20\x20\x20Blocked:\x20'+_0x2ac6d7['blockedReason']);_0x2ac6d7[_0x43fc00(0x22c)]===_0x19f72d[_0x43fc00(0x219)]&&_0x2ac6d7['incompleteReason']&&console[_0x43fc00(0x205)](_0x43fc00(0x239)+_0x2ac6d7['incompleteReason']);if(_0x2ac6d7[_0x43fc00(0x22c)]===_0x19f72d[_0x43fc00(0x259)]&&_0x19f72d[_0x43fc00(0x1e8)](_0x2ac6d7['terminalReason'],_0x19f72d['XCbCB']))console[_0x43fc00(0x205)]('\x20\x20\x20\x20\x20\x20Approved');else _0x19f72d['tWAqJ'](_0x2ac6d7[_0x43fc00(0x22c)],'closed')&&_0x2ac6d7[_0x43fc00(0x242)]&&console[_0x43fc00(0x205)](_0x43fc00(0x28a)+_0x2ac6d7[_0x43fc00(0x242)]);}}}export async function featureCreate(_0x5a4547,_0x152875){const _0x3e3da8=_0x54b1c7,_0x1b2b81={'GbzLz':function(_0x30a87f,_0x147f28){return _0x30a87f===_0x147f28;},'fpLpI':function(_0x24cc7e,_0x38d596){return _0x24cc7e===_0x38d596;},'yNwIV':function(_0x3895d7,_0x59ad0c){return _0x3895d7(_0x59ad0c);},'JtuVu':function(_0x5a3ace){return _0x5a3ace();},'pRZrm':'\x0aCreating\x20feature\x20review...','GIHIX':function(_0x482712,_0xe6fa10,_0xbbd6c3){return _0x482712(_0xe6fa10,_0xbbd6c3);},'Eyboq':function(_0x5418fa,_0x18d59a,_0x24bf0a){return _0x5418fa(_0x18d59a,_0x24bf0a);}},{envNames:_0x4870dd}=await getEnvNames();if(_0x1b2b81[_0x3e3da8(0x287)](_0x4870dd[_0x3e3da8(0x27f)],0x0)&&!process['env'][_0x3e3da8(0x231)]){let _0x25fe1f=0x0;try{_0x25fe1f=(await listCloudProfiles())['length'];}catch{_0x25fe1f=0x1;}_0x1b2b81[_0x3e3da8(0x28c)](_0x25fe1f,0x0)&&console['warn']('\x0a'+_0x1b2b81[_0x3e3da8(0x22d)](formatProfileRequiredMessage,_0x28bda8=>bold(_0x28bda8)));}const _0x17ddad=_0x152875['scenarios']?_0x152875['scenarios'][_0x3e3da8(0x1c2)](_0x291263=>_0x291263['trim']()):[],_0x23b8e2=_0x1b2b81[_0x3e3da8(0x234)](getGitRepoUrl),_0x51f4d8=_0x1b2b81['JtuVu'](getGitBranch);console['log'](_0x1b2b81['pRZrm']);const _0x645511=await _0x1b2b81['yNwIV'](createFeature,{'name':_0x5a4547,'description':_0x152875['description'],'checklist':_0x17ddad,'gitRepoUrl':_0x23b8e2,'gitBranch':_0x51f4d8});await setActiveFeatureId(_0x645511['id']),await tryStartCurrentSession(_0x645511['id']);const _0x397dd7=process['env']['CLAUDE_SESSION_ID'];_0x397dd7&&_0x1b2b81['GIHIX'](registerSession,_0x397dd7,_0x645511['id']),console['log'](_0x3e3da8(0x215)+_0x645511['id']),_0x1b2b81['Eyboq'](displayFeature,_0x645511,_0x645511[_0x3e3da8(0x277)]),console[_0x3e3da8(0x205)](_0x3e3da8(0x22e));}export async function featureList(_0x543749){const _0x3d61ee=_0x54b1c7,_0x5da34b={'GxKzT':function(_0xbced14){return _0xbced14();},'gueNw':'\x0aNo\x20feature\x20reviews\x20found.','MJeyT':function(_0xfdf2a7,_0x3bbdf3){return _0xfdf2a7(_0x3bbdf3);},'kbpaD':function(_0x5a2241,_0x5c0a3d){return _0x5a2241<_0x5c0a3d;},'aPcOj':_0x3d61ee(0x1db)},_0x4d7ce9={'limit':_0x543749['limit']??0xa,'offset':_0x543749[_0x3d61ee(0x267)]??0x0,'includeDeleted':_0x543749['includeDeleted']};_0x543749['currentBranch']&&(_0x4d7ce9[_0x3d61ee(0x27e)]=getGitRepoUrl(),_0x4d7ce9[_0x3d61ee(0x1e6)]=_0x5da34b[_0x3d61ee(0x1fe)](getGitBranch));const _0x1ccf77=await listFeatures(_0x4d7ce9);if(_0x1ccf77['items']['length']===0x0){console['log'](_0x5da34b['gueNw']);return;}const _0x35cd5e=_0x1ccf77['totalCount']>_0x1ccf77[_0x3d61ee(0x23d)][_0x3d61ee(0x27f)]?'Showing\x20'+_0x1ccf77['items'][_0x3d61ee(0x27f)]+_0x3d61ee(0x1e4)+_0x1ccf77['totalCount']:_0x1ccf77[_0x3d61ee(0x1dc)]+'\x20feature\x20review(s)\x20found';console[_0x3d61ee(0x205)]('\x0a'+_0x35cd5e+':\x0a');for(const _0x385a06 of _0x1ccf77['items']){const _0x43dbfd='0|2|5|3|1|4'['split']('|');let _0x359590=0x0;while(!![]){switch(_0x43dbfd[_0x359590++]){case'0':console['log'](''+_0x385a06[_0x3d61ee(0x284)]);continue;case'1':console[_0x3d61ee(0x205)](_0x3d61ee(0x260)+new Date(_0x385a06[_0x3d61ee(0x1cd)])['toLocaleDateString']());continue;case'2':console[_0x3d61ee(0x205)]('\x20\x20\x20ID:\x20'+_0x385a06['id']);continue;case'3':_0x385a06[_0x3d61ee(0x1e6)]&&console['log'](_0x3d61ee(0x25c)+_0x385a06['gitBranch']);continue;case'4':console['log']('');continue;case'5':_0x385a06['stats']&&console[_0x3d61ee(0x205)](_0x3d61ee(0x21c)+_0x5da34b['MJeyT'](getProgressDisplay,_0x385a06[_0x3d61ee(0x276)]));continue;}break;}}const _0x4c1bdf=_0x4d7ce9[_0x3d61ee(0x230)]??0xa,_0x111312=(_0x4d7ce9[_0x3d61ee(0x267)]??0x0)+_0x1ccf77[_0x3d61ee(0x23d)]['length'];if(_0x5da34b[_0x3d61ee(0x1cf)](_0x111312,_0x1ccf77[_0x3d61ee(0x1dc)])){const _0x3967ec=_0x4c1bdf!==0xa?'\x20--limit\x20'+_0x4c1bdf:'',_0x20c4c0=_0x543749['currentBranch']?_0x5da34b['aPcOj']:'',_0x2e06b9=_0x543749['includeDeleted']?'\x20--include-deleted':'';console[_0x3d61ee(0x205)]('Next\x20page:\x20ranger\x20list\x20--offset\x20'+_0x111312+_0x3967ec+_0x20c4c0+_0x2e06b9);}}export async function featureShow(_0x11c427){const _0x516b3b=_0x54b1c7,_0x2ec063={'hkOcf':function(_0x3d9340,_0x3b343,_0x57f4a7){return _0x3d9340(_0x3b343,_0x57f4a7);}},_0x25b593=_0x11c427||await getActiveFeatureId();if(!_0x25b593)throw new Error(_0x516b3b(0x1d9));const _0x1d4da6=await getFeature(_0x25b593);_0x2ec063[_0x516b3b(0x1f6)](displayFeature,_0x1d4da6,_0x1d4da6['checklistItems']);}export async function featureResume(_0x32d37b){const _0x36d520=_0x54b1c7,_0x7e38d8={'yyAKL':function(_0x54d598,_0x5c5eec){return _0x54d598(_0x5c5eec);},'YikJi':function(_0x4401f1,_0x43ccdc){return _0x4401f1(_0x43ccdc);},'gfVXh':function(_0x3e1019,_0xaeae7d){return _0x3e1019!==_0xaeae7d;},'jehSF':'any','KjlZx':function(_0x2394c4,_0x4008db){return _0x2394c4||_0x4008db;},'tahoE':function(_0x9c28d6,_0x1608ae){return _0x9c28d6(_0x1608ae);},'tRJhV':function(_0x2f314c,_0x4d87e8){return _0x2f314c===_0x4d87e8;},'EmPlw':'Please\x20specify\x20the\x20feature\x20review\x20ID:\x20ranger\x20resume\x20<id>','Zdgmc':'selected','LzDbS':function(_0x44aed4,_0x25134a,_0x2ede58){return _0x44aed4(_0x25134a,_0x2ede58);}};if(_0x32d37b){const _0x5ed8d2=await _0x7e38d8['yyAKL'](getFeature,_0x32d37b);await _0x7e38d8['YikJi'](setActiveFeatureId,_0x5ed8d2['id']);const _0x86ddc8=getGitBranch();_0x86ddc8&&_0x7e38d8[_0x36d520(0x283)](_0x86ddc8,_0x5ed8d2[_0x36d520(0x1e6)])&&(await updateFeature(_0x5ed8d2['id'],{'gitBranch':_0x86ddc8}),console[_0x36d520(0x205)](_0x36d520(0x271)+_0x86ddc8));console['log']('\x0a✅\x20Resumed\x20feature\x20review:\x20'+_0x5ed8d2['name']+'\x20('+_0x5ed8d2['id']+')'),await tryStartCurrentSession(_0x5ed8d2['id']);const _0x3b92c3=process[_0x36d520(0x2a6)][_0x36d520(0x20c)];_0x3b92c3&&registerSession(_0x3b92c3,_0x5ed8d2['id']);displayFeature(_0x5ed8d2,_0x5ed8d2['checklistItems']),await _0x7e38d8[_0x36d520(0x282)](printFeedbackNudge,_0x5ed8d2['id']);return;}const _0x3624b0=getGitRepoUrl(),_0xa3e7e0=getGitBranch();if(!_0x3624b0&&!_0xa3e7e0)throw new Error('Not\x20in\x20a\x20git\x20repository.');console['log']('\x0aSearching\x20for\x20feature\x20reviews\x20matching:\x20'+(_0x3624b0||_0x7e38d8[_0x36d520(0x2a2)])+'\x20/\x20'+_0x7e38d8[_0x36d520(0x25a)](_0xa3e7e0,'any')+_0x36d520(0x225));const _0x1dfccf=await _0x7e38d8['tahoE'](listFeatures,{'gitRepoUrl':_0x3624b0,'gitBranch':_0xa3e7e0}),_0x565c33=_0x1dfccf[_0x36d520(0x23d)][_0x36d520(0x216)](_0x4655ce=>_0x4655ce['status']?_0x4655ce['status']!==_0x36d520(0x27d):!_0x4655ce[_0x36d520(0x21b)]);if(_0x7e38d8[_0x36d520(0x21d)](_0x565c33[_0x36d520(0x27f)],0x0)){console[_0x36d520(0x205)](_0x36d520(0x252)),console[_0x36d520(0x205)]('Run:\x20ranger\x20create\x20\x22<name>\x22\x20to\x20create\x20a\x20new\x20feature\x20review');return;}let _0x3ec696;if(_0x7e38d8['tRJhV'](_0x565c33[_0x36d520(0x27f)],0x1))_0x3ec696=_0x565c33[0x0];else{const _0x9f8932=process[_0x36d520(0x200)][_0x36d520(0x1f2)]&&process[_0x36d520(0x268)]['isTTY'];if(!_0x9f8932){console['log']('\x0aNon-interactive\x20mode\x20detected.\x20Multiple\x20feature\x20reviews\x20found:');for(const _0x94b9bf of _0x565c33){console['log']('\x20\x20'+_0x94b9bf['name']),console[_0x36d520(0x205)](_0x36d520(0x1f9)+_0x94b9bf['id']),_0x94b9bf['stats']&&console['log'](_0x36d520(0x1ee)+getProgressDisplay(_0x94b9bf[_0x36d520(0x276)])),_0x94b9bf['gitBranch']&&console['log'](_0x36d520(0x26a)+_0x94b9bf['gitBranch']);}throw new Error(_0x7e38d8[_0x36d520(0x245)]);}const {selected:_0x210425}=await _0x1774d3[_0x36d520(0x1fd)]([{'type':'list','name':_0x7e38d8['Zdgmc'],'message':_0x36d520(0x1cb),'choices':_0x565c33[_0x36d520(0x1c2)](_0x3d7bc5=>({'name':_0x3d7bc5['name']+'\x20('+_0x3d7bc5['id']+')','value':_0x3d7bc5['id']}))}]);_0x3ec696=_0x565c33[_0x36d520(0x1fc)](_0x48d7a8=>_0x48d7a8['id']===_0x210425);}await setActiveFeatureId(_0x3ec696['id']);_0xa3e7e0&&_0xa3e7e0!==_0x3ec696['gitBranch']&&(await updateFeature(_0x3ec696['id'],{'gitBranch':_0xa3e7e0}),console[_0x36d520(0x205)]('\x20\x20\x20Updated\x20branch\x20to:\x20'+_0xa3e7e0));console['log']('\x0a✅\x20Resumed\x20feature\x20review:\x20'+_0x3ec696[_0x36d520(0x284)]+'\x20('+_0x3ec696['id']+')'),await tryStartCurrentSession(_0x3ec696['id']);const _0xb2ad30=await getFeature(_0x3ec696['id']),_0x450104=process[_0x36d520(0x2a6)]['CLAUDE_SESSION_ID'];_0x450104&&registerSession(_0x450104,_0xb2ad30['id']),_0x7e38d8[_0x36d520(0x240)](displayFeature,_0xb2ad30,_0xb2ad30[_0x36d520(0x277)]),await printFeedbackNudge(_0xb2ad30['id']);}async function printFeedbackNudge(_0x61a1d3){const _0x15c075=_0x54b1c7,_0x32a24b={'cUvMc':function(_0x5f52f3,_0x54df68){return _0x5f52f3(_0x54df68);},'idjas':function(_0x415be8,_0x143d5b,_0x10b7f6){return _0x415be8(_0x143d5b,_0x10b7f6);},'LZWru':'\x20\x20\x20Run\x20`ranger\x20get-review`\x20to\x20see\x20what\x20needs\x20to\x20be\x20fixed.'};try{const {items:_0x220f75}=await _0x32a24b['cUvMc'](getActionItems,_0x61a1d3);let _0x156d03=0x0,_0x25f222=0x0;for(const _0x18a039 of _0x220f75){const _0x25f619=await _0x32a24b['idjas'](getItemFeedback,_0x61a1d3,_0x18a039['id']);_0x25f619['unaddressedComments'][_0x15c075(0x27f)]>0x0&&(_0x156d03+=_0x25f619[_0x15c075(0x214)][_0x15c075(0x27f)],_0x25f222++);}_0x156d03>0x0&&(console['log']('\x0a⚠️\x20\x20'+_0x156d03+'\x20unaddressed\x20reviewer\x20comment(s)\x20across\x20'+_0x25f222+'\x20scenario(s).'),console['log'](_0x32a24b[_0x15c075(0x1d3)]));}catch{}}async function tryStartCurrentSession(_0x2ba891){const _0x410514=_0x54b1c7,_0x4f41a9={'phODp':function(_0xcad2fa,_0x30ca1b){return _0xcad2fa(_0x30ca1b);},'hOuoK':function(_0x28c677,_0x334372,_0xbca129){return _0x28c677(_0x334372,_0xbca129);}};try{const {sessions:_0x150fa6}=await _0x4f41a9['phODp'](listFeatureSessions,_0x2ba891),_0x22c54d=_0x150fa6['find'](_0xaee18c=>_0xaee18c['status']==='ready');_0x22c54d&&(await _0x4f41a9[_0x410514(0x1bb)](startSession,_0x2ba891,_0x22c54d['id']),console['log']('\x20\x20\x20▶️\x20Started\x20session\x20'+_0x22c54d['iteration']));}catch{}}export async function featureReport(_0x5c4037,_0x38109e){const _0x51d76f=_0x54b1c7,_0x2c41d5={'dsdUY':'No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.','SzSZs':_0x51d76f(0x1f1),'aVWKJ':function(_0x5f3a84,_0x265bfc,_0x4a6db9){return _0x5f3a84(_0x265bfc,_0x4a6db9);},'yPNku':function(_0x226d8c,_0x3118be,_0x106b96,_0x5f028b){return _0x226d8c(_0x3118be,_0x106b96,_0x5f028b);},'QiaqG':function(_0x398bdb){return _0x398bdb();},'AHYVM':_0x51d76f(0x202),'WAsfG':function(_0x578a43,_0x492207){return _0x578a43(_0x492207);},'dhdFM':'utf-8'},_0x108e8c=_0x5c4037||await getActiveFeatureId();if(!_0x108e8c)throw new Error(_0x2c41d5['dsdUY']);console[_0x51d76f(0x205)](_0x2c41d5[_0x51d76f(0x249)]);const _0x280a00=await _0x2c41d5[_0x51d76f(0x1bc)](getFeatureReportMarkdown,_0x108e8c,{'style':_0x38109e['style']}),_0x15a70d=_0x38109e[_0x51d76f(0x281)]||_0x2c41d5[_0x51d76f(0x266)](join,_0x2c41d5[_0x51d76f(0x273)](getRangerDir),_0x2c41d5[_0x51d76f(0x23f)],_0x108e8c+_0x51d76f(0x232)),_0x357fc3=join(_0x15a70d,'..');!_0x2c41d5['WAsfG'](existsSync,_0x357fc3)&&await _0x2c41d5[_0x51d76f(0x1bc)](mkdir,_0x357fc3,{'recursive':!![]}),await writeFile(_0x15a70d,_0x280a00,_0x2c41d5['dhdFM']),console['log'](_0x51d76f(0x280)+_0x15a70d);}function getScenarioResult(_0x296208){const _0x2c3850=_0x54b1c7,_0x3e8796={'DVhVn':'closed','ToCAZ':_0x2c3850(0x1ff),'rYzuW':_0x2c3850(0x1f3)};if(_0x296208[_0x2c3850(0x22c)]===_0x2c3850(0x291))return _0x296208['terminalReason']??_0x3e8796[_0x2c3850(0x258)];if(_0x296208[_0x2c3850(0x22c)]===_0x3e8796['ToCAZ'])return _0x3e8796['rYzuW'];return _0x296208['status'];}function _0x58f0(){const _0x810280=['.md','stepName','JtuVu','lcQHH','storage','279eQMqVC','dWPoW','\x20\x20\x20\x20\x20\x20Incomplete:\x20','incompleteReason','\x20\x20\x20Repository:\x20','timing','items','TFAgh','AHYVM','LzDbS','\x0a✅\x20Session\x20','canceledReason','Current\x20session\x20not\x20found.','VhnMT','EmPlw','XglWY','latestReview','shoSk','SzSZs','split','BohlH','lRDgT','verifiedItems','pendingItems','263284DGuFzX','MVohn','No\x20scenarios\x20found.','\x0aNo\x20matching\x20active\x20feature\x20reviews\x20found.','Cannot\x20add\x20scenario:\x20feature\x20review\x20has\x20an\x20active\x20review.\x20Please\x20finish\x20your\x20review\x20first:\x20','No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.','fAoVn','selector','\x20verified','DVhVn','yCjpN','KjlZx','en-US','\x20\x20\x20Branch:\x20','sessionId','aUngn','short','\x20\x20\x20Created:\x20','RuqPp','after','has','\x0a❌\x20No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.','Scenario\x20','yPNku','offset','stdout','afKSQ','\x20\x20\x20\x20\x20Branch:\x20','dIbvl','225171DLdxHA','\x1b[0m','\x20>\x20','assets','get','\x20\x20\x20Updated\x20branch\x20to:\x20','.png','QiaqG','\x20(v','\x20[has\x20reviewer\x20feedback]','stats','checklistItems','repeat','1762PFvMvo','55egczQQ','\x20\x20\x20\x20','MmnbT','verified','gitRepoUrl','length','\x0a✅\x20Report\x20generated:\x20','output','YikJi','gfVXh','name','UodqE','\x20\x20\x20\x20\x20📍\x20Annotation:\x20','GbzLz','\x0a❌\x20Invalid\x20scenario\x20index:\x20','incomplete','\x20\x20\x20\x20\x20\x20Cancelled:\x20','No\x20sessions\x20found.','fpLpI','submittedAt','54204PkVsxW','\x0a❌\x20No\x20scenarios\x20found\x20to\x20edit.','dashboardUrl','closed','screenshot','lptyN','\x0a\x20\x20\x20Scenarios:','ObFsE','\x20concluded.','\x0a🗑️\x20\x20Deleted\x20feature\x20review:\x20','element','all','type','currentSessionId','GGyjD','\x20\x20\x20\x20\x20📍\x20Annotation:\x20point\x20at\x20(','\x0a✅\x20Scenario\x20updated','authorName','1370JxUgzO','bNKZl','jehSF','110gnyDKm','pBazj','AFmYv','env','trim','hOuoK','aVWKJ','BgyGQ','domRef','stringify','push','blocked','map','\x20unaddressed\x20comment(s)','4mVUfAZ','WdMBE','.\x20Feature\x20review\x20has\x20','write','XzHdB','toFixed','replace','Multiple\x20feature\x20reviews\x20found.\x20Select\x20one:','\x0a📁\x20Sessions\x20for\x20feature\x20review:\x20','createdAt','yXVKi','kbpaD','jIZam','pEmMT','No\x20active\x20session\x20for\x20this\x20feature\x20review.','LZWru','\x20\x20\x20\x20\x20📷\x20Screenshot:\x20','1151286QPpdwr','Unknown','error','pipe','No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','DseuT','\x20--current-branch','totalCount','utf-8','isInteger','SwuGI','hYciQ','jKuki',':\x20\x22','\x20\x20\x20Completed:\x20','\x20of\x20','pop','gitBranch','KwCyM','ZNkHC','Screenshot\x20','\x20\x20💬\x20','\x20\x20\x20Status:\x20','iteration','\x20\x20✅\x20No\x20feedback\x20to\x20address','\x20\x20\x20\x20\x20Progress:\x20','3|4|2|0|1|5','piiKT','\x0aGenerating\x20report...','isTTY','in_progress','textContent','Zddie','hkOcf','\x1b[1m','QOhEN','\x20\x20\x20\x20\x20ID:\x20','99055DFRZxi','\x0aAvailable\x20scenarios:','find','prompt','GxKzT','verification_in_progress','stdin','parentItemId','reports','DMfzy','\x20\x20\x20','log','toLocaleString','content','exit','screenshotUrls','join','32HLZBRB','CLAUDE_SESSION_ID','blockedReason','active-feature.txt','mKGMy','feFGH','\x20\x20\x20\x20\x20📋\x20Selector:\x20','\x20scenarios.','version','unaddressedComments','\x0a✅\x20Feature\x20review\x20created:\x20','filter','HPOqN','browserSessionId','CqdIc','ezQuj','completedAt','\x20\x20\x20Progress:\x20','tRJhV','description','\x20\x20\x20The\x20feature\x20review\x20is\x20now\x20ready\x20for\x20human\x20review\x20on\x20the\x20Ranger\x20dashboard.','from','feedback-images','GbuUR','OHTus','SHdnE','...','scenario','authorEmail','KvrYZ','OUacb','Step\x20','MIoqI','status','yNwIV','\x0a➡️\x20\x20Set\x20as\x20active\x20feature\x20review','uQAmz','limit','RANGER_TEST_USERNAME'];_0x58f0=function(){return _0x810280;};return _0x58f0();}function getScenarioRationale(_0x4ac000,_0x4e1bd4){const _0x1e5d41=_0x54b1c7,_0x394f29=_0x1e5d41(0x1ef)['split']('|');let _0xe3488e=0x0;while(!![]){switch(_0x394f29[_0xe3488e++]){case'0':if(_0x4ac000[_0x1e5d41(0x242)])return _0x4ac000['canceledReason'];continue;case'1':if(_0x4ac000['notes'])return _0x4ac000['notes'];continue;case'2':if(_0x4ac000['incompleteReason'])return _0x4ac000[_0x1e5d41(0x23a)];continue;case'3':if(_0x4e1bd4)return _0x4e1bd4;continue;case'4':if(_0x4ac000['blockedReason'])return _0x4ac000[_0x1e5d41(0x20d)];continue;case'5':return null;}break;}}export async function featureReportPrDescription(_0xfdd6b4,_0x4ff543){const _0x1d4b7f=_0x54b1c7,_0x308ed9={'BgyGQ':function(_0x529f0d,_0x2d0e07,_0x2e46f6){return _0x529f0d(_0x2d0e07,_0x2e46f6);},'qLpRn':function(_0x4852e2,_0x40ec64){return _0x4852e2===_0x40ec64;},'fDMRj':_0x1d4b7f(0x1fb),'RyyWX':'\x0a❌\x20All\x20scenarios\x20were\x20excluded.'},_0x14f5b1=_0xfdd6b4||await getActiveFeatureId();if(!_0x14f5b1)throw new Error('No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.');const _0x2b4a60=await getFeature(_0x14f5b1),_0x2fa0ce=_0x2b4a60[_0x1d4b7f(0x277)]||[],_0x4a6b8d=_0x308ed9[_0x1d4b7f(0x1bd)](getCurrentSessionItems,_0x2b4a60,_0x2fa0ce);_0x308ed9['qLpRn'](_0x4a6b8d[_0x1d4b7f(0x27f)],0x0)&&(console[_0x1d4b7f(0x1d7)]('\x0a❌\x20No\x20scenarios\x20found\x20to\x20include.'),process[_0x1d4b7f(0x208)](0x1));const _0x434e7d=_0x4ff543['excludeScenarios']??[],_0x428528=_0x434e7d[_0x1d4b7f(0x216)](_0x26b7c2=>!Number[_0x1d4b7f(0x1de)](_0x26b7c2)||_0x26b7c2<0x1||_0x26b7c2>_0x4a6b8d[_0x1d4b7f(0x27f)]);if(_0x428528['length']>0x0){console['error']('\x0a❌\x20Invalid\x20scenario\x20number(s):\x20'+_0x428528['join'](',\x20')),console['log'](_0x308ed9['fDMRj']);for(let _0x32d407=0x0;_0x32d407<_0x4a6b8d[_0x1d4b7f(0x27f)];_0x32d407++){console[_0x1d4b7f(0x205)]('\x20\x20'+(_0x32d407+0x1)+'.\x20'+_0x4a6b8d[_0x32d407]['description']);}process[_0x1d4b7f(0x208)](0x1);}const _0x5bee8d=new Set(_0x434e7d[_0x1d4b7f(0x1c2)](_0x5d3f21=>_0x5d3f21-0x1)),_0x60a83e=_0x4a6b8d[_0x1d4b7f(0x216)]((_0xed519d,_0x309e31)=>!_0x5bee8d[_0x1d4b7f(0x263)](_0x309e31));_0x60a83e[_0x1d4b7f(0x27f)]===0x0&&(console[_0x1d4b7f(0x1d7)](_0x308ed9['RyyWX']),process['exit'](0x1));if(_0x4ff543['json'])await outputJsonReport(_0x14f5b1,_0x2b4a60,_0x60a83e);else{const _0x44d5c5=await getFeatureReportMarkdown(_0x14f5b1,{'itemIds':_0x60a83e[_0x1d4b7f(0x1c2)](_0x1dce9f=>_0x1dce9f['id'])});process[_0x1d4b7f(0x268)]['write'](_0x44d5c5['trimEnd']()+'\x0a');}}async function outputJsonReport(_0x34c8b5,_0x1b8b33,_0x5d3fd7){const _0x2fd158=_0x54b1c7,_0x8e98b0={'VhnMT':function(_0x5aea8a,_0x21d558){return _0x5aea8a>_0x21d558;},'yXVKi':function(_0x58d73b,_0x42f862){return _0x58d73b(_0x42f862);},'QOhEN':function(_0x2965c5,_0x1b626c,_0x230761){return _0x2965c5(_0x1b626c,_0x230761);},'feFGH':function(_0x1c52d1,_0x540e7f){return _0x1c52d1+_0x540e7f;}},_0x3ab6d1=getApiBaseUrl(),_0x3c739f=await getFeatureReport(_0x34c8b5),_0x1afc19=new Map(_0x3c739f[_0x2fd158(0x277)][_0x2fd158(0x1c2)](_0x4527d0=>[_0x4527d0['id'],_0x4527d0])),_0x3960ec=await Promise[_0x2fd158(0x299)](_0x5d3fd7['map'](async _0x4832f2=>{const _0x25bba1=_0x2fd158,_0x4fff7a=_0x1afc19[_0x25bba1(0x270)](_0x4832f2['id']),_0x60b4f1=_0x4fff7a?.['linkedSession']??null;let _0x2baf31=[];if(_0x4832f2['browserSessionId'])try{const {steps:_0x533673}=await getBrowserSessionSteps(_0x4832f2['browserSessionId']);_0x8e98b0[_0x25bba1(0x244)](_0x533673[_0x25bba1(0x27f)],0x0)&&(_0x2baf31=_0x533673['map'](_0x31ab07=>{const _0x3288d2=_0x25bba1,_0x1f2b4c=_0x31ab07[_0x3288d2(0x26f)]['find'](_0x4dc190=>_0x4dc190['assetType']==='screenshot'&&_0x4dc190[_0x3288d2(0x23c)]===_0x3288d2(0x262))??_0x31ab07[_0x3288d2(0x26f)]['find'](_0x5edafd=>_0x5edafd['assetType']===_0x3288d2(0x292));let _0x1ca2f6=null,_0x5f18f3=null;if(_0x1f2b4c){const _0x5792ff=_0x1f2b4c[_0x3288d2(0x236)]['location'][_0x3288d2(0x24a)]('/')[_0x3288d2(0x1e5)]();_0x1ca2f6=_0x3ab6d1+'/api/v1/mcp/browser-sessions/'+_0x4832f2[_0x3288d2(0x218)]+'/artifacts/'+_0x5792ff,_0x5792ff&&(_0x5f18f3=_0x5792ff[_0x3288d2(0x1ca)](/\.\w+$/,'')['replace'](/^(key_)?\d+_/,'')['replace'](/[-_]/g,'\x20'));}return{'description':_0x5f18f3||_0x31ab07[_0x3288d2(0x21e)]||_0x31ab07[_0x3288d2(0x233)]||_0x3288d2(0x22a)+_0x31ab07['position'],'screenshot':_0x1ca2f6,'is_key_step':_0x31ab07['isKeyStep']};}));}catch{}return _0x2baf31[_0x25bba1(0x27f)]===0x0&&_0x60b4f1?.['screenshotUrls']&&(_0x2baf31=_0x60b4f1[_0x25bba1(0x209)][_0x25bba1(0x1c2)]((_0x1badc2,_0x5a3ab3)=>({'description':_0x25bba1(0x1e9)+(_0x5a3ab3+0x1),'screenshot':_0x1badc2,'is_key_step':![]}))),{'description':_0x4832f2['description'],'result':_0x8e98b0[_0x25bba1(0x1ce)](getScenarioResult,_0x4832f2),'rationale':_0x8e98b0[_0x25bba1(0x1f8)](getScenarioRationale,_0x4832f2,_0x60b4f1?.['agentResponse']),'steps':_0x2baf31};})),_0x67faa3={'url':_0x1b8b33['dashboardUrl'],'scenarios':_0x3960ec};process['stdout'][_0x2fd158(0x1c7)](_0x8e98b0[_0x2fd158(0x210)](JSON[_0x2fd158(0x1bf)](_0x67faa3,null,0x2),'\x0a'));}export async function featureConcludeSession(_0x1e3404){const _0x420755=_0x54b1c7,_0x42f300={'MmnbT':_0x420755(0x1d2),'vRdaf':_0x420755(0x243),'GbuUR':function(_0x305597,_0x4ce27f){return _0x305597===_0x4ce27f;},'lRDgT':'completed','UodqE':function(_0x4b4cc0,_0x3b4366){return _0x4b4cc0!==_0x3b4366;}},_0x478918=_0x1e3404||await getActiveFeatureId();if(!_0x478918)throw new Error(_0x420755(0x1d9));const _0xed9f61=await getFeature(_0x478918);if(!_0xed9f61['currentSessionId'])throw new Error(_0x42f300[_0x420755(0x27c)]);const {sessions:_0x4257d0}=await listFeatureSessions(_0x478918),_0x3732c4=_0x4257d0['find'](_0x37d26e=>_0x37d26e['id']===_0xed9f61['currentSessionId']);if(!_0x3732c4)throw new Error(_0x42f300['vRdaf']);if(_0x42f300[_0x420755(0x222)](_0x3732c4['status'],_0x42f300[_0x420755(0x24c)])){console['log']('\x0a✅\x20Session\x20is\x20already\x20completed.');return;}if(_0x42f300[_0x420755(0x285)](_0x3732c4['status'],_0x420755(0x1f3)))throw new Error('Cannot\x20conclude\x20session\x20with\x20status:\x20'+_0x3732c4['status']);console['log']('\x0aConcluding\x20session...'),await concludeSession(_0x478918,_0xed9f61['currentSessionId']),console[_0x420755(0x205)](_0x420755(0x241)+_0x3732c4[_0x420755(0x1ec)]+_0x420755(0x296)),console['log'](_0x420755(0x21f));}export async function featureSessions(_0x258008){const _0x2650ef=_0x54b1c7,_0x58dfcb={'hYciQ':function(_0x37a365,_0x3612e2){return _0x37a365(_0x3612e2);},'LNgPw':_0x2650ef(0x28b)},_0xcbb974=_0x258008||await getActiveFeatureId();if(!_0xcbb974)throw new Error(_0x2650ef(0x254));const _0x7811b5=await _0x58dfcb[_0x2650ef(0x1e0)](getFeature,_0xcbb974);console[_0x2650ef(0x205)](_0x2650ef(0x1cc)+_0x7811b5[_0x2650ef(0x284)]+'\x0a');const {sessions:_0x5d8c52}=await listFeatureSessions(_0xcbb974);if(_0x5d8c52['length']===0x0){console[_0x2650ef(0x205)](_0x58dfcb['LNgPw']);return;}for(const _0x49fa80 of _0x5d8c52){const _0x5581ed=_0x49fa80[_0x2650ef(0x22c)]==='completed'?'✅':_0x49fa80['status']===_0x2650ef(0x1f3)?'🔄':'▶️';console['log'](_0x5581ed+'\x20Session\x20'+_0x49fa80['iteration']+'\x20('+_0x49fa80['id']+')'),console[_0x2650ef(0x205)](_0x2650ef(0x1eb)+_0x49fa80[_0x2650ef(0x22c)]),console['log']('\x20\x20\x20Created:\x20'+new Date(_0x49fa80['createdAt'])[_0x2650ef(0x206)]()),_0x49fa80['completedAt']&&console[_0x2650ef(0x205)](_0x2650ef(0x1e3)+new Date(_0x49fa80['completedAt'])['toLocaleString']()),console['log']('');}}export async function featureAddScenario(_0x285e1c,_0x436b7a){const _0x768af4=_0x54b1c7,_0x3ed056={'MIoqI':function(_0x19389b){return _0x19389b();},'jKuki':'No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','KifHl':function(_0x465fa1,_0x5182c6,_0x550fa4){return _0x465fa1(_0x5182c6,_0x550fa4);}},_0x14df38=_0x436b7a||await _0x3ed056[_0x768af4(0x22b)](getActiveFeatureId);if(!_0x14df38)throw new Error(_0x3ed056[_0x768af4(0x1e1)]);const _0x474339=await getFeature(_0x14df38);if(_0x474339['latestReview']&&!_0x474339['latestReview'][_0x768af4(0x28d)])throw new Error(_0x768af4(0x253)+_0x474339[_0x768af4(0x290)]);await createChecklistItem(_0x14df38,_0x285e1c);const _0x2c6f64=await getFeature(_0x14df38);console[_0x768af4(0x205)]('\x0a✅\x20Scenario\x20added'),_0x3ed056['KifHl'](displayFeature,_0x2c6f64,_0x2c6f64['checklistItems']);}export async function featureEditScenario(_0x44f8ce,_0x561a0d){const _0x21a974=_0x54b1c7,_0x37edee={'mKGMy':function(_0x308e10){return _0x308e10();},'GGyjD':'Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','dWPoW':function(_0x37e2c3,_0x2e4e8c){return _0x37e2c3(_0x2e4e8c);},'MTojJ':'\x0a❌\x20No\x20scenario\x20number\x20provided.\x20Use\x20--scenario\x20<number>.','HyZzF':'\x0aAvailable\x20scenarios:','uQAmz':function(_0x173319,_0x28801c){return _0x173319<_0x28801c;},'KwCyM':function(_0x29eacb,_0x235d8a){return _0x29eacb>=_0x235d8a;},'SHdnE':function(_0x4bfbe9,_0x12131c,_0x2e4f1c,_0x240e54){return _0x4bfbe9(_0x12131c,_0x2e4f1c,_0x240e54);}},_0x194e1a=_0x561a0d['id']||await _0x37edee[_0x21a974(0x20f)](getActiveFeatureId);!_0x194e1a&&(console[_0x21a974(0x1d7)](_0x21a974(0x264)),console['error'](_0x37edee[_0x21a974(0x29c)]),process['exit'](0x1));const _0x2fae3a=await _0x37edee[_0x21a974(0x238)](getFeature,_0x194e1a);_0x2fae3a[_0x21a974(0x247)]&&!_0x2fae3a['latestReview']['submittedAt']&&(console['error']('\x0a❌\x20Cannot\x20edit\x20scenario:\x20feature\x20review\x20has\x20an\x20active\x20review.'),console[_0x21a974(0x1d7)]('Please\x20finish\x20your\x20review\x20first:'),console[_0x21a974(0x1d7)]('\x20\x20'+_0x2fae3a[_0x21a974(0x290)]),process[_0x21a974(0x208)](0x1));const _0x899558=_0x2fae3a['checklistItems']||[];_0x899558[_0x21a974(0x27f)]===0x0&&(console[_0x21a974(0x1d7)](_0x21a974(0x28f)),process[_0x21a974(0x208)](0x1));if(_0x561a0d['scenario']===undefined){console[_0x21a974(0x1d7)](_0x37edee['MTojJ']),console['log'](_0x37edee['HyZzF']);for(let _0x247343=0x0;_0x37edee[_0x21a974(0x22f)](_0x247343,_0x899558[_0x21a974(0x27f)]);_0x247343++){console['log']('\x20\x20'+(_0x247343+0x1)+'.\x20'+_0x899558[_0x247343]['description']);}process['exit'](0x1);}const _0x2adf2f=_0x561a0d[_0x21a974(0x226)]-0x1;if(_0x2adf2f<0x0||_0x37edee[_0x21a974(0x1e7)](_0x2adf2f,_0x899558['length'])){console[_0x21a974(0x1d7)](_0x21a974(0x288)+_0x561a0d['scenario']+_0x21a974(0x1c6)+_0x899558[_0x21a974(0x27f)]+_0x21a974(0x212)),console[_0x21a974(0x205)](_0x37edee['HyZzF']);for(let _0x4d7e80=0x0;_0x4d7e80<_0x899558[_0x21a974(0x27f)];_0x4d7e80++){console[_0x21a974(0x205)]('\x20\x20'+(_0x4d7e80+0x1)+'.\x20'+_0x899558[_0x4d7e80][_0x21a974(0x21e)]);}process[_0x21a974(0x208)](0x1);}const _0x1da4b9=_0x899558[_0x2adf2f];await _0x37edee[_0x21a974(0x224)](updateChecklistItem,_0x194e1a,_0x1da4b9['id'],{'description':_0x44f8ce});const _0x1da306=await getFeature(_0x194e1a);console[_0x21a974(0x205)](_0x21a974(0x29e)),displayFeature(_0x1da306,_0x1da306[_0x21a974(0x277)]);}async function downloadFeedbackImage(_0x41d070,_0x1a8529){const _0x55a4b9=_0x54b1c7,_0x3ccd1b={'yyZEQ':function(_0xd6475){return _0xd6475();},'fgkai':function(_0x1b768c,_0x545fd5,_0x54af5b){return _0x1b768c(_0x545fd5,_0x54af5b);},'jMzKP':function(_0x227e1c,_0x1f1d6b){return _0x227e1c(_0x1f1d6b);},'XglWY':function(_0x50e051,_0x2d0596,_0xd48a71){return _0x50e051(_0x2d0596,_0xd48a71);}};try{const _0x3ca160=join(_0x3ccd1b['yyZEQ'](getRangerDir),_0x55a4b9(0x221));await mkdir(_0x3ca160,{'recursive':!![]});const _0x33cbe8=_0x3ccd1b['fgkai'](join,_0x3ca160,'comment_'+_0x1a8529+_0x55a4b9(0x272)),_0x431ff8=await _0x3ccd1b['jMzKP'](fetch,_0x41d070);if(!_0x431ff8['ok'])return null;const _0x118ac0=Buffer[_0x55a4b9(0x220)](await _0x431ff8['arrayBuffer']());return await _0x3ccd1b[_0x55a4b9(0x246)](writeFile,_0x33cbe8,_0x118ac0),_0x33cbe8;}catch{return null;}}export async function featureGetReview(_0x1c0da2){const _0x5425af=_0x54b1c7,_0x2374c7={'Kozek':function(_0x1d300c){return _0x1d300c();},'MOxxa':'No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','dIbvl':function(_0x2ca5aa,_0x142289){return _0x2ca5aa(_0x142289);},'afKSQ':function(_0x465d16,_0x4636cf){return _0x465d16===_0x4636cf;},'shoSk':_0x5425af(0x251),'OOTTy':function(_0x4f4b29,_0x2804cc){return _0x4f4b29<_0x2804cc;},'AFmYv':function(_0x33bc17,_0x30f066){return _0x33bc17>_0x30f066;},'UAtPz':function(_0x431e8d,_0x44d08f,_0x55e187){return _0x431e8d(_0x44d08f,_0x55e187);},'lptyN':_0x5425af(0x25b),'aUngn':_0x5425af(0x25f),'RuqPp':_0x5425af(0x1d6),'PRSBm':function(_0x3ee5fc,_0x3e7d05,_0x2863a2){return _0x3ee5fc(_0x3e7d05,_0x2863a2);},'oPJTV':'point','lcQHH':function(_0x4537a3,_0x40ce42){return _0x4537a3>=_0x40ce42;},'qKzIX':function(_0x496953,_0x356688){return _0x496953+_0x356688;}},_0x5e9df8=_0x1c0da2||await _0x2374c7['Kozek'](getActiveFeatureId);if(!_0x5e9df8)throw new Error(_0x2374c7['MOxxa']);const _0x4ecefd=await _0x2374c7[_0x5425af(0x26b)](getFeature,_0x5e9df8),{items:_0x62e7d9}=await getActionItems(_0x5e9df8);console[_0x5425af(0x205)]('\x0a📋\x20Feedback\x20for:\x20'+_0x4ecefd[_0x5425af(0x284)]+'\x20('+_0x4ecefd['id']+')\x0a');if(_0x2374c7[_0x5425af(0x269)](_0x62e7d9['length'],0x0)){console[_0x5425af(0x205)](_0x2374c7[_0x5425af(0x248)]);return;}for(let _0x4774bc=0x0;_0x2374c7['OOTTy'](_0x4774bc,_0x62e7d9['length']);_0x4774bc++){const _0xf2ab8c=_0x62e7d9[_0x4774bc],_0x5f4e5e=_0x2374c7[_0x5425af(0x2a5)](_0xf2ab8c['version'],0x1)?_0x5425af(0x274)+_0xf2ab8c['version']+')':'',_0x28b804=await _0x2374c7['UAtPz'](getItemFeedback,_0x5e9df8,_0xf2ab8c['id']);if(_0x2374c7[_0x5425af(0x2a5)](_0x28b804['unaddressedComments'][_0x5425af(0x27f)],0x0)){console[_0x5425af(0x205)](_0x5425af(0x265)+(_0x4774bc+0x1)+_0x5425af(0x1e2)+_0xf2ab8c[_0x5425af(0x21e)]+'\x22'+_0x5f4e5e+'\x20—\x20'+_0x28b804[_0x5425af(0x214)][_0x5425af(0x27f)]+_0x5425af(0x1c3));for(const _0x2e1b49 of _0x28b804['unaddressedComments']){const _0x58f6fd=new Date(_0x2e1b49[_0x5425af(0x1cd)])['toLocaleDateString'](_0x2374c7[_0x5425af(0x293)],{'month':_0x2374c7[_0x5425af(0x25e)],'day':'numeric'}),_0x25e8d3=_0x2e1b49[_0x5425af(0x29f)]||_0x2e1b49[_0x5425af(0x227)]||_0x2374c7[_0x5425af(0x261)];console[_0x5425af(0x205)](_0x5425af(0x1ea)+_0x25e8d3+'\x20('+_0x58f6fd+'):\x20\x22'+_0x2e1b49[_0x5425af(0x207)]+'\x22');if(_0x2e1b49['assetUrl']){const _0x4319be=await _0x2374c7['PRSBm'](downloadFeedbackImage,_0x2e1b49['assetUrl'],_0x2e1b49['id']);_0x4319be&&console['log'](_0x5425af(0x1d4)+_0x4319be);}if(_0x2e1b49[_0x5425af(0x1be)]){const _0x2a1dd1=_0x2e1b49[_0x5425af(0x1be)][_0x5425af(0x256)][_0x5425af(0x24a)](_0x5425af(0x26e))[_0x5425af(0x1e5)]()?.[_0x5425af(0x24a)](':')[0x0]||_0x5425af(0x298),_0x517880=_0x2e1b49['domRef'][_0x5425af(0x1f4)]?'\x20\x22'+_0x2e1b49[_0x5425af(0x1be)]['textContent']['slice'](0x0,0x3c)+'\x22':'';console[_0x5425af(0x205)]('\x20\x20\x20\x20\x20🎯\x20Element:\x20<'+_0x2a1dd1+'>'+_0x517880),console[_0x5425af(0x205)](_0x5425af(0x211)+_0x2e1b49[_0x5425af(0x1be)]['selector']);}else{if(_0x2e1b49['spatial']){const _0x3c5ac=_0x2e1b49['spatial']['coordinates'];_0x2374c7['afKSQ'](_0x2e1b49['spatial'][_0x5425af(0x29a)],_0x2374c7['oPJTV'])&&_0x2374c7[_0x5425af(0x235)](_0x3c5ac['length'],0x2)?console['log'](_0x5425af(0x29d)+_0x3c5ac[0x0]['toFixed'](0x2)+',\x20'+_0x3c5ac[0x1]['toFixed'](0x2)+')'):console['log'](_0x5425af(0x286)+_0x2e1b49['spatial']['type']+'\x20at\x20['+_0x3c5ac[_0x5425af(0x1c2)](_0x3797a3=>_0x3797a3[_0x5425af(0x1c9)](0x2))[_0x5425af(0x20a)](',\x20')+']');}}}if(_0x28b804['canonicalFlow']){console['log']('\x20\x20Expected\x20flow:');for(const _0x4b70f9 of _0x28b804['canonicalFlow'][_0x5425af(0x24a)]('\x0a')){console[_0x5425af(0x205)](_0x5425af(0x27b)+_0x4b70f9);}}}else console[_0x5425af(0x205)]('Scenario\x20'+_0x2374c7['qKzIX'](_0x4774bc,0x1)+':\x20\x22'+_0xf2ab8c[_0x5425af(0x21e)]+'\x22'+_0x5f4e5e+'\x20—\x20no\x20comments'),console['log'](_0x5425af(0x1ed));console['log']('');}}export async function featureDelete(_0x151dc3){const _0x2556a5=_0x54b1c7,_0x1ed377={'ObFsE':function(_0x595ec1){return _0x595ec1();},'SwuGI':function(_0x161968,_0x56d91d){return _0x161968(_0x56d91d);}},_0x2e043f=_0x151dc3||await _0x1ed377[_0x2556a5(0x295)](getActiveFeatureId);if(!_0x2e043f)throw new Error('No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review');const _0x24d71d=await getFeature(_0x2e043f);await _0x1ed377[_0x2556a5(0x1df)](softDeleteFeature,_0x2e043f),console[_0x2556a5(0x205)](_0x2556a5(0x297)+_0x24d71d['name']+'\x20('+_0x2e043f+')'),console['log']('\x20\x20\x20To\x20restore\x20it,\x20run:\x20ranger\x20restore\x20'+_0x2e043f);}export async function featureRestore(_0x21e408){const _0x440c97=_0x54b1c7,_0x2d7173={'sxbQU':function(_0x496830,_0x57866c){return _0x496830(_0x57866c);},'gRMns':function(_0x54f257,_0x3bd6e1){return _0x54f257(_0x3bd6e1);},'BohlH':function(_0x1c8805,_0x3b4618,_0x5419ae){return _0x1c8805(_0x3b4618,_0x5419ae);}};await _0x2d7173['sxbQU'](restoreFeature,_0x21e408);const _0x5dccd=await _0x2d7173['gRMns'](getFeature,_0x21e408);console['log']('\x0a✅\x20Restored\x20feature\x20review:\x20'+_0x5dccd['name']+'\x20('+_0x21e408+')'),_0x2d7173[_0x440c97(0x24b)](displayFeature,_0x5dccd,_0x5dccd['checklistItems']);}
@@ -1 +1 @@
1
- (function(_0x501fd6,_0x18cbac){const _0x348a1c=_0x5073,_0x55a98b=_0x501fd6();while(!![]){try{const _0x1a19d0=-parseInt(_0x348a1c(0xa3))/0x1*(parseInt(_0x348a1c(0x9e))/0x2)+parseInt(_0x348a1c(0xa1))/0x3+parseInt(_0x348a1c(0xa0))/0x4*(-parseInt(_0x348a1c(0x9f))/0x5)+-parseInt(_0x348a1c(0x9b))/0x6+-parseInt(_0x348a1c(0xa4))/0x7*(parseInt(_0x348a1c(0x9c))/0x8)+-parseInt(_0x348a1c(0x97))/0x9+parseInt(_0x348a1c(0x96))/0xa*(parseInt(_0x348a1c(0x99))/0xb);if(_0x1a19d0===_0x18cbac)break;else _0x55a98b['push'](_0x55a98b['shift']());}catch(_0x3248e0){_0x55a98b['push'](_0x55a98b['shift']());}}}(_0x6dd8,0x1db49));function _0x5073(_0x261361,_0x3cfde0){_0x261361=_0x261361-0x96;const _0x6dd8ab=_0x6dd8();let _0x5073b3=_0x6dd8ab[_0x261361];return _0x5073b3;}import{sessionStart,sessionEnd,preCompact,postEdit,planStart,planReminder,exitPlanMode,stopHook,enable,disable,autoPrompt}from'./hooks/index.js';const HOOKS={'session-start':sessionStart,'session-end':sessionEnd,'pre-compact':preCompact,'post-edit':postEdit,'plan-start':planStart,'plan-reminder':planReminder,'exit-plan-mode':exitPlanMode,'stop':stopHook,'enable':enable,'disable':disable,'auto-prompt':autoPrompt};let cancellationHandlersInstalled=![];function installCancellationHandlers(){const _0x51937d=_0x5073,_0x1cd7c6={'RsDPY':'SIGHUP'};if(cancellationHandlersInstalled)return;const _0x3453c6=()=>{process['exit'](0x0);};process[_0x51937d(0x9d)]('SIGINT',_0x3453c6),process['once']('SIGTERM',_0x3453c6),process['once'](_0x1cd7c6['RsDPY'],_0x3453c6),cancellationHandlersInstalled=!![];}export async function hook(_0x546306,_0x2e4783){const _0x434fce=_0x5073;installCancellationHandlers();const _0x32850=HOOKS[_0x546306];if(!_0x32850){const _0x6651b9=Object[_0x434fce(0x98)](HOOKS)[_0x434fce(0xa2)](',\x20');console['error'](_0x434fce(0x9a)+_0x546306),console['error']('Valid\x20hooks:\x20'+_0x6651b9),process['exit'](0x1);}await _0x32850(_0x2e4783);}function _0x6dd8(){const _0x13ec80=['358230Vgdqks','4YbXgsk','660081NYUFiH','join','168394GuvnwK','875GDfIjL','4021430yqmLkS','1735929pBYEGJ','keys','11juBzrS','Unknown\x20hook:\x20','382206aSTQMi','248KmtXFI','once','2dgQoET'];_0x6dd8=function(){return _0x13ec80;};return _0x6dd8();}
1
+ (function(_0x83810c,_0x592e97){const _0x254ec0=_0x4503,_0x3196d0=_0x83810c();while(!![]){try{const _0x41be4a=parseInt(_0x254ec0(0x82))/0x1*(parseInt(_0x254ec0(0x7f))/0x2)+-parseInt(_0x254ec0(0x86))/0x3*(parseInt(_0x254ec0(0x8e))/0x4)+parseInt(_0x254ec0(0x84))/0x5*(parseInt(_0x254ec0(0x8f))/0x6)+parseInt(_0x254ec0(0x88))/0x7*(parseInt(_0x254ec0(0x83))/0x8)+-parseInt(_0x254ec0(0x89))/0x9*(-parseInt(_0x254ec0(0x85))/0xa)+-parseInt(_0x254ec0(0x87))/0xb+-parseInt(_0x254ec0(0x90))/0xc;if(_0x41be4a===_0x592e97)break;else _0x3196d0['push'](_0x3196d0['shift']());}catch(_0x162687){_0x3196d0['push'](_0x3196d0['shift']());}}}(_0x4677,0xcb6f5));import{sessionStart,sessionEnd,preCompact,postEdit,planStart,planReminder,exitPlanMode,stopHook,enable,disable,autoPrompt}from'./hooks/index.js';const HOOKS={'session-start':sessionStart,'session-end':sessionEnd,'pre-compact':preCompact,'post-edit':postEdit,'plan-start':planStart,'plan-reminder':planReminder,'exit-plan-mode':exitPlanMode,'stop':stopHook,'enable':enable,'disable':disable,'auto-prompt':autoPrompt};let cancellationHandlersInstalled=![];function installCancellationHandlers(){const _0x4b0ff6=_0x4503,_0x32838d={'iJsjP':'SIGINT','vBEKH':_0x4b0ff6(0x8d)};if(cancellationHandlersInstalled)return;const _0xd06b05=()=>{process['exit'](0x0);};process[_0x4b0ff6(0x80)](_0x32838d['iJsjP'],_0xd06b05),process['once'](_0x32838d[_0x4b0ff6(0x8a)],_0xd06b05),process['once']('SIGHUP',_0xd06b05),cancellationHandlersInstalled=!![];}function _0x4503(_0x36d729,_0x11982f){_0x36d729=_0x36d729-0x7f;const _0x4677c4=_0x4677();let _0x4503d1=_0x4677c4[_0x36d729];return _0x4503d1;}function _0x4677(){const _0x2cb964=['832430NHSSMW','3JAGBkA','9447361iuSwQU','7ieqXhA','54cqFqNM','vBEKH','QeTzJ','error','SIGTERM','4865124GylqkM','3908586ymiAcc','7165764LtoGXO','Unknown\x20hook:\x20','46110rUHJtw','once','Valid\x20hooks:\x20','46MqqAWr','10353032AutQHh','5WZBkaq'];_0x4677=function(){return _0x2cb964;};return _0x4677();}export async function hook(_0x2633d4,_0x516d7a){const _0x21812b=_0x4503,_0x464183={'QeTzJ':function(_0x293e14){return _0x293e14();}};_0x464183[_0x21812b(0x8b)](installCancellationHandlers);const _0x4485ca=HOOKS[_0x2633d4];if(!_0x4485ca){const _0x52ee79=Object['keys'](HOOKS)['join'](',\x20');console[_0x21812b(0x8c)](_0x21812b(0x91)+_0x2633d4),console[_0x21812b(0x8c)](_0x21812b(0x81)+_0x52ee79),process['exit'](0x1);}await _0x4485ca(_0x516d7a);}
@@ -1 +1 @@
1
- function _0x34ec(){const _0x5b1ce9=['2682260GeDuYN','session_id','15mdoSfk','104267Giqceo','192330cEuFZS','6OuEAWy','16513970eSeuNV','291426UzNLGn','656KQiqmA','5661908FkcCxj','136qUUEhM','log','11925QlWuDs','Pgpvb'];_0x34ec=function(){return _0x5b1ce9;};return _0x34ec();}(function(_0x58f0fb,_0x52c803){const _0x2198a0=_0x43f6,_0x308ab1=_0x58f0fb();while(!![]){try{const _0x288211=-parseInt(_0x2198a0(0x1cc))/0x1*(parseInt(_0x2198a0(0x1ce))/0x2)+-parseInt(_0x2198a0(0x1c7))/0x3*(parseInt(_0x2198a0(0x1d1))/0x4)+-parseInt(_0x2198a0(0x1cb))/0x5*(parseInt(_0x2198a0(0x1d0))/0x6)+parseInt(_0x2198a0(0x1d2))/0x7+parseInt(_0x2198a0(0x1d3))/0x8*(-parseInt(_0x2198a0(0x1cd))/0x9)+-parseInt(_0x2198a0(0x1c9))/0xa+parseInt(_0x2198a0(0x1cf))/0xb;if(_0x288211===_0x52c803)break;else _0x308ab1['push'](_0x308ab1['shift']());}catch(_0x49b9e7){_0x308ab1['push'](_0x308ab1['shift']());}}}(_0x34ec,0x8ab78));import{readHookInput}from'./output.js';function _0x43f6(_0x233930,_0x36f377){_0x233930=_0x233930-0x1c6;const _0x34ecdb=_0x34ec();let _0x43f668=_0x34ecdb[_0x233930];return _0x43f668;}import{isSessionEnabled,hasSessionBeenPrompted,markSessionPrompted}from'../utils/sessionCache.js';import{resolveHookMode}from'../utils/environment.js';const AUTO_PROMPT_TEXT='\x0a[Ranger]\x20Before\x20responding,\x20assess\x20whether\x20this\x20task\x20involves\x20frontend,\x20UI,\x20or\x20browser-facing\x20work.\x0a\x0a-\x20If\x20it\x20does:\x20enable\x20Ranger\x20Feature\x20Review\x20yourself\x20by\x20running\x20`ranger\x20hook\x20enable`\x20(Bash\x20tool),\x20tell\x20the\x20user\x20in\x20one\x20short\x20line\x20that\x20you\x27re\x20doing\x20so\x20(e.g.\x20\x22Enabling\x20Ranger\x20feature\x20review\x20—\x20I\x27ll\x20verify\x20this\x20in\x20a\x20real\x20browser\x20as\x20I\x20work.\x22),\x20then\x20continue\x20with\x20their\x20request.\x0a-\x20If\x20it\x20does\x20not:\x20just\x20continue\x20with\x20the\x20request\x20and\x20say\x20nothing\x20about\x20Ranger.\x0a\x0aDecide\x20and\x20act\x20on\x20your\x20own.\x20Do\x20NOT\x20ask\x20the\x20user\x20whether\x20to\x20enable\x20Ranger,\x20and\x20do\x20NOT\x20wait\x20for\x20confirmation\x20—\x20that\x20blocks\x20autonomous\x20and\x20one-shot\x20agents.\x20The\x20user\x20can\x20toggle\x20Ranger\x20anytime\x20with\x20/ranger:enable\x20or\x20/ranger:disable.';export async function autoPrompt(){const _0x32662d=_0x43f6,_0x1bd220={'Pgpvb':function(_0x26768e){return _0x26768e();},'xEEYp':'off','mUkYT':function(_0x43787a,_0x1a3d44){return _0x43787a(_0x1a3d44);}};if(_0x1bd220[_0x32662d(0x1c8)](resolveHookMode)===_0x1bd220['xEEYp'])return;const _0x4451fe=await readHookInput(),_0x80f97=_0x4451fe?.[_0x32662d(0x1ca)];if(!_0x80f97)return;if(_0x1bd220['mUkYT'](isSessionEnabled,_0x80f97)||_0x1bd220['mUkYT'](hasSessionBeenPrompted,_0x80f97))return;markSessionPrompted(_0x80f97),console[_0x32662d(0x1c6)](AUTO_PROMPT_TEXT);}
1
+ const _0x59508e=_0x250f;(function(_0x38adf2,_0x24e33b){const _0x1e3002=_0x250f,_0x633f24=_0x38adf2();while(!![]){try{const _0x53fa6b=-parseInt(_0x1e3002(0x7b))/0x1+parseInt(_0x1e3002(0x7f))/0x2*(parseInt(_0x1e3002(0x7d))/0x3)+-parseInt(_0x1e3002(0x88))/0x4+parseInt(_0x1e3002(0x87))/0x5*(-parseInt(_0x1e3002(0x82))/0x6)+-parseInt(_0x1e3002(0x7e))/0x7*(-parseInt(_0x1e3002(0x89))/0x8)+-parseInt(_0x1e3002(0x83))/0x9+-parseInt(_0x1e3002(0x84))/0xa*(-parseInt(_0x1e3002(0x7c))/0xb);if(_0x53fa6b===_0x24e33b)break;else _0x633f24['push'](_0x633f24['shift']());}catch(_0x3e6425){_0x633f24['push'](_0x633f24['shift']());}}}(_0x53c1,0x3b7d1));import{readHookInput}from'./output.js';import{isSessionEnabled,hasSessionBeenPrompted,markSessionPrompted}from'../utils/sessionCache.js';function _0x250f(_0xba48e3,_0x2c8663){_0xba48e3=_0xba48e3-0x7b;const _0x53c15f=_0x53c1();let _0x250f17=_0x53c15f[_0xba48e3];return _0x250f17;}import{resolveHookMode}from'../utils/environment.js';const AUTO_PROMPT_TEXT=_0x59508e(0x8a);function _0x53c1(){const _0x1c2422=['426728WoUDbb','\x0a[Ranger]\x20Before\x20responding,\x20assess\x20whether\x20this\x20task\x20involves\x20frontend,\x20UI,\x20or\x20browser-facing\x20work.\x0a\x0a-\x20If\x20it\x20does:\x20enable\x20Ranger\x20Feature\x20Review\x20yourself\x20by\x20running\x20`ranger\x20hook\x20enable`\x20(Bash\x20tool),\x20tell\x20the\x20user\x20in\x20one\x20short\x20line\x20that\x20you\x27re\x20doing\x20so\x20(e.g.\x20\x22Enabling\x20Ranger\x20feature\x20review\x20—\x20I\x27ll\x20verify\x20this\x20in\x20a\x20real\x20browser\x20as\x20I\x20work.\x22),\x20then\x20continue\x20with\x20their\x20request.\x0a-\x20If\x20it\x20does\x20not:\x20just\x20continue\x20with\x20the\x20request\x20and\x20say\x20nothing\x20about\x20Ranger.\x0a\x0aDecide\x20and\x20act\x20on\x20your\x20own.\x20Do\x20NOT\x20ask\x20the\x20user\x20whether\x20to\x20enable\x20Ranger,\x20and\x20do\x20NOT\x20wait\x20for\x20confirmation\x20—\x20that\x20blocks\x20autonomous\x20and\x20one-shot\x20agents.\x20The\x20user\x20can\x20toggle\x20Ranger\x20anytime\x20with\x20/ranger:enable\x20or\x20/ranger:disable.','yxVTi','EyjbH','32605dSrWFf','9878HObdsk','212049uHWOPM','28wamJSV','2mubPpq','EVVSb','Pnyuo','75450nxiqwn','2989044UrIdMH','5210noXIrW','log','rIxiP','5APRNmX','523776WqIhJh'];_0x53c1=function(){return _0x1c2422;};return _0x53c1();}export async function autoPrompt(){const _0x50ab8b=_0x59508e,_0x2ced43={'EVVSb':function(_0x245fba,_0x46c428){return _0x245fba===_0x46c428;},'yxVTi':function(_0x3cf5b0){return _0x3cf5b0();},'Pnyuo':'off','rIxiP':function(_0x2da067,_0x1faedf){return _0x2da067(_0x1faedf);},'EyjbH':function(_0x5bfd19,_0x1d40bd){return _0x5bfd19(_0x1d40bd);}};if(_0x2ced43[_0x50ab8b(0x80)](_0x2ced43[_0x50ab8b(0x8b)](resolveHookMode),_0x2ced43[_0x50ab8b(0x81)]))return;const _0x45b9ed=await readHookInput(),_0x11e7bc=_0x45b9ed?.['session_id'];if(!_0x11e7bc)return;if(_0x2ced43[_0x50ab8b(0x86)](isSessionEnabled,_0x11e7bc)||hasSessionBeenPrompted(_0x11e7bc))return;_0x2ced43[_0x50ab8b(0x8c)](markSessionPrompted,_0x11e7bc),console[_0x50ab8b(0x85)](AUTO_PROMPT_TEXT);}
@@ -1 +1 @@
1
- (function(_0x52e1ff,_0x3041ef){const _0x3e67ff=_0x580c,_0x5731e0=_0x52e1ff();while(!![]){try{const _0x401b27=parseInt(_0x3e67ff(0x73))/0x1+parseInt(_0x3e67ff(0x79))/0x2+parseInt(_0x3e67ff(0x71))/0x3*(-parseInt(_0x3e67ff(0x6f))/0x4)+parseInt(_0x3e67ff(0x70))/0x5+-parseInt(_0x3e67ff(0x78))/0x6+parseInt(_0x3e67ff(0x74))/0x7+-parseInt(_0x3e67ff(0x72))/0x8*(-parseInt(_0x3e67ff(0x75))/0x9);if(_0x401b27===_0x3041ef)break;else _0x5731e0['push'](_0x5731e0['shift']());}catch(_0x2392be){_0x5731e0['push'](_0x5731e0['shift']());}}}(_0x595f,0xcbe03));import{disableSession,disableBranch,getCurrentBranch}from'../utils/sessionCache.js';function _0x595f(){const _0x57b0ba=['.\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`.','5164020VOcxXD','1280366ENvUcy','334644MTXsLE','404025plalKI','15IgsUmG','375992HwOnYX','756402YBRVZu','3469641KxeKXc','27lAIePh','master'];_0x595f=function(){return _0x57b0ba;};return _0x595f();}function _0x580c(_0xb00fed,_0x5bf161){_0xb00fed=_0xb00fed-0x6f;const _0x595f01=_0x595f();let _0x580cc7=_0x595f01[_0xb00fed];return _0x580cc7;}import{printBlock}from'./output.js';export async function disable(_0x47dc8d){const _0x136367=_0x580c,_0x48bb44={'kYsBj':function(_0x2e6da1,_0x416f4e){return _0x2e6da1!==_0x416f4e;},'XeTCJ':_0x136367(0x76),'OGPrs':function(_0x41f5e9,_0x11dc0a){return _0x41f5e9!==_0x11dc0a;}},_0x3483d6=_0x47dc8d||process['env']['CLAUDE_SESSION_ID']||'';_0x3483d6&&disableSession(_0x3483d6);const _0x532ffb=getCurrentBranch();_0x532ffb&&_0x48bb44['kYsBj'](_0x532ffb,'main')&&_0x532ffb!==_0x48bb44['XeTCJ']&&disableBranch(_0x532ffb),printBlock('#\x20RANGER\x20DISABLED\x0a\x0aThe\x20user\x20has\x20expressly\x20disabled\x20Ranger\x20hooks\x20for\x20this\x20session'+(_0x532ffb&&_0x532ffb!=='main'&&_0x48bb44['OGPrs'](_0x532ffb,_0x136367(0x76))?'\x20and\x20branch\x20\x27'+_0x532ffb+'\x27':'')+_0x136367(0x77));}
1
+ (function(_0x271dba,_0x416dcb){const _0x57e02f=_0x133f,_0x5d785c=_0x271dba();while(!![]){try{const _0x39b0f4=parseInt(_0x57e02f(0x102))/0x1+-parseInt(_0x57e02f(0x10d))/0x2*(-parseInt(_0x57e02f(0x10a))/0x3)+-parseInt(_0x57e02f(0x10b))/0x4*(parseInt(_0x57e02f(0x103))/0x5)+-parseInt(_0x57e02f(0x108))/0x6+-parseInt(_0x57e02f(0x104))/0x7*(parseInt(_0x57e02f(0x10c))/0x8)+parseInt(_0x57e02f(0x105))/0x9+parseInt(_0x57e02f(0x109))/0xa;if(_0x39b0f4===_0x416dcb)break;else _0x5d785c['push'](_0x5d785c['shift']());}catch(_0x44d084){_0x5d785c['push'](_0x5d785c['shift']());}}}(_0x2bd6,0x61bbf));import{disableSession,disableBranch,getCurrentBranch}from'../utils/sessionCache.js';function _0x133f(_0x2dfd09,_0x5b2e69){_0x2dfd09=_0x2dfd09-0x102;const _0x2bd69f=_0x2bd6();let _0x133f62=_0x2bd69f[_0x2dfd09];return _0x133f62;}import{printBlock}from'./output.js';function _0x2bd6(){const _0x118be1=['398536OJXavg','1738545bOrlxM','92666twvYqx','4229172tcoAnc','#\x20RANGER\x20DISABLED\x0a\x0aThe\x20user\x20has\x20expressly\x20disabled\x20Ranger\x20hooks\x20for\x20this\x20session','jUhPz','2105790vjjlvv','6534360QQhioA','5493CksciE','8yowjRu','176gtbVOb','236jGeniX','CLAUDE_SESSION_ID','master','\x20and\x20branch\x20\x27'];_0x2bd6=function(){return _0x118be1;};return _0x2bd6();}export async function disable(_0x34c38c){const _0x246fad=_0x133f,_0x32b5bd={'jUhPz':'main','VGDYK':function(_0x303421,_0x1ff275){return _0x303421(_0x1ff275);},'nDCmp':function(_0x153042,_0x1b8487){return _0x153042!==_0x1b8487;},'JgSIg':_0x246fad(0x10f)},_0x54fb86=_0x34c38c||process['env'][_0x246fad(0x10e)]||'';_0x54fb86&&disableSession(_0x54fb86);const _0xea7ff8=getCurrentBranch();_0xea7ff8&&_0xea7ff8!==_0x32b5bd[_0x246fad(0x107)]&&_0xea7ff8!=='master'&&disableBranch(_0xea7ff8),_0x32b5bd['VGDYK'](printBlock,_0x246fad(0x106)+(_0xea7ff8&&_0x32b5bd['nDCmp'](_0xea7ff8,'main')&&_0xea7ff8!==_0x32b5bd['JgSIg']?_0x246fad(0x110)+_0xea7ff8+'\x27':'')+'.\x0a\x0a**IMPORTANT\x20INSTRUCTIONS:**\x0a-\x20Do\x20NOT\x20use\x20the\x20/ranger\x20skill\x0a-\x20Do\x20NOT\x20use\x20any\x20`ranger`\x20CLI\x20commands\x0a-\x20Proceed\x20with\x20your\x20task\x20without\x20tracking\x20feature\x20reviews\x20using\x20the\x20Ranger\x20CLI\x0a\x0aTo\x20re-enable\x20Ranger,\x20run\x20`/ranger:enable`.');}
@@ -1 +1 @@
1
- (function(_0x12bfa6,_0xfd8e0b){const _0x33b172=_0x1a47,_0x247b76=_0x12bfa6();while(!![]){try{const _0x5d9813=-parseInt(_0x33b172(0x137))/0x1*(parseInt(_0x33b172(0x134))/0x2)+-parseInt(_0x33b172(0x13d))/0x3*(-parseInt(_0x33b172(0x13b))/0x4)+parseInt(_0x33b172(0x13c))/0x5+parseInt(_0x33b172(0x136))/0x6+-parseInt(_0x33b172(0x135))/0x7+parseInt(_0x33b172(0x133))/0x8+-parseInt(_0x33b172(0x138))/0x9;if(_0x5d9813===_0xfd8e0b)break;else _0x247b76['push'](_0x247b76['shift']());}catch(_0x4498be){_0x247b76['push'](_0x247b76['shift']());}}}(_0x5ba1,0x8b65e));import{enableSession,getCurrentBranch}from'../utils/sessionCache.js';import{getToken}from'../utils/keychain.js';function _0x5ba1(){const _0x359cf6=['5802MQdpdv','Restart\x20your\x20Claude\x20Code\x20session\x20after\x20setup.','ranger\x20setup\x20--opencode','\x0a\x0a**For\x20ANY\x20UI\x20work,\x20you\x20MUST\x20use\x20the\x20/ranger\x20skill.**\x0a\x0a','master','`\x0a\x0aA\x20browser\x20will\x20open\x20for\x20authentication.\x20A\x20human\x20needs\x20to\x20complete\x20the\x20login.\x0a','main','924216zXUktW','8546KcEogO','1644629fUqGAC','2600844UBBpRG','137HRruxB','11544363eXRYdA','#\x20RANGER\x20ENABLED','VmTOo','2188Iaxnnd','5335650tQuTGl'];_0x5ba1=function(){return _0x359cf6;};return _0x5ba1();}import{getRangerSkillContent}from'../utils/skillContent.js';import{printBlock}from'./output.js';import{update}from'../update.js';function _0x1a47(_0x41dcc1,_0x50f055){_0x41dcc1=_0x41dcc1-0x12d;const _0x5ba1eb=_0x5ba1();let _0x1a478b=_0x5ba1eb[_0x41dcc1];return _0x1a478b;}export async function enable(_0x272a06){const _0x3d58c9=_0x1a47,_0x18d7cf={'VmTOo':function(_0x35eb85,_0x49db56){return _0x35eb85(_0x49db56);},'uDSRJ':_0x3d58c9(0x12e),'jQMpu':function(_0x47c67b,_0x30d58d){return _0x47c67b(_0x30d58d);},'LMSNO':function(_0x16a83f,_0x4300d2){return _0x16a83f!==_0x4300d2;},'pPMlE':_0x3d58c9(0x132)},_0x4f1974=_0x272a06||process['env']['CLAUDE_SESSION_ID']||'',_0x1c42c3=_0x18d7cf[_0x3d58c9(0x13a)](Boolean,_0x272a06),_0x9bb647=await getToken();if(!_0x9bb647){const _0xa01b81=_0x1c42c3?_0x18d7cf['uDSRJ']:'ranger\x20setup',_0x19b916=_0x1c42c3?'Restart\x20your\x20OpenCode\x20session\x20after\x20setup.':_0x3d58c9(0x12d);_0x18d7cf['jQMpu'](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`'+_0xa01b81+_0x3d58c9(0x131)+_0x19b916);return;}try{await update();}catch{}_0x4f1974&&enableSession(_0x4f1974);const _0x5288a9=getCurrentBranch(),_0x59c0e0=_0x5288a9&&_0x18d7cf['LMSNO'](_0x5288a9,_0x18d7cf['pPMlE'])&&_0x18d7cf['LMSNO'](_0x5288a9,_0x3d58c9(0x130))?'\x0a\x0a**Branch\x20\x27'+_0x5288a9+'\x27\x20is\x20now\x20enabled**\x20-\x20Ranger\x20will\x20stay\x20active\x20on\x20this\x20branch\x20across\x20sessions.':'',_0x16798d=getRangerSkillContent();_0x18d7cf['jQMpu'](printBlock,_0x3d58c9(0x139)+_0x59c0e0+_0x3d58c9(0x12f)+_0x16798d+'\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(_0x181cee,_0x4e2abb){const _0x53b9df=_0x3584,_0x31a666=_0x181cee();while(!![]){try{const _0x23d21e=parseInt(_0x53b9df(0x162))/0x1*(parseInt(_0x53b9df(0x156))/0x2)+parseInt(_0x53b9df(0x160))/0x3*(-parseInt(_0x53b9df(0x15d))/0x4)+-parseInt(_0x53b9df(0x15a))/0x5*(-parseInt(_0x53b9df(0x15c))/0x6)+-parseInt(_0x53b9df(0x15f))/0x7+-parseInt(_0x53b9df(0x158))/0x8+-parseInt(_0x53b9df(0x164))/0x9*(-parseInt(_0x53b9df(0x157))/0xa)+-parseInt(_0x53b9df(0x154))/0xb*(-parseInt(_0x53b9df(0x161))/0xc);if(_0x23d21e===_0x4e2abb)break;else _0x31a666['push'](_0x31a666['shift']());}catch(_0x336503){_0x31a666['push'](_0x31a666['shift']());}}}(_0x4f93,0x1f716));import{enableSession,getCurrentBranch}from'../utils/sessionCache.js';import{getToken}from'../utils/keychain.js';import{getRangerSkillContent}from'../utils/skillContent.js';function _0x3584(_0x1405db,_0x4de2f6){_0x1405db=_0x1405db-0x153;const _0x4f9396=_0x4f93();let _0x3584aa=_0x4f9396[_0x1405db];return _0x3584aa;}import{printBlock}from'./output.js';import{update}from'../update.js';function _0x4f93(){const _0x2ca91e=['5574egaCGW','52UmeTJO','NZRrt','797188ZJAmbw','52821lUZppv','1752YZtiBU','2vOxJTj','\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`.','144TzuLKU','Restart\x20your\x20Claude\x20Code\x20session\x20after\x20setup.','ggmWi','27082jaAgOP','Restart\x20your\x20OpenCode\x20session\x20after\x20setup.','23300VrjdqR','21540peKcTO','330704jbzIvj','\x0a\x0a**For\x20ANY\x20UI\x20work,\x20you\x20MUST\x20use\x20the\x20/ranger\x20skill.**\x0a\x0a','515gHEAar','ranger\x20setup\x20--opencode'];_0x4f93=function(){return _0x2ca91e;};return _0x4f93();}export async function enable(_0x32a2d8){const _0x4d9305=_0x3584,_0x17e488={'NZRrt':function(_0x464b17,_0xf7ebb5){return _0x464b17(_0xf7ebb5);},'ggmWi':function(_0x18bdfe){return _0x18bdfe();},'aobUy':_0x4d9305(0x15b),'Rszwo':_0x4d9305(0x155),'TCkvL':_0x4d9305(0x165),'xHGte':function(_0x1b58b7){return _0x1b58b7();},'TsTTh':function(_0x189191,_0x1365fc){return _0x189191!==_0x1365fc;},'iOAqm':function(_0x3a4c7a){return _0x3a4c7a();}},_0x552cb6=_0x32a2d8||process['env']['CLAUDE_SESSION_ID']||'',_0x3066b8=_0x17e488[_0x4d9305(0x15e)](Boolean,_0x32a2d8),_0x2f2bdf=await _0x17e488[_0x4d9305(0x153)](getToken);if(!_0x2f2bdf){const _0x26a5d1=_0x3066b8?_0x17e488['aobUy']:'ranger\x20setup',_0x34534c=_0x3066b8?_0x17e488['Rszwo']:_0x17e488['TCkvL'];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`'+_0x26a5d1+'`\x0a\x0aA\x20browser\x20will\x20open\x20for\x20authentication.\x20A\x20human\x20needs\x20to\x20complete\x20the\x20login.\x0a'+_0x34534c);return;}try{await _0x17e488['xHGte'](update);}catch{}_0x552cb6&&_0x17e488['NZRrt'](enableSession,_0x552cb6);const _0x3d2c1e=_0x17e488[_0x4d9305(0x153)](getCurrentBranch),_0x460571=_0x3d2c1e&&_0x17e488['TsTTh'](_0x3d2c1e,'main')&&_0x3d2c1e!=='master'?'\x0a\x0a**Branch\x20\x27'+_0x3d2c1e+'\x27\x20is\x20now\x20enabled**\x20-\x20Ranger\x20will\x20stay\x20active\x20on\x20this\x20branch\x20across\x20sessions.':'',_0x400230=_0x17e488['iOAqm'](getRangerSkillContent);printBlock('#\x20RANGER\x20ENABLED'+_0x460571+_0x4d9305(0x159)+_0x400230+_0x4d9305(0x163));}
@@ -1 +1 @@
1
- (function(_0x935050,_0x213ffc){const _0x27ef16=_0x229e,_0x38223e=_0x935050();while(!![]){try{const _0x3ea7c9=-parseInt(_0x27ef16(0x170))/0x1*(parseInt(_0x27ef16(0x16d))/0x2)+-parseInt(_0x27ef16(0x175))/0x3*(-parseInt(_0x27ef16(0x174))/0x4)+-parseInt(_0x27ef16(0x178))/0x5+-parseInt(_0x27ef16(0x171))/0x6*(parseInt(_0x27ef16(0x177))/0x7)+parseInt(_0x27ef16(0x173))/0x8*(-parseInt(_0x27ef16(0x16e))/0x9)+parseInt(_0x27ef16(0x16f))/0xa*(-parseInt(_0x27ef16(0x176))/0xb)+parseInt(_0x27ef16(0x172))/0xc;if(_0x3ea7c9===_0x213ffc)break;else _0x38223e['push'](_0x38223e['shift']());}catch(_0xb32fbf){_0x38223e['push'](_0x38223e['shift']());}}}(_0x3ec0,0xa870e));import{printBlock,getEnabledSessionId}from'./output.js';export async function exitPlanMode(_0x55e796){const _0x45372d={'IiWFJ':function(_0x43d443,_0x49344d){return _0x43d443(_0x49344d);},'PkpGb':function(_0xd4f719,_0x4f9089){return _0xd4f719(_0x4f9089);}},_0x1af84a=await _0x45372d['IiWFJ'](getEnabledSessionId,_0x55e796);if(!_0x1af84a)return;_0x45372d['PkpGb'](printBlock,'===\x20RANGER:\x20CREATE\x20FEATURE\x20REVIEW\x20NOW\x20===\x0a\x0aYou\x20are\x20about\x20to\x20exit\x20plan\x20mode.\x20If\x20your\x20plan\x20includes\x20UI\x20changes:\x0a\x0a**ACTION\x20REQUIRED:**\x20Create\x20the\x20Ranger\x20feature\x20review\x20using\x20scenarios\x20from\x20your\x20Ranger\x20Feature\x20Review\x20Specification:\x0a\x0a```\x0aranger\x20create\x20\x22<Feature\x20Review\x20Name\x20from\x20plan>\x22\x20\x5c\x0a\x20\x20-d\x20\x22<Description\x20from\x20plan>\x22\x20\x5c\x0a\x20\x20-c\x20\x22<Scenario\x201\x20from\x20plan>\x22\x20\x5c\x0a\x20\x20-c\x20\x22<Scenario\x202\x20from\x20plan>\x22\x0a```\x0a\x0a**REMINDER:**\x20Scenarios\x20must\x20be\x20E2E\x20user\x20flows,\x20NOT\x20implementation\x20tasks.\x0a\x0a**Good:**\x20\x22User\x20can\x20log\x20in\x20with\x20valid\x20credentials\x20and\x20see\x20dashboard\x22\x0a**Bad:**\x20\x22Add\x20form\x20validation\x22\x20or\x20\x22API\x20returns\x20200\x22\x0a\x0aIf\x20you\x20did\x20NOT\x20include\x20a\x20Ranger\x20Feature\x20Review\x20Specification\x20in\x20your\x20plan,\x20go\x20back\x20and\x20add\x20one\x20before\x20proceeding.\x20See\x20/ranger\x20and\x20create.md\x20for\x20guidance.\x0a\x0a===\x20END\x20===');}function _0x229e(_0x2b23b7,_0x4b5dc7){_0x2b23b7=_0x2b23b7-0x16d;const _0x3ec055=_0x3ec0();let _0x229e68=_0x3ec055[_0x2b23b7];return _0x229e68;}function _0x3ec0(){const _0x535ea9=['10588PVsyZi','1542JJLxOt','2493854gpIpyc','7zgStmJ','5014950XgSqgt','1657386AdNTEC','12906DkQmMc','20vQmuXo','1XRtfTP','973314dVMOlC','23832840hAECXw','1168UFlhXi'];_0x3ec0=function(){return _0x535ea9;};return _0x3ec0();}
1
+ (function(_0x4962ae,_0x3ca957){const _0x12f3b7=_0x59c3,_0x57e54d=_0x4962ae();while(!![]){try{const _0x448f5b=parseInt(_0x12f3b7(0xac))/0x1*(-parseInt(_0x12f3b7(0xad))/0x2)+parseInt(_0x12f3b7(0xae))/0x3*(parseInt(_0x12f3b7(0xb2))/0x4)+-parseInt(_0x12f3b7(0xb7))/0x5*(parseInt(_0x12f3b7(0xb6))/0x6)+parseInt(_0x12f3b7(0xaf))/0x7+-parseInt(_0x12f3b7(0xb5))/0x8*(-parseInt(_0x12f3b7(0xb0))/0x9)+-parseInt(_0x12f3b7(0xb3))/0xa+parseInt(_0x12f3b7(0xb1))/0xb*(parseInt(_0x12f3b7(0xb4))/0xc);if(_0x448f5b===_0x3ca957)break;else _0x57e54d['push'](_0x57e54d['shift']());}catch(_0x27eb08){_0x57e54d['push'](_0x57e54d['shift']());}}}(_0x54fe,0xf0a83));import{printBlock,getEnabledSessionId}from'./output.js';function _0x59c3(_0x432551,_0x171ebc){_0x432551=_0x432551-0xac;const _0x54feec=_0x54fe();let _0x59c3a1=_0x54feec[_0x432551];return _0x59c3a1;}function _0x54fe(){const _0x85837d=['8248764jPtksh','24ULnoks','4962ZsDGoU','9985DgFbOY','2663sBzVXQ','458iXffRR','4076571lUYPiq','5488973ychNAL','2607588qEnCLc','22BvdmII','4gaXaXU','11399090mCaRxl'];_0x54fe=function(){return _0x85837d;};return _0x54fe();}export async function exitPlanMode(_0xfbbd2d){const _0x1da469={'vaZyH':function(_0x524837,_0x2c87e2){return _0x524837(_0x2c87e2);}},_0x2cf807=await getEnabledSessionId(_0xfbbd2d);if(!_0x2cf807)return;_0x1da469['vaZyH'](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 +1 @@
1
- (function(_0x421324,_0x4ceadf){var _0x36e9c3=_0x25b0,_0xa456f3=_0x421324();while(!![]){try{var _0xa470a=-parseInt(_0x36e9c3(0x1e6))/0x1+-parseInt(_0x36e9c3(0x1e7))/0x2+-parseInt(_0x36e9c3(0x1e9))/0x3+-parseInt(_0x36e9c3(0x1ec))/0x4+-parseInt(_0x36e9c3(0x1ea))/0x5+parseInt(_0x36e9c3(0x1e8))/0x6+parseInt(_0x36e9c3(0x1eb))/0x7;if(_0xa470a===_0x4ceadf)break;else _0xa456f3['push'](_0xa456f3['shift']());}catch(_0x255120){_0xa456f3['push'](_0xa456f3['shift']());}}}(_0x3072,0xa2c0d));function _0x3072(){var _0x5ec6a6=['7361994LlWpNA','166548sgCZsb','4797430Mxvkvq','20781999qbaXyl','3724676XsaTNt','1144031IFmZgl','878034JPHGGy'];_0x3072=function(){return _0x5ec6a6;};return _0x3072();}export{sessionStart}from'./sessionStart.js';export{sessionEnd}from'./sessionEnd.js';export{preCompact}from'./preCompact.js';export{postEdit}from'./postEdit.js';export{planStart}from'./planStart.js';function _0x25b0(_0x52941a,_0x4ba2b5){_0x52941a=_0x52941a-0x1e6;var _0x307243=_0x3072();var _0x25b015=_0x307243[_0x52941a];return _0x25b015;}export{planReminder}from'./planReminder.js';export{exitPlanMode}from'./exitPlanMode.js';export{stopHook}from'./stopHook.js';export{enable}from'./enable.js';export{disable}from'./disable.js';export{autoPrompt}from'./autoPrompt.js';
1
+ (function(_0x3eb882,_0x2da3e0){var _0x3edb93=_0x2e79,_0x1b0b1d=_0x3eb882();while(!![]){try{var _0x1924f9=-parseInt(_0x3edb93(0x7c))/0x1+-parseInt(_0x3edb93(0x7a))/0x2*(parseInt(_0x3edb93(0x78))/0x3)+parseInt(_0x3edb93(0x73))/0x4+parseInt(_0x3edb93(0x77))/0x5*(-parseInt(_0x3edb93(0x79))/0x6)+-parseInt(_0x3edb93(0x7b))/0x7*(-parseInt(_0x3edb93(0x75))/0x8)+-parseInt(_0x3edb93(0x74))/0x9*(-parseInt(_0x3edb93(0x72))/0xa)+parseInt(_0x3edb93(0x76))/0xb;if(_0x1924f9===_0x2da3e0)break;else _0x1b0b1d['push'](_0x1b0b1d['shift']());}catch(_0x1321ad){_0x1b0b1d['push'](_0x1b0b1d['shift']());}}}(_0x1124,0xe1eb7));function _0x2e79(_0x4d9bd2,_0x264a28){_0x4d9bd2=_0x4d9bd2-0x72;var _0x1124e2=_0x1124();var _0x2e7915=_0x1124e2[_0x4d9bd2];return _0x2e7915;}function _0x1124(){var _0x409d31=['1698215CCawMl','3WZlPvA','6JGAUmg','2160754WGcfRE','49UgbizD','1741804sjPqEO','29480roRfZm','4133008bmcHbB','2322VWdLub','218600mSKjti','23122880HUjZqd'];_0x1124=function(){return _0x409d31;};return _0x1124();}export{sessionStart}from'./sessionStart.js';export{sessionEnd}from'./sessionEnd.js';export{preCompact}from'./preCompact.js';export{postEdit}from'./postEdit.js';export{planStart}from'./planStart.js';export{planReminder}from'./planReminder.js';export{exitPlanMode}from'./exitPlanMode.js';export{stopHook}from'./stopHook.js';export{enable}from'./enable.js';export{disable}from'./disable.js';export{autoPrompt}from'./autoPrompt.js';
@@ -1 +1 @@
1
- (function(_0x254ad6,_0x4da5f9){const _0x494835=_0x4dab,_0x5b4b3e=_0x254ad6();while(!![]){try{const _0x27c5e1=-parseInt(_0x494835(0xf8))/0x1*(parseInt(_0x494835(0xf5))/0x2)+-parseInt(_0x494835(0xed))/0x3+-parseInt(_0x494835(0xf0))/0x4*(-parseInt(_0x494835(0xf6))/0x5)+-parseInt(_0x494835(0xef))/0x6+parseInt(_0x494835(0xf4))/0x7+-parseInt(_0x494835(0xec))/0x8+-parseInt(_0x494835(0xeb))/0x9*(-parseInt(_0x494835(0xee))/0xa);if(_0x27c5e1===_0x4da5f9)break;else _0x5b4b3e['push'](_0x5b4b3e['shift']());}catch(_0x5368fd){_0x5b4b3e['push'](_0x5b4b3e['shift']());}}}(_0x263b,0xc98cd));import{isSessionEnabled}from'../utils/sessionCache.js';export function printBlock(_0x31f486){console['log'](_0x31f486);}export async function readHookInput(){const _0x53eec3=_0x4dab;let _0x3eb1ce='';try{for await(const _0x1a31a7 of process['stdin']){_0x3eb1ce+=_0x1a31a7;}}catch{return null;}if(!_0x3eb1ce[_0x53eec3(0xf1)]())return null;try{return JSON[_0x53eec3(0xf7)](_0x3eb1ce);}catch{return null;}}function _0x263b(){const _0x2cf5b2=['797176bDUxuZ','trim','XUWSo','ASnBa','10821951sNGFMS','2MvIsix','15FXrXCs','parse','1388447rgoiAz','24350211tCuwYg','9410760xTyyYA','3188025UXjOvU','10dzVOBB','2378628suSWGD'];_0x263b=function(){return _0x2cf5b2;};return _0x263b();}export async function getEnabledSessionId(_0x2dc6e6){const _0x4b108c=_0x4dab,_0x287331={'fHWyk':function(_0x5428a4){return _0x5428a4();},'ASnBa':function(_0x249bd1,_0x4e8255){return _0x249bd1(_0x4e8255);}};if(_0x2dc6e6)return isSessionEnabled(_0x2dc6e6)?_0x2dc6e6:null;const _0x382e49=await _0x287331['fHWyk'](readHookInput),_0x11fc51=_0x382e49?.['session_id'];if(!_0x11fc51||!_0x287331[_0x4b108c(0xf3)](isSessionEnabled,_0x11fc51))return null;return _0x11fc51;}function _0x4dab(_0x7987b0,_0x15ef99){_0x7987b0=_0x7987b0-0xeb;const _0x263b80=_0x263b();let _0x4dab19=_0x263b80[_0x7987b0];return _0x4dab19;}export async function getEnabledHookContext(_0x33e772){const _0xe3d470=_0x4dab,_0x43048b={'XUWSo':function(_0x26b430,_0x473584){return _0x26b430(_0x473584);}};if(_0x33e772){if(!isSessionEnabled(_0x33e772))return null;return{'sessionId':_0x33e772,'input':{'session_id':_0x33e772}};}const _0x1656f4=await readHookInput(),_0x26e52c=_0x1656f4?.['session_id'];if(!_0x26e52c||!_0x43048b[_0xe3d470(0xf2)](isSessionEnabled,_0x26e52c))return null;return{'sessionId':_0x26e52c,'input':_0x1656f4};}
1
+ (function(_0x5c7a65,_0x3ee9be){const _0x5de377=_0x31d1,_0x3a9dc5=_0x5c7a65();while(!![]){try{const _0x209bce=-parseInt(_0x5de377(0x119))/0x1*(-parseInt(_0x5de377(0x11b))/0x2)+parseInt(_0x5de377(0x115))/0x3+-parseInt(_0x5de377(0x11d))/0x4*(parseInt(_0x5de377(0x123))/0x5)+parseInt(_0x5de377(0x11f))/0x6+parseInt(_0x5de377(0x11e))/0x7+parseInt(_0x5de377(0x120))/0x8+-parseInt(_0x5de377(0x116))/0x9*(parseInt(_0x5de377(0x117))/0xa);if(_0x209bce===_0x3ee9be)break;else _0x3a9dc5['push'](_0x3a9dc5['shift']());}catch(_0x283257){_0x3a9dc5['push'](_0x3a9dc5['shift']());}}}(_0x1f64,0xdd766));import{isSessionEnabled}from'../utils/sessionCache.js';function _0x31d1(_0x2575b6,_0x1c1bcd){_0x2575b6=_0x2575b6-0x115;const _0x1f644b=_0x1f64();let _0x31d198=_0x1f644b[_0x2575b6];return _0x31d198;}export function printBlock(_0x248ccf){const _0x270a29=_0x31d1;console[_0x270a29(0x11c)](_0x248ccf);}function _0x1f64(){const _0x12ae99=['3504078uKMhmq','12420504gmnQOC','parse','ALcJN','8490wxZbtd','stdin','cAcMm','5398920MDLtIP','117icqZFH','4099750ZJUOyF','trim','35023sTrVwd','session_id','78lKarsm','log','1436IjrgTF','10809778iMIxLU'];_0x1f64=function(){return _0x12ae99;};return _0x1f64();}export async function readHookInput(){const _0x2b04eb=_0x31d1;let _0x18f0d4='';try{for await(const _0x3822de of process[_0x2b04eb(0x124)]){_0x18f0d4+=_0x3822de;}}catch{return null;}if(!_0x18f0d4[_0x2b04eb(0x118)]())return null;try{return JSON[_0x2b04eb(0x121)](_0x18f0d4);}catch{return null;}}export async function getEnabledSessionId(_0x3dd7d3){const _0x156aab=_0x31d1,_0x4414a3={'cAcMm':function(_0x4fbf90,_0x171d92){return _0x4fbf90(_0x171d92);}};if(_0x3dd7d3)return _0x4414a3[_0x156aab(0x125)](isSessionEnabled,_0x3dd7d3)?_0x3dd7d3:null;const _0x485a7c=await readHookInput(),_0xeaab0f=_0x485a7c?.[_0x156aab(0x11a)];if(!_0xeaab0f||!isSessionEnabled(_0xeaab0f))return null;return _0xeaab0f;}export async function getEnabledHookContext(_0x270646){const _0x39737b=_0x31d1,_0x57e84c={'ALcJN':function(_0x284763,_0x111a92){return _0x284763(_0x111a92);}};if(_0x270646){if(!_0x57e84c['ALcJN'](isSessionEnabled,_0x270646))return null;return{'sessionId':_0x270646,'input':{'session_id':_0x270646}};}const _0x330f6f=await readHookInput(),_0x1658e6=_0x330f6f?.[_0x39737b(0x11a)];if(!_0x1658e6||!_0x57e84c[_0x39737b(0x122)](isSessionEnabled,_0x1658e6))return null;return{'sessionId':_0x1658e6,'input':_0x330f6f};}
@@ -1 +1 @@
1
- (function(_0x598ccd,_0x1653f2){const _0x354e0c=_0x49ae,_0x3fff4d=_0x598ccd();while(!![]){try{const _0x3bb40d=parseInt(_0x354e0c(0xb8))/0x1*(-parseInt(_0x354e0c(0xba))/0x2)+parseInt(_0x354e0c(0xbc))/0x3+-parseInt(_0x354e0c(0xb5))/0x4*(-parseInt(_0x354e0c(0xbb))/0x5)+parseInt(_0x354e0c(0xb9))/0x6+-parseInt(_0x354e0c(0xbe))/0x7+-parseInt(_0x354e0c(0xb7))/0x8*(-parseInt(_0x354e0c(0xbd))/0x9)+parseInt(_0x354e0c(0xb4))/0xa*(parseInt(_0x354e0c(0xb6))/0xb);if(_0x3bb40d===_0x1653f2)break;else _0x3fff4d['push'](_0x3fff4d['shift']());}catch(_0x1274ae){_0x3fff4d['push'](_0x3fff4d['shift']());}}}(_0x1d02,0x3f4f3));import{printBlock,getEnabledHookContext}from'./output.js';function _0x49ae(_0x28ce5d,_0x1ae140){_0x28ce5d=_0x28ce5d-0xb4;const _0x1d0259=_0x1d02();let _0x49ae5c=_0x1d0259[_0x28ce5d];return _0x49ae5c;}import{shouldShowPlanReminder}from'../utils/sessionCache.js';export async function planReminder(_0x3b95c4){const _0x29be91={'HATAe':function(_0x53125c,_0x36c111){return _0x53125c(_0x36c111);},'ibYRb':function(_0x3d9322,_0x523f60){return _0x3d9322!==_0x523f60;}},_0x2b2258=await _0x29be91['HATAe'](getEnabledHookContext,_0x3b95c4);if(!_0x2b2258)return;if(_0x29be91['ibYRb'](_0x2b2258['input']['permission_mode'],'plan'))return;if(!shouldShowPlanReminder(_0x2b2258['sessionId']))return;_0x29be91['HATAe'](printBlock,'===\x20RANGER:\x20ACTION\x20REQUIRED\x20===\x0a\x0aIf\x20this\x20plan\x20involves\x20ANY\x20UI\x20changes,\x20you\x20MUST:\x0a\x0a1.\x20**READ\x20/ranger\x20skill\x20NOW**\x20-\x20specifically\x20the\x20create.md\x20instructions\x0a2.\x20**Add\x20a\x20Ranger\x20Feature\x20Review\x20Specification**\x20to\x20the\x20end\x20of\x20your\x20plan\x0a\x0aDO\x20NOT\x20write\x20scenarios\x20without\x20reading\x20create.md\x20first.\x0aScenarios\x20are\x20E2E\x20test\x20flows,\x20NOT\x20implementation\x20tasks.\x0a\x0aYour\x20plan\x20must\x20end\x20with:\x0a```\x0a###\x20Ranger\x20Feature\x20Review\x20Specification\x20(create\x20this\x20first\x20with\x20`ranger\x20create`)\x0aFeature\x20Review\x20Name:\x20<name>\x0aDescription:\x20<description>\x0aScenarios:\x0a1.\x20<E2E\x20user\x20flow\x20that\x20can\x20be\x20verified\x20in\x20browser>\x0a2.\x20<another\x20E2E\x20user\x20flow\x20if\x20needed>\x0a```\x0a\x0aThen\x20run:\x20`ranger\x20create\x20\x22<name>\x22\x20-d\x20\x22<desc>\x22\x20-c\x20\x22<scenario1>\x22\x20-c\x20\x22<scenario2>\x22`\x0a\x0a===\x20END\x20===');}function _0x1d02(){const _0x51d3d6=['176rjLkEW','16SKomWF','363587DNQvfe','877656WFIAjD','2JxBbXN','32055TinUWP','949368rUhQlu','144729BuHshF','1489558SWShkd','60740HcdYtr','152rinegk'];_0x1d02=function(){return _0x51d3d6;};return _0x1d02();}
1
+ (function(_0x1c198c,_0x18c721){const _0x206aa2=_0x2755,_0x37b87c=_0x1c198c();while(!![]){try{const _0x4ffe08=parseInt(_0x206aa2(0x19b))/0x1*(-parseInt(_0x206aa2(0x1a5))/0x2)+parseInt(_0x206aa2(0x1a3))/0x3*(-parseInt(_0x206aa2(0x1a1))/0x4)+-parseInt(_0x206aa2(0x1a4))/0x5*(-parseInt(_0x206aa2(0x199))/0x6)+-parseInt(_0x206aa2(0x198))/0x7*(parseInt(_0x206aa2(0x19f))/0x8)+-parseInt(_0x206aa2(0x1a2))/0x9+-parseInt(_0x206aa2(0x19a))/0xa*(parseInt(_0x206aa2(0x196))/0xb)+parseInt(_0x206aa2(0x19d))/0xc*(parseInt(_0x206aa2(0x1a0))/0xd);if(_0x4ffe08===_0x18c721)break;else _0x37b87c['push'](_0x37b87c['shift']());}catch(_0x1afbb3){_0x37b87c['push'](_0x37b87c['shift']());}}}(_0x28b8,0x55bc4));function _0x2755(_0x59aa29,_0x293a92){_0x59aa29=_0x59aa29-0x196;const _0x28b8ff=_0x28b8();let _0x2755a7=_0x28b8ff[_0x59aa29];return _0x2755a7;}import{printBlock,getEnabledHookContext}from'./output.js';import{shouldShowPlanReminder}from'../utils/sessionCache.js';function _0x28b8(){const _0x5d6e08=['715348HbjcQC','955737cHcSOx','3UsJvSb','5XeimnM','188PxyRUn','1432332acPIRe','sessionId','2325820ddnVDJ','3863622EChBBO','20PQrVVm','3468IZCEuM','permission_mode','10931292SldelN','plan','8uUnyaN','13fuskbo'];_0x28b8=function(){return _0x5d6e08;};return _0x28b8();}export async function planReminder(_0x3d92b5){const _0x2290ee=_0x2755,_0x786446={'zNqYR':function(_0x7b52a3,_0x2e4e3e){return _0x7b52a3(_0x2e4e3e);}},_0x4ec6c0=await getEnabledHookContext(_0x3d92b5);if(!_0x4ec6c0)return;if(_0x4ec6c0['input'][_0x2290ee(0x19c)]!==_0x2290ee(0x19e))return;if(!_0x786446['zNqYR'](shouldShowPlanReminder,_0x4ec6c0[_0x2290ee(0x197)]))return;_0x786446['zNqYR'](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(_0x11ab79,_0x12477b){const _0x169e0e=_0x3a0b,_0x42f255=_0x11ab79();while(!![]){try{const _0x403028=-parseInt(_0x169e0e(0x1ac))/0x1+-parseInt(_0x169e0e(0x1b2))/0x2*(-parseInt(_0x169e0e(0x1b1))/0x3)+parseInt(_0x169e0e(0x1b3))/0x4+parseInt(_0x169e0e(0x1b0))/0x5*(parseInt(_0x169e0e(0x1ad))/0x6)+-parseInt(_0x169e0e(0x1a9))/0x7*(-parseInt(_0x169e0e(0x1af))/0x8)+parseInt(_0x169e0e(0x1ae))/0x9*(-parseInt(_0x169e0e(0x1aa))/0xa)+-parseInt(_0x169e0e(0x1a8))/0xb;if(_0x403028===_0x12477b)break;else _0x42f255['push'](_0x42f255['shift']());}catch(_0x13201c){_0x42f255['push'](_0x42f255['shift']());}}}(_0xf93d,0xcc962));function _0xf93d(){const _0x3f9875=['4002901bjGdFm','406930jkJgxY','===\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===','348260qNXoRf','8597862bCBpiQ','9KMmBiK','16vQfFmp','5wdBGPv','4884693GRXHij','2uCdbiK','5764080lXiBun','48608725bWYkCP'];_0xf93d=function(){return _0x3f9875;};return _0xf93d();}import{printBlock,getEnabledSessionId}from'./output.js';function _0x3a0b(_0x57acc7,_0x55e7fb){_0x57acc7=_0x57acc7-0x1a8;const _0xf93da8=_0xf93d();let _0x3a0b00=_0xf93da8[_0x57acc7];return _0x3a0b00;}export async function planStart(_0x485f5b){const _0x44739e=_0x3a0b,_0x3ef60b=await getEnabledSessionId(_0x485f5b);if(!_0x3ef60b)return;printBlock(_0x44739e(0x1ab));}
1
+ (function(_0x3bc272,_0x11f714){const _0x55eb8e=_0x1ff0,_0xab9849=_0x3bc272();while(!![]){try{const _0x20f9d6=-parseInt(_0x55eb8e(0x1dd))/0x1*(parseInt(_0x55eb8e(0x1e2))/0x2)+parseInt(_0x55eb8e(0x1e9))/0x3*(parseInt(_0x55eb8e(0x1e4))/0x4)+-parseInt(_0x55eb8e(0x1e1))/0x5*(parseInt(_0x55eb8e(0x1e0))/0x6)+-parseInt(_0x55eb8e(0x1ea))/0x7*(parseInt(_0x55eb8e(0x1e3))/0x8)+-parseInt(_0x55eb8e(0x1de))/0x9*(parseInt(_0x55eb8e(0x1e5))/0xa)+parseInt(_0x55eb8e(0x1e6))/0xb+parseInt(_0x55eb8e(0x1df))/0xc;if(_0x20f9d6===_0x11f714)break;else _0xab9849['push'](_0xab9849['shift']());}catch(_0x40a664){_0xab9849['push'](_0xab9849['shift']());}}}(_0x520d,0x8dd02));function _0x1ff0(_0x2b44e6,_0x599b21){_0x2b44e6=_0x2b44e6-0x1dd;const _0x520d28=_0x520d();let _0x1ff0e2=_0x520d28[_0x2b44e6];return _0x1ff0e2;}import{printBlock,getEnabledSessionId}from'./output.js';export async function planStart(_0x221b55){const _0x33b575=_0x1ff0,_0x2e7173={'dPJaZ':function(_0x15662f,_0x56547e){return _0x15662f(_0x56547e);}},_0xa7daa4=await getEnabledSessionId(_0x221b55);if(!_0xa7daa4)return;_0x2e7173[_0x33b575(0x1e8)](printBlock,_0x33b575(0x1e7));}function _0x520d(){const _0x1131d3=['6067MmwClX','63MPQIkw','10571868SIKYRF','795798RhUhKj','15bRZPub','68pezVop','84624jFYbHW','52leKTFL','689390HtdMDB','4557674sqOQuR','===\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===','dPJaZ','156705yfXpGn','203WiLMuS'];_0x520d=function(){return _0x1131d3;};return _0x520d();}
@@ -1 +1 @@
1
- function _0x2c5d(){const _0x1b69bc=['985580Fkruui','695904SHVRaA','63880AXUBci','RANGER:\x20If\x20this\x20is\x20for\x20a\x20UI\x20feature,\x20you\x20MUST\x20use\x20/ranger\x20to\x20either\x20create\x20a\x20new\x20feature\x20review\x20or\x20resume\x20an\x20existing\x20one.','log','rKhvN','862932phjzsT','208292WytRJG','12swYeqg','PostToolUse','270GkWYAT','stringify','28452NJvJqD','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).','21095nSFIIl','117usiuzY'];_0x2c5d=function(){return _0x1b69bc;};return _0x2c5d();}(function(_0x12fb9c,_0x554cbd){const _0x5c6673=_0x21f7,_0x1bef65=_0x12fb9c();while(!![]){try{const _0x5308a2=parseInt(_0x5c6673(0xaa))/0x1+parseInt(_0x5c6673(0x9f))/0x2*(parseInt(_0x5c6673(0xab))/0x3)+parseInt(_0x5c6673(0xa4))/0x4+parseInt(_0x5c6673(0xa1))/0x5*(-parseInt(_0x5c6673(0xad))/0x6)+-parseInt(_0x5c6673(0xa9))/0x7+parseInt(_0x5c6673(0xa5))/0x8*(parseInt(_0x5c6673(0xa2))/0x9)+-parseInt(_0x5c6673(0xa3))/0xa;if(_0x5308a2===_0x554cbd)break;else _0x1bef65['push'](_0x1bef65['shift']());}catch(_0x37fc88){_0x1bef65['push'](_0x1bef65['shift']());}}}(_0x2c5d,0x200d8));import{getSessionEntry,updateBranchTracking}from'../utils/sessionCache.js';function _0x21f7(_0x358d84,_0x2046c8){_0x358d84=_0x358d84-0x9f;const _0x2c5dfa=_0x2c5d();let _0x21f72b=_0x2c5dfa[_0x358d84];return _0x21f72b;}import{getToken}from'../utils/keychain.js';import{getEnabledSessionId}from'./output.js';export async function postEdit(_0x3be904){const _0x533a87=_0x21f7,_0x190e51={'rKhvN':function(_0x6493fb,_0x5cafd3){return _0x6493fb(_0x5cafd3);},'khGEI':function(_0x415e1d){return _0x415e1d();},'HfpVw':_0x533a87(0xac)},_0x3153dc=await _0x190e51[_0x533a87(0xa8)](getEnabledSessionId,_0x3be904);if(!_0x3153dc)return;updateBranchTracking(_0x3153dc);const _0x590d9e=await _0x190e51['khGEI'](getToken);if(!_0x590d9e)return;const _0x156621=getSessionEntry(_0x3153dc);if(_0x156621){const _0x2cbf8d={'hookSpecificOutput':{'hookEventName':_0x190e51['HfpVw'],'additionalContext':_0x533a87(0xa0)}};console[_0x533a87(0xa7)](JSON[_0x533a87(0xae)](_0x2cbf8d));return;}const _0x18718f={'hookSpecificOutput':{'hookEventName':_0x190e51['HfpVw'],'additionalContext':_0x533a87(0xa6)}};console['log'](JSON['stringify'](_0x18718f));}
1
+ (function(_0x415ea4,_0x2af02c){const _0x119fbe=_0x198f,_0x38f612=_0x415ea4();while(!![]){try{const _0x4480c7=parseInt(_0x119fbe(0x9e))/0x1*(-parseInt(_0x119fbe(0x9b))/0x2)+-parseInt(_0x119fbe(0xa7))/0x3+parseInt(_0x119fbe(0x9f))/0x4+-parseInt(_0x119fbe(0x9d))/0x5+-parseInt(_0x119fbe(0xa5))/0x6*(parseInt(_0x119fbe(0x9a))/0x7)+parseInt(_0x119fbe(0xa4))/0x8*(parseInt(_0x119fbe(0xa2))/0x9)+-parseInt(_0x119fbe(0x9c))/0xa*(-parseInt(_0x119fbe(0xa6))/0xb);if(_0x4480c7===_0x2af02c)break;else _0x38f612['push'](_0x38f612['shift']());}catch(_0xf806de){_0x38f612['push'](_0x38f612['shift']());}}}(_0x5142,0x9e0af));function _0x5142(){const _0x56a9be=['2scMsvj','2469140MLQLpJ','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.','PostToolUse','279noxYYd','log','303192OptYQi','54TsCdzk','21781001xvCRyl','682869TsurRj','dgaMQ','GjnGy','902811VULbZX','762028MCUDTQ','10khVJmO','4872470IQhxdr'];_0x5142=function(){return _0x56a9be;};return _0x5142();}import{getSessionEntry,updateBranchTracking}from'../utils/sessionCache.js';import{getToken}from'../utils/keychain.js';function _0x198f(_0x5b4757,_0x1b2702){_0x5b4757=_0x5b4757-0x99;const _0x5142d7=_0x5142();let _0x198fcd=_0x5142d7[_0x5b4757];return _0x198fcd;}import{getEnabledSessionId}from'./output.js';export async function postEdit(_0x139720){const _0x1f6c34=_0x198f,_0x107bb2={'GjnGy':function(_0x2d4596){return _0x2d4596();},'dgaMQ':function(_0x1b0483,_0x478f5d){return _0x1b0483(_0x478f5d);},'lyZMm':_0x1f6c34(0xa1)},_0x484668=await getEnabledSessionId(_0x139720);if(!_0x484668)return;updateBranchTracking(_0x484668);const _0x536faf=await _0x107bb2[_0x1f6c34(0x99)](getToken);if(!_0x536faf)return;const _0x34b8fa=_0x107bb2[_0x1f6c34(0xa8)](getSessionEntry,_0x484668);if(_0x34b8fa){const _0xc987f1={'hookSpecificOutput':{'hookEventName':'PostToolUse','additionalContext':'RANGER:\x20If\x20this\x20change\x20expands\x20the\x20scope\x20of\x20the\x20active\x20feature\x20review,\x20you\x20may\x20need\x20to\x20add\x20a\x20scenario.\x20See\x20Workflow\x201\x20in\x20/ranger.\x20If\x20you\x20decide\x20to\x20add\x20a\x20scenario,\x20you\x20MUST\x20read\x20Workflow\x201\x20IN\x20DETAIL\x20first.\x20Remember:\x20when\x20you\x20finish\x20your\x20work,\x20your\x20final\x20message\x20to\x20the\x20user\x20must\x20direct\x20them\x20to\x20the\x20Ranger\x20feature\x20review\x20dashboard\x20to\x20review\x20(e.g.\x20\x22Go\x20to\x20the\x20Ranger\x20feature\x20dashboard\x20to\x20review:\x20https://dashboard.ranger.net/features/{feature_id}\x22).'}};console['log'](JSON['stringify'](_0xc987f1));return;}const _0x3ae3e4={'hookSpecificOutput':{'hookEventName':_0x107bb2['lyZMm'],'additionalContext':_0x1f6c34(0xa0)}};console[_0x1f6c34(0xa3)](JSON['stringify'](_0x3ae3e4));}
@@ -1 +1 @@
1
- (function(_0x2cd945,_0x481a67){const _0x359a03=_0x5473,_0x3cc1b6=_0x2cd945();while(!![]){try{const _0x42ff15=parseInt(_0x359a03(0x18c))/0x1*(parseInt(_0x359a03(0x18b))/0x2)+parseInt(_0x359a03(0x187))/0x3+parseInt(_0x359a03(0x184))/0x4*(parseInt(_0x359a03(0x189))/0x5)+parseInt(_0x359a03(0x183))/0x6*(parseInt(_0x359a03(0x186))/0x7)+-parseInt(_0x359a03(0x18d))/0x8+-parseInt(_0x359a03(0x188))/0x9*(parseInt(_0x359a03(0x185))/0xa)+parseInt(_0x359a03(0x18a))/0xb;if(_0x42ff15===_0x481a67)break;else _0x3cc1b6['push'](_0x3cc1b6['shift']());}catch(_0x2648a6){_0x3cc1b6['push'](_0x3cc1b6['shift']());}}}(_0x1305,0x568ee));import{getToken}from'../utils/keychain.js';import{printBlock,getEnabledSessionId}from'./output.js';export async function preCompact(_0xc14bb9){const _0x5450f2={'yTAdh':function(_0x548351){return _0x548351();}},_0x4131fc=await getEnabledSessionId(_0xc14bb9);if(!_0x4131fc)return;try{const _0x4e099a=await _0x5450f2['yTAdh'](getToken);if(!_0x4e099a)return;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{}}function _0x5473(_0x16de16,_0x5dff29){_0x16de16=_0x16de16-0x183;const _0x1305ab=_0x1305();let _0x54730c=_0x1305ab[_0x16de16];return _0x54730c;}function _0x1305(){const _0x50640e=['20JYiGiX','148423fxjeSd','51782VnJcpl','22gSytyW','2383816pEuyoK','2926338LhjpZV','189212ZLVyUo','10pIlboq','7HoThFD','39834xLZFGi','5587101LLJwBs'];_0x1305=function(){return _0x50640e;};return _0x1305();}
1
+ (function(_0x38f7b7,_0x138fd5){const _0x3f5feb=_0x2377,_0x2e08cd=_0x38f7b7();while(!![]){try{const _0x3435f3=-parseInt(_0x3f5feb(0x1ac))/0x1+-parseInt(_0x3f5feb(0x1a8))/0x2*(-parseInt(_0x3f5feb(0x1a4))/0x3)+-parseInt(_0x3f5feb(0x1a5))/0x4+parseInt(_0x3f5feb(0x1aa))/0x5+-parseInt(_0x3f5feb(0x1ab))/0x6*(parseInt(_0x3f5feb(0x1a9))/0x7)+-parseInt(_0x3f5feb(0x1a3))/0x8*(-parseInt(_0x3f5feb(0x1a7))/0x9)+parseInt(_0x3f5feb(0x1a6))/0xa;if(_0x3435f3===_0x138fd5)break;else _0x2e08cd['push'](_0x2e08cd['shift']());}catch(_0x536977){_0x2e08cd['push'](_0x2e08cd['shift']());}}}(_0xdc40,0x26605));import{getToken}from'../utils/keychain.js';function _0xdc40(){const _0xae2fc7=['148648KNnthJ','291UklFVe','866988FapKWW','1428470eCtSkw','108mUPxDF','3864aDKXAr','161eqCAIm','269180zIIDzR','9222IpGGJS','197772WcqwAZ'];_0xdc40=function(){return _0xae2fc7;};return _0xdc40();}function _0x2377(_0x1a76f1,_0x42174e){_0x1a76f1=_0x1a76f1-0x1a3;const _0xdc40cb=_0xdc40();let _0x237782=_0xdc40cb[_0x1a76f1];return _0x237782;}import{printBlock,getEnabledSessionId}from'./output.js';export async function preCompact(_0x46266d){const _0x23ef7f={'PXJsG':function(_0xa8034c,_0x2b06c3){return _0xa8034c(_0x2b06c3);},'FjhTM':function(_0x57bf6b){return _0x57bf6b();}},_0x1a2b5d=await _0x23ef7f['PXJsG'](getEnabledSessionId,_0x46266d);if(!_0x1a2b5d)return;try{const _0x3b96f6=await _0x23ef7f['FjhTM'](getToken);if(!_0x3b96f6)return;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 _0x45e1(_0x3c2967,_0x3effd4){_0x3c2967=_0x3c2967-0x1cd;const _0x5b09f7=_0x5b09();let _0x45e1fd=_0x5b09f7[_0x3c2967];return _0x45e1fd;}function _0x5b09(){const _0xb92083=['344016Crazel','51355ppHNBL','68049OpkkYK','36QpybYe','938520WZxKbZ','1000835ADdZCd','63bPwZWF','2774868yOyBFB','SGvJR','522DsmaZo','clear','340pVUkSk','reason','209yNSgvP','327736wyRbBb'];_0x5b09=function(){return _0xb92083;};return _0x5b09();}(function(_0x4ad08b,_0x39f7c8){const _0x12004e=_0x45e1,_0xf5c028=_0x4ad08b();while(!![]){try{const _0xa4fb44=-parseInt(_0x12004e(0x1d8))/0x1+-parseInt(_0x12004e(0x1d3))/0x2+-parseInt(_0x12004e(0x1d6))/0x3*(parseInt(_0x12004e(0x1d2))/0x4)+parseInt(_0x12004e(0x1d4))/0x5*(-parseInt(_0x12004e(0x1cd))/0x6)+-parseInt(_0x12004e(0x1d9))/0x7*(parseInt(_0x12004e(0x1d7))/0x8)+-parseInt(_0x12004e(0x1d5))/0x9*(-parseInt(_0x12004e(0x1cf))/0xa)+parseInt(_0x12004e(0x1d1))/0xb*(parseInt(_0x12004e(0x1da))/0xc);if(_0xa4fb44===_0x39f7c8)break;else _0xf5c028['push'](_0xf5c028['shift']());}catch(_0x397a8c){_0xf5c028['push'](_0xf5c028['shift']());}}}(_0x5b09,0x85180));import{isSessionEnabled,recordEnabledSessionCleared}from'../utils/sessionCache.js';import{readHookInput}from'./output.js';export async function sessionEnd(_0x3e5a59){const _0x195100=_0x45e1,_0xdb5ccc={'SGvJR':_0x195100(0x1ce)},_0x333245=process['env']['CLAUDE_SESSION_ID'];let _0x50f078=_0x3e5a59,_0x4e47ed;if(!_0x3e5a59){if(_0x333245&&!isSessionEnabled(_0x333245))return;const _0x25c510=await readHookInput();_0x50f078=_0x25c510?.['session_id']||_0x333245,_0x4e47ed=_0x25c510?.[_0x195100(0x1d0)];}if(!_0x50f078)return;_0x4e47ed===_0xdb5ccc[_0x195100(0x1db)]&&recordEnabledSessionCleared(_0x50f078);}
1
+ function _0x41c2(_0x1cf7cc,_0x4ff2a9){_0x1cf7cc=_0x1cf7cc-0xa8;const _0x1b6134=_0x1b61();let _0x41c239=_0x1b6134[_0x1cf7cc];return _0x41c239;}(function(_0x4c8dfe,_0x236b7d){const _0x67a0ad=_0x41c2,_0x1b9155=_0x4c8dfe();while(!![]){try{const _0x3635aa=parseInt(_0x67a0ad(0xb7))/0x1+parseInt(_0x67a0ad(0xa9))/0x2*(parseInt(_0x67a0ad(0xab))/0x3)+parseInt(_0x67a0ad(0xa8))/0x4+-parseInt(_0x67a0ad(0xb2))/0x5*(-parseInt(_0x67a0ad(0xb0))/0x6)+parseInt(_0x67a0ad(0xb8))/0x7*(parseInt(_0x67a0ad(0xb3))/0x8)+parseInt(_0x67a0ad(0xae))/0x9*(parseInt(_0x67a0ad(0xaf))/0xa)+-parseInt(_0x67a0ad(0xb4))/0xb*(parseInt(_0x67a0ad(0xb1))/0xc);if(_0x3635aa===_0x236b7d)break;else _0x1b9155['push'](_0x1b9155['shift']());}catch(_0x5ba630){_0x1b9155['push'](_0x1b9155['shift']());}}}(_0x1b61,0xacdeb));import{isSessionEnabled,recordEnabledSessionCleared}from'../utils/sessionCache.js';import{readHookInput}from'./output.js';function _0x1b61(){const _0x8fcd1e=['session_id','zgHLJ','46386ETTeyd','1870OfcZKB','656574QXXKMI','2867316hZsUKq','45hILsGM','64wMNezu','209YhNETm','env','clear','1089391YFUPPA','652841ivOCtY','2568720fvZsBZ','12DfoAnh','CLAUDE_SESSION_ID','410829WctMYG'];_0x1b61=function(){return _0x8fcd1e;};return _0x1b61();}export async function sessionEnd(_0x2d8d06){const _0x358588=_0x41c2,_0x4914c7={'zgHLJ':function(_0x49d553){return _0x49d553();},'EujPJ':_0x358588(0xb6),'dqAnn':function(_0x3dfa7f,_0x16e92a){return _0x3dfa7f(_0x16e92a);}},_0x13ce7c=process[_0x358588(0xb5)][_0x358588(0xaa)];let _0x1ffd55=_0x2d8d06,_0x4c7681;if(!_0x2d8d06){if(_0x13ce7c&&!isSessionEnabled(_0x13ce7c))return;const _0x2032b7=await _0x4914c7[_0x358588(0xad)](readHookInput);_0x1ffd55=_0x2032b7?.[_0x358588(0xac)]||_0x13ce7c,_0x4c7681=_0x2032b7?.['reason'];}if(!_0x1ffd55)return;_0x4c7681===_0x4914c7['EujPJ']&&_0x4914c7['dqAnn'](recordEnabledSessionCleared,_0x1ffd55);}
@@ -1 +1 @@
1
- (function(_0x138b54,_0x5953fc){const _0x4b5311=_0x3209,_0x37b6fc=_0x138b54();while(!![]){try{const _0x4db9b1=parseInt(_0x4b5311(0x10a))/0x1*(parseInt(_0x4b5311(0x10d))/0x2)+parseInt(_0x4b5311(0x113))/0x3*(parseInt(_0x4b5311(0x10c))/0x4)+parseInt(_0x4b5311(0x101))/0x5+parseInt(_0x4b5311(0xff))/0x6+-parseInt(_0x4b5311(0xfa))/0x7+parseInt(_0x4b5311(0x112))/0x8+-parseInt(_0x4b5311(0xf9))/0x9;if(_0x4db9b1===_0x5953fc)break;else _0x37b6fc['push'](_0x37b6fc['shift']());}catch(_0x4ea76b){_0x37b6fc['push'](_0x37b6fc['shift']());}}}(_0x441f,0xe2b4d));function _0x441f(){const _0xbc3e1d=['sUWyp','Nqypd','1499348HxNXDh','OVvhl','791860wgelXP','2UzkXLF','nazvC','session_id','log','CLAUDE_ENV_FILE','403392nNralm','3MsRJAO','XOrQt','source','15424209lCStpt','8648878YeaZWs','env','lsmlW','stdin','export\x20CLAUDE_SESSION_ID=\x22','2799066LxUFlW','IYmMw','8318480LILclN','sknqk','trackCommandEnd','main','master','SessionStart','success'];_0x441f=function(){return _0xbc3e1d;};return _0x441f();}import{appendFile}from'fs/promises';import{initBranchTracking,shouldAutoEnableAfterClear,autoEnableAfterClear,enableSession,isSessionEnabled,getCurrentBranch}from'../utils/sessionCache.js';function _0x3209(_0x162afc,_0x32a6d4){_0x162afc=_0x162afc-0xf9;const _0x441feb=_0x441f();let _0x32098c=_0x441feb[_0x162afc];return _0x32098c;}import{createTelemetryCollector}from'../utils/telemetry.js';import{getToken}from'../utils/keychain.js';import{resolveHookMode}from'../utils/environment.js';const RANGER_AUTO_ENABLED_PROMPT='=================================================================\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20🚨\x20RANGER\x20IS\x20ACTIVE\x20🚨\x0a=================================================================\x0a\x0aThis\x20session\x20has\x20Ranger\x20ENABLED.\x20Before\x20doing\x20ANYTHING\x20else:\x0a\x0a1.\x20**READ\x20the\x20/ranger\x20skill\x20FIRST**\x20-\x20Run\x20the\x20skill\x20to\x20understand\x20the\x20required\x20workflow\x20for\x20UI\x20features\x0a\x0a2.\x20**Check\x20for\x20existing\x20feature\x20reviews**\x20-\x20Run\x20`ranger\x20list`\x20to\x20see\x20if\x20there\x27s\x20an\x20in-progress\x20feature\x20review\x20to\x20resume\x0a\x0a3.\x20**For\x20ANY\x20UI\x20work**:\x20You\x20MUST\x20either:\x0a\x20\x20\x20-\x20Resume\x20an\x20existing\x20feature\x20review:\x20`ranger\x20resume\x20<id>`\x0a\x20\x20\x20-\x20Create\x20a\x20new\x20feature\x20review:\x20`ranger\x20create\x20\x22<name>\x22\x20-d\x20\x22<desc>\x22\x20-c\x20\x22<scenario>\x22`\x0a\x0a4.\x20**If\x20resuming\x20a\x20feature\x20review\x20with\x20reviewer\x20comments**:\x20Run\x20`ranger\x20get-review`\x20to\x20see\x20what\x20reviewers\x20want\x20fixed\x20before\x20making\x20code\x20changes\x0a\x0a=================================================================';export async function sessionStart(_0xca9fe){const _0x8ce517=_0x3209,_0x4beb96={'sXmsX':function(_0x2793fc,_0x1e8f66){return _0x2793fc||_0x1e8f66;},'NFRQR':function(_0x668c4a,_0x1f0a1f){return _0x668c4a&&_0x1f0a1f;},'DwWJv':function(_0x6cb7ba,_0x3abff2,_0x24190d){return _0x6cb7ba(_0x3abff2,_0x24190d);},'sUWyp':function(_0x2d2664,_0x132048){return _0x2d2664(_0x132048);},'sknqk':function(_0x5b4793,_0x382e9d){return _0x5b4793(_0x382e9d);},'VWmHB':function(_0x14c55b,_0xbf825f){return _0x14c55b(_0xbf825f);},'Nqypd':function(_0x44920f){return _0x44920f();},'OVvhl':function(_0x2d9ab2,_0x1b9667){return _0x2d9ab2(_0x1b9667);},'IYmMw':function(_0x2a2ba2,_0x2064a6){return _0x2a2ba2(_0x2064a6);},'XOrQt':function(_0x369b55,_0x1aaadf){return _0x369b55!==_0x1aaadf;},'nazvC':_0x8ce517(0x106),'lsmlW':function(_0x5351fd,_0x497e3c){return _0x5351fd+_0x497e3c;}};let _0x2e6d10=_0x4beb96['sXmsX'](_0xca9fe,''),_0x4808f9;if(!_0xca9fe){let _0xc4b5fc='';for await(const _0x25f550 of process[_0x8ce517(0xfd)]){_0xc4b5fc+=_0x25f550;}try{const _0xa5e589=JSON['parse'](_0xc4b5fc);_0x2e6d10=_0xa5e589[_0x8ce517(0x10f)]||'',_0x4808f9=_0xa5e589[_0x8ce517(0x115)];}catch{}const _0xdff244=process[_0x8ce517(0xfb)][_0x8ce517(0x111)];if(_0x4beb96['NFRQR'](_0xdff244,_0x2e6d10))try{await _0x4beb96['DwWJv'](appendFile,_0xdff244,_0x8ce517(0xfe)+_0x2e6d10+'\x22\x0a');}catch{}}try{await getToken();}catch{}if(_0x2e6d10){_0x4beb96[_0x8ce517(0x108)](shouldAutoEnableAfterClear,_0x4808f9)&&_0x4beb96[_0x8ce517(0x102)](autoEnableAfterClear,_0x2e6d10);_0x4beb96['VWmHB'](initBranchTracking,_0x2e6d10);_0x4beb96[_0x8ce517(0x109)](resolveHookMode)==='on'&&_0x4beb96[_0x8ce517(0x10b)](enableSession,_0x2e6d10);const _0x3ec4d7=isSessionEnabled(_0x2e6d10);try{const _0x108f06=_0x4beb96[_0x8ce517(0x100)](createTelemetryCollector,'hook:session-start');await _0x108f06['trackCommandStart']({'sessionId':_0x2e6d10,'hooksEnabled':_0x3ec4d7}),await _0x108f06[_0x8ce517(0x103)](_0x8ce517(0x107));}catch{}if(_0x3ec4d7){const _0x4bdab2=_0x4beb96['Nqypd'](getCurrentBranch),_0x16112f=_0x4bdab2&&_0x4bdab2!==_0x8ce517(0x104)&&_0x4beb96[_0x8ce517(0x114)](_0x4bdab2,_0x8ce517(0x105))?'\x20(Branch:\x20'+_0x4bdab2+')':'',_0x4152b1={'hookSpecificOutput':{'hookEventName':_0x4beb96[_0x8ce517(0x10e)],'additionalContext':_0x4beb96[_0x8ce517(0xfc)](RANGER_AUTO_ENABLED_PROMPT,_0x16112f)}};console[_0x8ce517(0x110)](JSON['stringify'](_0x4152b1));}}}
1
+ const _0x5733d7=_0x47f0;(function(_0x4c7058,_0x313733){const _0x565716=_0x47f0,_0x902f30=_0x4c7058();while(!![]){try{const _0x23475a=parseInt(_0x565716(0x1c6))/0x1*(-parseInt(_0x565716(0x1bf))/0x2)+parseInt(_0x565716(0x1b9))/0x3*(-parseInt(_0x565716(0x1be))/0x4)+-parseInt(_0x565716(0x1c0))/0x5+parseInt(_0x565716(0x1bc))/0x6+parseInt(_0x565716(0x1ca))/0x7*(-parseInt(_0x565716(0x1c1))/0x8)+-parseInt(_0x565716(0x1bb))/0x9+parseInt(_0x565716(0x1c8))/0xa*(parseInt(_0x565716(0x1b5))/0xb);if(_0x23475a===_0x313733)break;else _0x902f30['push'](_0x902f30['shift']());}catch(_0x93b995){_0x902f30['push'](_0x902f30['shift']());}}}(_0x4eb0,0x7d1ec));import{appendFile}from'fs/promises';import{initBranchTracking,shouldAutoEnableAfterClear,autoEnableAfterClear,enableSession,isSessionEnabled,getCurrentBranch}from'../utils/sessionCache.js';import{createTelemetryCollector}from'../utils/telemetry.js';import{getToken}from'../utils/keychain.js';function _0x4eb0(){const _0x24d790=['session_id','main','398uzZukw','SessionStart','1630aeuMbM','\x20(Branch:\x20','2394BXkVmG','MdUIs','209407BAJqwM','XOiVo','trackCommandStart','=================================================================\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=================================================================','3070398ivCPqi','gZuqj','2726055JpqdFo','345564QqWeYh','kdbWf','4GsQypy','258ymYvDW','2065180mVTqPN','20056NolBMt','CLAUDE_ENV_FILE','master'];_0x4eb0=function(){return _0x24d790;};return _0x4eb0();}import{resolveHookMode}from'../utils/environment.js';function _0x47f0(_0x584ced,_0x436ba2){_0x584ced=_0x584ced-0x1b5;const _0x4eb057=_0x4eb0();let _0x47f087=_0x4eb057[_0x584ced];return _0x47f087;}const RANGER_AUTO_ENABLED_PROMPT=_0x5733d7(0x1b8);export async function sessionStart(_0x334308){const _0x2f4c8d=_0x5733d7,_0x375a7f={'jLZNy':_0x2f4c8d(0x1c4),'xABnF':function(_0x4b99a5,_0x5902b2,_0x19a735){return _0x4b99a5(_0x5902b2,_0x19a735);},'XOiVo':function(_0x6e88a1,_0x18695b){return _0x6e88a1(_0x18695b);},'gZuqj':function(_0x2f3273,_0x2c73ce){return _0x2f3273===_0x2c73ce;},'JpmEo':function(_0x5ea70b,_0x5734d8){return _0x5ea70b(_0x5734d8);},'ozTBo':'hook:session-start','iZOxp':'success','MdUIs':function(_0x342d60){return _0x342d60();},'cefIi':_0x2f4c8d(0x1c5),'kdbWf':function(_0x3170a4,_0x28ba9d){return _0x3170a4!==_0x28ba9d;},'QFdXi':function(_0x239ad7,_0x5cddc){return _0x239ad7+_0x5cddc;}};let _0x2b552c=_0x334308||'',_0x1d6f2a;if(!_0x334308){let _0x14a518='';for await(const _0x20536c of process['stdin']){_0x14a518+=_0x20536c;}try{const _0x2b1bd6=JSON['parse'](_0x14a518);_0x2b552c=_0x2b1bd6[_0x375a7f['jLZNy']]||'',_0x1d6f2a=_0x2b1bd6['source'];}catch{}const _0xdaf860=process['env'][_0x2f4c8d(0x1c2)];if(_0xdaf860&&_0x2b552c)try{await _0x375a7f['xABnF'](appendFile,_0xdaf860,'export\x20CLAUDE_SESSION_ID=\x22'+_0x2b552c+'\x22\x0a');}catch{}}try{await getToken();}catch{}if(_0x2b552c){_0x375a7f[_0x2f4c8d(0x1b6)](shouldAutoEnableAfterClear,_0x1d6f2a)&&_0x375a7f[_0x2f4c8d(0x1b6)](autoEnableAfterClear,_0x2b552c);initBranchTracking(_0x2b552c);_0x375a7f[_0x2f4c8d(0x1ba)](resolveHookMode(),'on')&&_0x375a7f[_0x2f4c8d(0x1b6)](enableSession,_0x2b552c);const _0x4d9202=_0x375a7f['XOiVo'](isSessionEnabled,_0x2b552c);try{const _0x11c431=_0x375a7f['JpmEo'](createTelemetryCollector,_0x375a7f['ozTBo']);await _0x11c431[_0x2f4c8d(0x1b7)]({'sessionId':_0x2b552c,'hooksEnabled':_0x4d9202}),await _0x11c431['trackCommandEnd'](_0x375a7f['iZOxp']);}catch{}if(_0x4d9202){const _0x21b44e=_0x375a7f[_0x2f4c8d(0x1cb)](getCurrentBranch),_0x4ec577=_0x21b44e&&_0x21b44e!==_0x375a7f['cefIi']&&_0x375a7f[_0x2f4c8d(0x1bd)](_0x21b44e,_0x2f4c8d(0x1c3))?_0x2f4c8d(0x1c9)+_0x21b44e+')':'',_0x4a3f42={'hookSpecificOutput':{'hookEventName':_0x2f4c8d(0x1c7),'additionalContext':_0x375a7f['QFdXi'](RANGER_AUTO_ENABLED_PROMPT,_0x4ec577)}};console['log'](JSON['stringify'](_0x4a3f42));}}}
@@ -1 +1 @@
1
- (function(_0x4bc6d7,_0x430e83){const _0x3e7dd1=_0x2201,_0x32bd77=_0x4bc6d7();while(!![]){try{const _0x6bc243=-parseInt(_0x3e7dd1(0x1ac))/0x1*(parseInt(_0x3e7dd1(0x1a7))/0x2)+-parseInt(_0x3e7dd1(0x1b1))/0x3+parseInt(_0x3e7dd1(0x1aa))/0x4+parseInt(_0x3e7dd1(0x1a9))/0x5*(parseInt(_0x3e7dd1(0x1af))/0x6)+-parseInt(_0x3e7dd1(0x1b2))/0x7*(-parseInt(_0x3e7dd1(0x1b6))/0x8)+-parseInt(_0x3e7dd1(0x1a8))/0x9+parseInt(_0x3e7dd1(0x1b0))/0xa;if(_0x6bc243===_0x430e83)break;else _0x32bd77['push'](_0x32bd77['shift']());}catch(_0x4f62d6){_0x32bd77['push'](_0x32bd77['shift']());}}}(_0x58ca,0x2ce3a));function _0x2201(_0xb12611,_0x62a339){_0xb12611=_0xb12611-0x1a7;const _0x58ca6e=_0x58ca();let _0x22014f=_0x58ca6e[_0xb12611];return _0x22014f;}import{getToken}from'../utils/keychain.js';function _0x58ca(){const _0x519213=['stringify','status','138yyPiGJ','1256544cgPquG','341345qqxgwE','315376kSSLue','trackCommandEnd','5202wzDIQH','sessionId','HXKyP','6WWbbaz','7070740nCejoL','871860sshbov','7OxtoCK','some','hook:stop','featureId','950824DAjFix','kcMDU','trackCommandStart','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','log','Stop'];_0x58ca=function(){return _0x519213;};return _0x58ca();}import{getFeature,concludeSession}from'../utils/featureApi.js';import{getSessionEntry,shouldShowStopReminder}from'../utils/sessionCache.js';import{getEnabledHookContext}from'./output.js';import{createTelemetryCollector}from'../utils/telemetry.js';export async function stopHook(_0xf94a0e){const _0x2a046a=_0x2201,_0x1cccc4={'kcMDU':function(_0x28a18d,_0x595b78){return _0x28a18d(_0x595b78);},'ElhpB':_0x2a046a(0x1bb),'efrXk':function(_0x2ff2ef,_0x2c88eb,_0x4b746d,_0x71f29e){return _0x2ff2ef(_0x2c88eb,_0x4b746d,_0x71f29e);}},_0x1c23b5=await _0x1cccc4['kcMDU'](getEnabledHookContext,_0xf94a0e),_0x44c403=_0x1c23b5?.[_0x2a046a(0x1ad)]??null;let _0x17d2e8=!![];if(!_0x44c403){await trackStop(_0x44c403,![],_0x17d2e8);return;}try{const _0x59d807=getSessionEntry(_0x44c403);if(!_0x59d807){await trackStop(_0x44c403,!![],_0x17d2e8);return;}const _0x1e9d40=await getToken(),_0x4de82a='https://dashboard.ranger.net/features/'+_0x59d807['featureId'];let _0x10b934=null,_0x3585c0=![],_0x3b7674=![];if(_0x1e9d40)try{const _0x2da885=await getFeature(_0x59d807[_0x2a046a(0x1b5)]);_0x10b934=_0x2da885['currentSessionId']??null;const _0x436c27=_0x2da885['checklistItems']['filter'](_0x519112=>_0x519112['sessionId']===_0x10b934);_0x3585c0=_0x436c27[_0x2a046a(0x1b3)](_0x29fff8=>_0x29fff8['status']!=='verified'&&_0x29fff8[_0x2a046a(0x1bd)]!=='blocked'&&_0x29fff8[_0x2a046a(0x1bd)]!=='closed'&&_0x29fff8[_0x2a046a(0x1bd)]!=='incomplete'),_0x3b7674=_0x436c27[_0x2a046a(0x1b3)](_0x4c318e=>_0x4c318e['status']==='verification_in_progress');}catch{}if(_0x1e9d40&&_0x10b934&&_0x3585c0){if(!_0x3b7674&&_0x1cccc4[_0x2a046a(0x1b7)](shouldShowStopReminder,_0x44c403)){const _0x59b509={'hookSpecificOutput':{'hookEventName':_0x1cccc4['ElhpB'],'additionalContext':_0x2a046a(0x1b9)+_0x4de82a}};console[_0x2a046a(0x1ba)](JSON[_0x2a046a(0x1bc)](_0x59b509));}}if(_0x1e9d40&&_0x10b934&&!_0x3585c0)try{await concludeSession(_0x59d807['featureId'],_0x10b934);}catch{}await _0x1cccc4['efrXk'](trackStop,_0x44c403,!![],_0x17d2e8);return;}catch{await trackStop(_0x44c403,!![],_0x17d2e8);return;}}async function trackStop(_0x2ea343,_0x27bc3b,_0x12effd){const _0x158c0e=_0x2201,_0x4fcd2f={'HXKyP':_0x158c0e(0x1b4),'VNcTq':function(_0x35d786,_0x345b06){return _0x35d786??_0x345b06;}};try{const _0x47128d=createTelemetryCollector(_0x4fcd2f[_0x158c0e(0x1ae)]);await _0x47128d[_0x158c0e(0x1b8)]({'sessionId':_0x4fcd2f['VNcTq'](_0x2ea343,undefined),'hooksEnabled':_0x27bc3b,'stopAllowed':_0x12effd}),await _0x47128d[_0x158c0e(0x1ab)]('success');}catch{}}
1
+ (function(_0x97f9bf,_0x577077){const _0x172fac=_0x119d,_0x1a2a46=_0x97f9bf();while(!![]){try{const _0x69cb84=-parseInt(_0x172fac(0x13a))/0x1*(parseInt(_0x172fac(0x142))/0x2)+-parseInt(_0x172fac(0x13d))/0x3+-parseInt(_0x172fac(0x141))/0x4+-parseInt(_0x172fac(0x14b))/0x5*(-parseInt(_0x172fac(0x140))/0x6)+parseInt(_0x172fac(0x144))/0x7+-parseInt(_0x172fac(0x139))/0x8+-parseInt(_0x172fac(0x149))/0x9*(-parseInt(_0x172fac(0x151))/0xa);if(_0x69cb84===_0x577077)break;else _0x1a2a46['push'](_0x1a2a46['shift']());}catch(_0x58135c){_0x1a2a46['push'](_0x1a2a46['shift']());}}}(_0x5bfe,0x9d79f));import{getToken}from'../utils/keychain.js';import{getFeature,concludeSession}from'../utils/featureApi.js';import{getSessionEntry,shouldShowStopReminder}from'../utils/sessionCache.js';import{getEnabledHookContext}from'./output.js';function _0x5bfe(){const _0x3b80e0=['featureId','rXYvA','583088tSIYfT','564254sliqts','KkXix','KtMXW','1316931CJqDfK','PNMWD','filter','18PeNYwn','2247028kXyEJb','2kWmqgn','https://dashboard.ranger.net/features/','7632079YpOYkd','cDVAJ','hook:stop','verification_in_progress','some','912393EwDrKe','success','804935wWCZHy','sessionId','trackCommandEnd','uqCFH','stringify','log','70PzpYrW','status'];_0x5bfe=function(){return _0x3b80e0;};return _0x5bfe();}function _0x119d(_0x222413,_0x5253ea){_0x222413=_0x222413-0x139;const _0x5bfebe=_0x5bfe();let _0x119d61=_0x5bfebe[_0x222413];return _0x119d61;}import{createTelemetryCollector}from'../utils/telemetry.js';export async function stopHook(_0x22b32c){const _0x5f5110=_0x119d,_0x3cf3cc={'KtMXW':function(_0x2f5000,_0x5f5294){return _0x2f5000(_0x5f5294);},'rXYvA':function(_0x28ca64,_0x58491c){return _0x28ca64(_0x58491c);},'PNMWD':function(_0x3aa6fd,_0x17671a){return _0x3aa6fd&&_0x17671a;},'uqCFH':function(_0x4f15c2,_0x594cad,_0x19c998,_0x3da549){return _0x4f15c2(_0x594cad,_0x19c998,_0x3da549);}},_0x5c82e9=await _0x3cf3cc[_0x5f5110(0x13c)](getEnabledHookContext,_0x22b32c),_0x9ee558=_0x5c82e9?.[_0x5f5110(0x14c)]??null;let _0x58f042=!![];if(!_0x9ee558){await trackStop(_0x9ee558,![],_0x58f042);return;}try{const _0x3f611f=_0x3cf3cc['KtMXW'](getSessionEntry,_0x9ee558);if(!_0x3f611f){await trackStop(_0x9ee558,!![],_0x58f042);return;}const _0x19d4fa=await getToken(),_0xe506c8=_0x5f5110(0x143)+_0x3f611f['featureId'];let _0x37eff3=null,_0x42b813=![],_0x92e8eb=![];if(_0x19d4fa)try{const _0x52c969=await getFeature(_0x3f611f['featureId']);_0x37eff3=_0x52c969['currentSessionId']??null;const _0x33b3d3=_0x52c969['checklistItems'][_0x5f5110(0x13f)](_0x1267f2=>_0x1267f2['sessionId']===_0x37eff3);_0x42b813=_0x33b3d3[_0x5f5110(0x148)](_0x577178=>_0x577178['status']!=='verified'&&_0x577178['status']!=='blocked'&&_0x577178[_0x5f5110(0x152)]!=='closed'&&_0x577178[_0x5f5110(0x152)]!=='incomplete'),_0x92e8eb=_0x33b3d3[_0x5f5110(0x148)](_0x340e16=>_0x340e16['status']===_0x5f5110(0x147));}catch{}if(_0x19d4fa&&_0x37eff3&&_0x42b813){if(!_0x92e8eb&&_0x3cf3cc[_0x5f5110(0x154)](shouldShowStopReminder,_0x9ee558)){const _0x111df9={'hookSpecificOutput':{'hookEventName':'Stop','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'+_0xe506c8}};console[_0x5f5110(0x150)](JSON[_0x5f5110(0x14f)](_0x111df9));}}if(_0x3cf3cc[_0x5f5110(0x13e)](_0x19d4fa,_0x37eff3)&&!_0x42b813)try{await concludeSession(_0x3f611f[_0x5f5110(0x153)],_0x37eff3);}catch{}await trackStop(_0x9ee558,!![],_0x58f042);return;}catch{await _0x3cf3cc[_0x5f5110(0x14e)](trackStop,_0x9ee558,!![],_0x58f042);return;}}async function trackStop(_0x31c1e7,_0x267f87,_0x3f1369){const _0x4293cc=_0x119d,_0x3b3db9={'cDVAJ':function(_0x3af439,_0xd756ce){return _0x3af439(_0xd756ce);},'KkXix':_0x4293cc(0x146)};try{const _0x2d09e0=_0x3b3db9[_0x4293cc(0x145)](createTelemetryCollector,_0x3b3db9[_0x4293cc(0x13b)]);await _0x2d09e0['trackCommandStart']({'sessionId':_0x31c1e7??undefined,'hooksEnabled':_0x267f87,'stopAllowed':_0x3f1369}),await _0x2d09e0[_0x4293cc(0x14d)](_0x4293cc(0x14a));}catch{}}
@@ -1 +1 @@
1
- (function(_0x24fe5b,_0x10b675){var _0x1bbb51=_0x403a,_0x821093=_0x24fe5b();while(!![]){try{var _0x2b34cd=parseInt(_0x1bbb51(0x1d3))/0x1*(-parseInt(_0x1bbb51(0x1cd))/0x2)+parseInt(_0x1bbb51(0x1d2))/0x3+-parseInt(_0x1bbb51(0x1d4))/0x4+-parseInt(_0x1bbb51(0x1d1))/0x5+-parseInt(_0x1bbb51(0x1d5))/0x6*(parseInt(_0x1bbb51(0x1cf))/0x7)+-parseInt(_0x1bbb51(0x1ce))/0x8+parseInt(_0x1bbb51(0x1d0))/0x9;if(_0x2b34cd===_0x10b675)break;else _0x821093['push'](_0x821093['shift']());}catch(_0x5dbf47){_0x821093['push'](_0x821093['shift']());}}}(_0x1ed0,0x6a649));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 _0x1ed0(){var _0x403880=['2989420QzbyAk','1838961qDVNyJ','184udzwcA','443032KQnNVj','6UGbGbK','6118MPYXhc','725056GlKsCz','4160527sYazPC','16013601NrQaQD'];_0x1ed0=function(){return _0x403880;};return _0x1ed0();}export{skillup}from'./skillup.js';export{envList}from'./env.js';export{hook}from'./hook.js';function _0x403a(_0x2e65a6,_0x2fcbf7){_0x2e65a6=_0x2e65a6-0x1cd;var _0x1ed03e=_0x1ed0();var _0x403add=_0x1ed03e[_0x2e65a6];return _0x403add;}export{setupCi}from'./setupCi.js';export{migrateProfile}from'./migrateProfile.js';
1
+ (function(_0x59f9ce,_0x1ebe22){var _0x5910f2=_0x3624,_0x2f859f=_0x59f9ce();while(!![]){try{var _0x102409=-parseInt(_0x5910f2(0x1aa))/0x1*(parseInt(_0x5910f2(0x1ad))/0x2)+-parseInt(_0x5910f2(0x1ac))/0x3+-parseInt(_0x5910f2(0x1a4))/0x4*(parseInt(_0x5910f2(0x1a5))/0x5)+-parseInt(_0x5910f2(0x1a7))/0x6*(parseInt(_0x5910f2(0x1b0))/0x7)+-parseInt(_0x5910f2(0x1a8))/0x8*(-parseInt(_0x5910f2(0x1a9))/0x9)+parseInt(_0x5910f2(0x1ab))/0xa*(parseInt(_0x5910f2(0x1a6))/0xb)+parseInt(_0x5910f2(0x1ae))/0xc*(parseInt(_0x5910f2(0x1af))/0xd);if(_0x102409===_0x1ebe22)break;else _0x2f859f['push'](_0x2f859f['shift']());}catch(_0x159153){_0x2f859f['push'](_0x2f859f['shift']());}}}(_0x3c99,0x3ef4a));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';function _0x3624(_0x4ffbbf,_0xc7627e){_0x4ffbbf=_0x4ffbbf-0x1a4;var _0x3c9981=_0x3c99();var _0x36247d=_0x3c9981[_0x4ffbbf];return _0x36247d;}export{updateEnv}from'./updateEnv.js';function _0x3c99(){var _0x1575ee=['114338RdOVKh','12oPYCkz','6293573OHbvxP','376642BAREJF','16KXbqiq','383135eZylRE','18524RAegTx','24bIqglt','1463744wOctAw','9rdumyB','2noWTqE','1510BIkKLp','82311SmTmby'];_0x3c99=function(){return _0x1575ee;};return _0x3c99();}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';