@ranger-testing/ranger-cli 2.5.4-alpha.1d983c3-19 → 2.5.4-alpha.2709b75-22

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 (79) hide show
  1. package/build/cli.js +1 -1
  2. package/build/commands/addEnv.js +1 -1
  3. package/build/commands/authEncrypt.js +1 -1
  4. package/build/commands/clean.js +1 -1
  5. package/build/commands/config.js +1 -1
  6. package/build/commands/deleteProfile.js +1 -0
  7. package/build/commands/env.js +1 -1
  8. package/build/commands/feature.js +1 -1
  9. package/build/commands/hook.js +1 -1
  10. package/build/commands/hooks/autoPrompt.js +1 -1
  11. package/build/commands/hooks/disable.js +1 -1
  12. package/build/commands/hooks/enable.js +1 -1
  13. package/build/commands/hooks/exitPlanMode.js +1 -1
  14. package/build/commands/hooks/index.js +1 -1
  15. package/build/commands/hooks/output.js +1 -1
  16. package/build/commands/hooks/planReminder.js +1 -1
  17. package/build/commands/hooks/planStart.js +1 -1
  18. package/build/commands/hooks/postEdit.js +1 -1
  19. package/build/commands/hooks/preCompact.js +1 -1
  20. package/build/commands/hooks/sessionEnd.js +1 -1
  21. package/build/commands/hooks/sessionStart.js +1 -1
  22. package/build/commands/hooks/stopHook.js +1 -1
  23. package/build/commands/index.js +1 -1
  24. package/build/commands/login.js +1 -1
  25. package/build/commands/mcpBootstrap.js +1 -1
  26. package/build/commands/migrateProfile.js +1 -1
  27. package/build/commands/setup/claude.js +1 -1
  28. package/build/commands/setup/opencode.js +1 -1
  29. package/build/commands/setupCi.js +1 -1
  30. package/build/commands/skillup.js +1 -1
  31. package/build/commands/start.js +1 -1
  32. package/build/commands/status.js +1 -1
  33. package/build/commands/update.js +1 -1
  34. package/build/commands/updateEnv.js +1 -1
  35. package/build/commands/useEnv.js +1 -1
  36. package/build/commands/utils/activeProfile.js +1 -1
  37. package/build/commands/utils/agentEnv.js +1 -1
  38. package/build/commands/utils/browserSessionsApi.js +1 -1
  39. package/build/commands/utils/claudeConfig.js +1 -1
  40. package/build/commands/utils/claudeOverrideSettings.js +1 -1
  41. package/build/commands/utils/claudePlugin.js +1 -1
  42. package/build/commands/utils/cloudProfile.js +1 -1
  43. package/build/commands/utils/cloudProfileSession.js +1 -1
  44. package/build/commands/utils/crypto.js +1 -1
  45. package/build/commands/utils/desirePathLog.js +1 -1
  46. package/build/commands/utils/deviceAuth.js +1 -1
  47. package/build/commands/utils/environment.js +1 -1
  48. package/build/commands/utils/featureApi.js +1 -1
  49. package/build/commands/utils/fixWebmDuration.js +1 -1
  50. package/build/commands/utils/gitTracked.js +1 -1
  51. package/build/commands/utils/keychain.js +1 -1
  52. package/build/commands/utils/legacyWarning.js +1 -1
  53. package/build/commands/utils/localAgentInstallationsApi.js +1 -1
  54. package/build/commands/utils/matchAuthEnvironment.js +1 -1
  55. package/build/commands/utils/mcpImageBase64.js +1 -1
  56. package/build/commands/utils/model.js +1 -1
  57. package/build/commands/utils/opencodeConfig.js +1 -1
  58. package/build/commands/utils/playwrightCli.js +1 -1
  59. package/build/commands/utils/profileMessages.js +1 -1
  60. package/build/commands/utils/profileSetupBanner.js +1 -1
  61. package/build/commands/utils/projectsConfig.js +1 -1
  62. package/build/commands/utils/rangerConfig.js +1 -1
  63. package/build/commands/utils/rangerRoot.js +1 -1
  64. package/build/commands/utils/resolveProfileContext.js +1 -1
  65. package/build/commands/utils/resolveProfileUrl.js +1 -1
  66. package/build/commands/utils/retry.js +1 -1
  67. package/build/commands/utils/sessionCache.js +1 -1
  68. package/build/commands/utils/settings.js +1 -1
  69. package/build/commands/utils/skillContent.js +1 -1
  70. package/build/commands/utils/skills.js +1 -1
  71. package/build/commands/utils/stitchWebmFiles.js +1 -1
  72. package/build/commands/utils/telemetry.js +1 -1
  73. package/build/commands/utils/tokenRefresh.js +1 -1
  74. package/build/commands/utils/traceSnapshotMapper.js +1 -1
  75. package/build/commands/utils/userApi.js +1 -1
  76. package/build/commands/utils/version.js +1 -1
  77. package/build/commands/verifyFeature.js +1 -1
  78. package/build/commands/verifyFeatureCli.js +1 -1
  79. package/package.json +1 -1
@@ -1 +1 @@
1
- const _0x2d6a78=_0x5d88;(function(_0x1af68e,_0xba6394){const _0x22dbf4=_0x5d88,_0x17becb=_0x1af68e();while(!![]){try{const _0x45e9b7=parseInt(_0x22dbf4(0x109))/0x1+parseInt(_0x22dbf4(0x18b))/0x2+-parseInt(_0x22dbf4(0x15f))/0x3+parseInt(_0x22dbf4(0x1d5))/0x4+-parseInt(_0x22dbf4(0x102))/0x5*(-parseInt(_0x22dbf4(0x1a6))/0x6)+-parseInt(_0x22dbf4(0x14e))/0x7+-parseInt(_0x22dbf4(0x15d))/0x8;if(_0x45e9b7===_0xba6394)break;else _0x17becb['push'](_0x17becb['shift']());}catch(_0x552e21){_0x17becb['push'](_0x17becb['shift']());}}}(_0x1fbe,0x3d03e));import{readFile,writeFile,mkdir}from'fs/promises';import{join}from'path';import{existsSync}from'fs';import{execSync}from'child_process';import _0xa97b08 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';function _0x5d88(_0x596bab,_0x5c8008){_0x596bab=_0x596bab-0xf8;const _0x1fbec4=_0x1fbe();let _0x5d88d8=_0x1fbec4[_0x596bab];return _0x5d88d8;}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=_0x2d6a78(0x129),bold=_0x294574=>_0x2d6a78(0x1d1)+_0x294574+'\x1b[0m';function getGitRepoUrl(){const _0x468291=_0x2d6a78,_0x16364d={'aXqsL':'utf-8','PAmvz':'pipe','KPXGp':'github.com/'};try{const _0x11a02a=execSync(_0x468291(0x105),{'encoding':_0x16364d[_0x468291(0x148)],'stdio':['pipe','pipe',_0x16364d[_0x468291(0xfc)]]})[_0x468291(0x106)]();return _0x11a02a[_0x468291(0x193)](/\.git$/,'')[_0x468291(0x193)](/^git@github\.com:/,_0x16364d['KPXGp'])[_0x468291(0x193)](/^https?:\/\//,'');}catch{return undefined;}}function getGitBranch(){const _0x944bb3=_0x2d6a78,_0x33a370={'qARaD':function(_0x33da5e,_0x3fabaf,_0x4d87a0){return _0x33da5e(_0x3fabaf,_0x4d87a0);},'pSSsW':'git\x20rev-parse\x20--abbrev-ref\x20HEAD','ztTIE':'utf-8','TuaMF':_0x944bb3(0x169)};try{return _0x33a370['qARaD'](execSync,_0x33a370['pSSsW'],{'encoding':_0x33a370[_0x944bb3(0x13f)],'stdio':['pipe',_0x33a370[_0x944bb3(0x12f)],_0x33a370[_0x944bb3(0x12f)]]})['trim']();}catch{return undefined;}}export async function getActiveFeatureId(){const _0x5f03ef=_0x2d6a78,_0x14bae6={'FFtTw':function(_0x21b344){return _0x21b344();},'AvIgF':function(_0x578460,_0x125ec6,_0x2eb49a){return _0x578460(_0x125ec6,_0x2eb49a);},'LmKsu':'utf-8'},_0xaa8b6c=join(_0x14bae6[_0x5f03ef(0x171)](getRangerDir),ACTIVE_FEATURE_FILE);if(!existsSync(_0xaa8b6c))return null;try{const _0xc8c8eb=await _0x14bae6[_0x5f03ef(0x19b)](readFile,_0xaa8b6c,_0x14bae6[_0x5f03ef(0x107)]);return _0xc8c8eb['trim']()||null;}catch{return null;}}async function setActiveFeatureId(_0x4fbf32){const _0x37e427=_0x2d6a78,_0x1070fe={'AjJNf':function(_0x51afb9,_0x5f3160,_0x1181fb){return _0x51afb9(_0x5f3160,_0x1181fb);}},_0x21ca71=getRangerDir(),_0x2de6ee=_0x1070fe[_0x37e427(0x1cd)](join,_0x21ca71,ACTIVE_FEATURE_FILE);!existsSync(_0x21ca71)&&await mkdir(_0x21ca71,{'recursive':!![]}),await writeFile(_0x2de6ee,_0x4fbf32,_0x37e427(0xfe));}function getProgressDisplay(_0x4ac2dc){const _0x1445f5=_0x2d6a78,_0x582c8f={'nfamo':function(_0xf75a9e,_0xd19e2){return _0xf75a9e+_0xd19e2;},'kamCf':function(_0x359104,_0x29c7b1){return _0x359104===_0x29c7b1;},'gtrPu':function(_0x5c5094,_0x1793e2){return _0x5c5094*_0x1793e2;},'ubunB':function(_0x9a49e4,_0x54b688){return _0x9a49e4/_0x54b688;}},_0x5f0c42=_0x4ac2dc[_0x1445f5(0x182)]||0x0,_0x4005d4=_0x4ac2dc['verificationInProgressItems']||0x0,_0x5f0765=_0x4ac2dc[_0x1445f5(0x165)]||0x0,_0x22c078=_0x4ac2dc['incompleteItems']||0x0,_0x42a1c8=_0x4ac2dc[_0x1445f5(0x103)]||0x0,_0x3d2225=_0x582c8f['nfamo'](_0x582c8f[_0x1445f5(0x104)](_0x5f0c42,_0x4005d4)+_0x5f0765+_0x22c078,_0x42a1c8);if(_0x582c8f[_0x1445f5(0x10b)](_0x3d2225,0x0))return'-';const _0x58b0c8=0xa,_0x1e0386=Math['round'](_0x582c8f[_0x1445f5(0x1b3)](_0x582c8f['ubunB'](_0x5f0c42,_0x3d2225),_0x58b0c8)),_0x6f2fd6=_0x582c8f[_0x1445f5(0x104)]('█'['repeat'](_0x1e0386),'░'['repeat'](_0x58b0c8-_0x1e0386)),_0x46cc06=[];if(_0x5f0765>0x0)_0x46cc06[_0x1445f5(0x154)](_0x5f0765+'\x20blocked');if(_0x22c078>0x0)_0x46cc06['push'](_0x22c078+'\x20incomplete');if(_0x4005d4>0x0)_0x46cc06[_0x1445f5(0x154)](_0x4005d4+_0x1445f5(0x14c));const _0x30a5f0=_0x46cc06['length']>0x0?'\x20('+_0x46cc06[_0x1445f5(0x1c1)](',\x20')+')':'';return _0x6f2fd6+'\x20'+_0x5f0c42+'/'+_0x3d2225+'\x20verified'+_0x30a5f0;}function getCurrentSessionItems(_0x6ffe4e,_0x178100){const _0x34f591=_0x2d6a78;if(!_0x6ffe4e[_0x34f591(0x17a)])return _0x178100[_0x34f591(0x195)](_0x1c4583=>!_0x1c4583['sessionId']);return _0x178100[_0x34f591(0x195)](_0xd5dbda=>_0xd5dbda[_0x34f591(0x1d4)]===_0x6ffe4e['currentSessionId']||!_0xd5dbda['sessionId']);}function displayFeature(_0x144316,_0x193ad0){const _0x2184c2=_0x2d6a78,_0x925123={'TfUMO':function(_0x29bb3a,_0x19eed5){return _0x29bb3a(_0x19eed5);},'YslGQ':function(_0x1cbc08,_0x4fdc85){return _0x1cbc08>_0x4fdc85;},'WfKsu':function(_0xcff8c0,_0x4b1906){return _0xcff8c0<_0x4b1906;},'Wdrxk':_0x2184c2(0x189),'PPynX':function(_0x9c0029,_0x39fb20){return _0x9c0029===_0x39fb20;},'HJYEC':'verified','gIQKf':_0x2184c2(0x118),'nJaxI':function(_0x724b24,_0x330fc0){return _0x724b24===_0x330fc0;},'JwNBK':'blocked','xuIEi':'closed','Bumja':function(_0x25f335,_0x5efae6){return _0x25f335===_0x5efae6;},'vfsaV':function(_0x5cc94e,_0x170583){return _0x5cc94e!==_0x170583;},'DtQpf':function(_0xa45560,_0x537bc1){return _0xa45560!==_0x537bc1;},'rAuvB':'\x20[has\x20reviewer\x20feedback]'};console['log']('\x0a'+_0x144316['name']+'\x20('+_0x144316['dashboardUrl']+')');_0x144316['stats']&&console[_0x2184c2(0x168)](_0x2184c2(0x150)+_0x925123[_0x2184c2(0x12e)](getProgressDisplay,_0x144316[_0x2184c2(0x180)]));_0x144316['description']&&console['log'](_0x2184c2(0x151)+_0x144316['description']);_0x144316['gitRepoUrl']&&console['log'](_0x2184c2(0x1a2)+_0x144316[_0x2184c2(0x1a7)]);_0x144316['gitBranch']&&console[_0x2184c2(0x168)](_0x2184c2(0x17c)+_0x144316['gitBranch']);console['log']('\x20\x20\x20Created:\x20'+new Date(_0x144316[_0x2184c2(0xf8)])[_0x2184c2(0x16f)]());_0x144316[_0x2184c2(0x128)]&&console[_0x2184c2(0x168)](_0x2184c2(0x1bc)+new Date(_0x144316[_0x2184c2(0x128)])[_0x2184c2(0x16f)]());if(_0x193ad0&&_0x925123['YslGQ'](_0x193ad0['length'],0x0)){console['log'](_0x2184c2(0x140));for(let _0x502bba=0x0;_0x925123['WfKsu'](_0x502bba,_0x193ad0[_0x2184c2(0x12a)]);_0x502bba++){const _0x26499f=_0x193ad0[_0x502bba];let _0x3803b3;if(_0x26499f[_0x2184c2(0x1a5)]==='closed'&&_0x26499f['terminalReason']===_0x925123[_0x2184c2(0x1b6)])_0x3803b3='✅';else{if(_0x925123['PPynX'](_0x26499f[_0x2184c2(0x1a5)],_0x925123['HJYEC']))_0x3803b3='🟢';else{if(_0x925123['PPynX'](_0x26499f[_0x2184c2(0x1a5)],_0x925123[_0x2184c2(0x176)]))_0x3803b3='🟠';else{if(_0x925123['nJaxI'](_0x26499f['status'],_0x925123[_0x2184c2(0x133)]))_0x3803b3='🛑';else{if(_0x26499f[_0x2184c2(0x1a5)]===_0x925123['xuIEi'])_0x3803b3='⛔';else _0x925123['Bumja'](_0x26499f[_0x2184c2(0x1a5)],_0x2184c2(0x1b5))?_0x3803b3='⏳':_0x3803b3='⬜';}}}}const _0x581fb2=_0x26499f[_0x2184c2(0x1db)]>0x1?'\x20(v'+_0x26499f['version']+')':'',_0x562f99=_0x26499f[_0x2184c2(0x1db)]>0x1&&_0x26499f['parentItemId']&&_0x925123['vfsaV'](_0x26499f['status'],_0x2184c2(0x167))&&_0x925123['DtQpf'](_0x26499f['status'],_0x925123['HJYEC'])?_0x925123[_0x2184c2(0xfa)]:'';console[_0x2184c2(0x168)](_0x2184c2(0x11a)+(_0x502bba+0x1)+'.\x20'+_0x3803b3+'\x20'+_0x26499f[_0x2184c2(0xff)]+_0x581fb2+_0x562f99);_0x26499f['status']==='blocked'&&_0x26499f[_0x2184c2(0x127)]&&console[_0x2184c2(0x168)](_0x2184c2(0x1cf)+_0x26499f[_0x2184c2(0x127)]);_0x925123[_0x2184c2(0x1a1)](_0x26499f[_0x2184c2(0x1a5)],_0x925123['gIQKf'])&&_0x26499f['incompleteReason']&&console['log']('\x20\x20\x20\x20\x20\x20Incomplete:\x20'+_0x26499f['incompleteReason']);if(_0x26499f[_0x2184c2(0x1a5)]===_0x2184c2(0x167)&&_0x925123[_0x2184c2(0x11b)](_0x26499f[_0x2184c2(0x170)],'approved'))console['log']('\x20\x20\x20\x20\x20\x20Approved');else _0x26499f['status']==='closed'&&_0x26499f[_0x2184c2(0x12b)]&&console[_0x2184c2(0x168)](_0x2184c2(0x138)+_0x26499f['canceledReason']);}}}export async function featureCreate(_0x11e835,_0x459682){const _0x3ba2db=_0x2d6a78,_0x1623b5={'YHZEr':function(_0x98892d){return _0x98892d();},'mwPlb':function(_0x142bbd,_0x4c3f7a){return _0x142bbd===_0x4c3f7a;},'XkPfW':function(_0x48845b){return _0x48845b();},'jcuYt':function(_0x398d41,_0x5ccc37){return _0x398d41(_0x5ccc37);}},{envNames:_0x20ce43}=await getEnvNames();if(_0x20ce43['length']===0x0&&!process['env'][_0x3ba2db(0x194)]){let _0x122369=0x0;try{_0x122369=(await _0x1623b5[_0x3ba2db(0x16b)](listCloudProfiles))['length'];}catch{_0x122369=0x1;}_0x1623b5['mwPlb'](_0x122369,0x0)&&console['warn']('\x0a'+formatProfileRequiredMessage(_0x27f5a1=>bold(_0x27f5a1)));}const _0x1aa3b6=_0x459682['scenarios']?_0x459682[_0x3ba2db(0x153)]['map'](_0x9674b7=>_0x9674b7[_0x3ba2db(0x106)]()):[],_0x58c3b6=getGitRepoUrl(),_0x423014=_0x1623b5['XkPfW'](getGitBranch);console['log'](_0x3ba2db(0x179));const _0x47af20=await _0x1623b5[_0x3ba2db(0x14d)](createFeature,{'name':_0x11e835,'description':_0x459682[_0x3ba2db(0xff)],'checklist':_0x1aa3b6,'gitRepoUrl':_0x58c3b6,'gitBranch':_0x423014});await _0x1623b5['jcuYt'](setActiveFeatureId,_0x47af20['id']),await _0x1623b5[_0x3ba2db(0x14d)](tryStartCurrentSession,_0x47af20['id']);const _0x2dbfd1=process[_0x3ba2db(0x18e)][_0x3ba2db(0x1dd)];_0x2dbfd1&&registerSession(_0x2dbfd1,_0x47af20['id']),console[_0x3ba2db(0x168)]('\x0a✅\x20Feature\x20review\x20created:\x20'+_0x47af20['id']),displayFeature(_0x47af20,_0x47af20['checklistItems']),console[_0x3ba2db(0x168)]('\x0a➡️\x20\x20Set\x20as\x20active\x20feature\x20review');}export async function featureList(_0xa25f2d){const _0x4863ad=_0x2d6a78,_0x5d447c={'KGrRv':function(_0x50521e,_0xf06265){return _0x50521e(_0xf06265);},'oXejq':_0x4863ad(0x1a4),'ARRcu':function(_0x16ae8e,_0x412594){return _0x16ae8e(_0x412594);},'uofgN':'\x20--current-branch'},_0x565a91={'limit':_0xa25f2d[_0x4863ad(0x117)]??0xa,'offset':_0xa25f2d[_0x4863ad(0x1c4)]??0x0,'includeDeleted':_0xa25f2d['includeDeleted']};_0xa25f2d[_0x4863ad(0x13e)]&&(_0x565a91[_0x4863ad(0x1a7)]=getGitRepoUrl(),_0x565a91[_0x4863ad(0x1ba)]=getGitBranch());const _0x2ea854=await _0x5d447c['KGrRv'](listFeatures,_0x565a91);if(_0x2ea854[_0x4863ad(0x177)][_0x4863ad(0x12a)]===0x0){console['log'](_0x5d447c[_0x4863ad(0x134)]);return;}const _0xa0aec9=_0x2ea854[_0x4863ad(0x187)]>_0x2ea854[_0x4863ad(0x177)]['length']?'Showing\x20'+_0x2ea854[_0x4863ad(0x177)][_0x4863ad(0x12a)]+'\x20of\x20'+_0x2ea854['totalCount']:_0x2ea854['totalCount']+_0x4863ad(0x166);console['log']('\x0a'+_0xa0aec9+':\x0a');for(const _0x5dceb8 of _0x2ea854['items']){console[_0x4863ad(0x168)](''+_0x5dceb8[_0x4863ad(0x1bb)]),console['log']('\x20\x20\x20ID:\x20'+_0x5dceb8['id']),_0x5dceb8['stats']&&console[_0x4863ad(0x168)](_0x4863ad(0x150)+_0x5d447c['ARRcu'](getProgressDisplay,_0x5dceb8[_0x4863ad(0x180)])),_0x5dceb8['gitBranch']&&console[_0x4863ad(0x168)]('\x20\x20\x20Branch:\x20'+_0x5dceb8[_0x4863ad(0x1ba)]),console[_0x4863ad(0x168)](_0x4863ad(0x126)+new Date(_0x5dceb8[_0x4863ad(0xf8)])[_0x4863ad(0x132)]()),console['log']('');}const _0x333b6d=_0x565a91['limit']??0xa,_0x2f3911=(_0x565a91['offset']??0x0)+_0x2ea854[_0x4863ad(0x177)][_0x4863ad(0x12a)];if(_0x2f3911<_0x2ea854[_0x4863ad(0x187)]){const _0x4870f3=_0x333b6d!==0xa?'\x20--limit\x20'+_0x333b6d:'',_0x32cbd1=_0xa25f2d[_0x4863ad(0x13e)]?_0x5d447c['uofgN']:'',_0x46e66d=_0xa25f2d['includeDeleted']?'\x20--include-deleted':'';console['log']('Next\x20page:\x20ranger\x20list\x20--offset\x20'+_0x2f3911+_0x4870f3+_0x32cbd1+_0x46e66d);}}export async function featureShow(_0x4da754){const _0x271d48=_0x2d6a78,_0x17c9e6={'maiKc':function(_0x44ac44){return _0x44ac44();},'wkEyj':function(_0x23b4b9,_0x58a024){return _0x23b4b9(_0x58a024);},'hgfWu':function(_0x387b10,_0xc0ee71,_0x15d7df){return _0x387b10(_0xc0ee71,_0x15d7df);}},_0x62dc30=_0x4da754||await _0x17c9e6[_0x271d48(0x146)](getActiveFeatureId);if(!_0x62dc30)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 _0x224ec8=await _0x17c9e6[_0x271d48(0x1ce)](getFeature,_0x62dc30);_0x17c9e6[_0x271d48(0x1d9)](displayFeature,_0x224ec8,_0x224ec8['checklistItems']);}export async function featureResume(_0x14a04c){const _0xc60e31=_0x2d6a78,_0x478ccb={'ArQol':function(_0x24e9fa,_0x55cc78){return _0x24e9fa!==_0x55cc78;},'VaTLY':function(_0x423db2,_0x3c32ed){return _0x423db2(_0x3c32ed);},'rRTMS':function(_0x4aacc6,_0x3fbf85,_0x560fab){return _0x4aacc6(_0x3fbf85,_0x560fab);},'YHJgf':function(_0x40bc6c){return _0x40bc6c();},'JvVtT':function(_0x7ad1f5,_0x5f0472){return _0x7ad1f5&&_0x5f0472;},'Puraj':'any','uJQik':function(_0x34724b,_0x4952e7){return _0x34724b(_0x4952e7);},'fmfFT':function(_0x1384a6,_0x12116c){return _0x1384a6===_0x12116c;},'DxIuV':'\x0aNo\x20matching\x20active\x20feature\x20reviews\x20found.','dtLEg':_0xc60e31(0x178),'CEbfa':function(_0x11bc83,_0x3e8aaa){return _0x11bc83===_0x3e8aaa;},'zEkkq':'list','vaxXp':'selected','AVZWV':function(_0x531d49,_0x4664a1){return _0x531d49(_0x4664a1);}};if(_0x14a04c){const _0x28cf65=await getFeature(_0x14a04c);await setActiveFeatureId(_0x28cf65['id']);const _0x113e29=getGitBranch();_0x113e29&&_0x478ccb[_0xc60e31(0x174)](_0x113e29,_0x28cf65[_0xc60e31(0x1ba)])&&(await updateFeature(_0x28cf65['id'],{'gitBranch':_0x113e29}),console[_0xc60e31(0x168)](_0xc60e31(0x199)+_0x113e29));console['log'](_0xc60e31(0x116)+_0x28cf65[_0xc60e31(0x1bb)]+'\x20('+_0x28cf65['id']+')'),await _0x478ccb['VaTLY'](tryStartCurrentSession,_0x28cf65['id']);const _0x2071af=process[_0xc60e31(0x18e)]['CLAUDE_SESSION_ID'];_0x2071af&&_0x478ccb[_0xc60e31(0x183)](registerSession,_0x2071af,_0x28cf65['id']);displayFeature(_0x28cf65,_0x28cf65[_0xc60e31(0x161)]),await printFeedbackNudge(_0x28cf65['id']);return;}const _0x285c1e=getGitRepoUrl(),_0x36535c=_0x478ccb[_0xc60e31(0x125)](getGitBranch);if(_0x478ccb['JvVtT'](!_0x285c1e,!_0x36535c))throw new Error('Not\x20in\x20a\x20git\x20repository.');console[_0xc60e31(0x168)]('\x0aSearching\x20for\x20feature\x20reviews\x20matching:\x20'+(_0x285c1e||_0x478ccb['Puraj'])+'\x20/\x20'+(_0x36535c||_0x478ccb['Puraj'])+_0xc60e31(0x173));const _0x7181fb=await _0x478ccb['uJQik'](listFeatures,{'gitRepoUrl':_0x285c1e,'gitBranch':_0x36535c}),_0x1d5402=_0x7181fb[_0xc60e31(0x177)][_0xc60e31(0x195)](_0x436acf=>_0x436acf[_0xc60e31(0x1a5)]?_0x436acf['status']!==_0xc60e31(0x175):!_0x436acf['completedAt']);if(_0x478ccb['fmfFT'](_0x1d5402['length'],0x0)){console['log'](_0x478ccb[_0xc60e31(0x16e)]),console[_0xc60e31(0x168)](_0x478ccb['dtLEg']);return;}let _0x4bffc7;if(_0x478ccb[_0xc60e31(0x155)](_0x1d5402['length'],0x1))_0x4bffc7=_0x1d5402[0x0];else{const _0x5998f=process[_0xc60e31(0x1c7)]['isTTY']&&process['stdout']['isTTY'];if(!_0x5998f){console['log']('\x0aNon-interactive\x20mode\x20detected.\x20Multiple\x20feature\x20reviews\x20found:');for(const _0x32757a of _0x1d5402){console[_0xc60e31(0x168)]('\x20\x20'+_0x32757a['name']),console['log']('\x20\x20\x20\x20\x20ID:\x20'+_0x32757a['id']),_0x32757a['stats']&&console[_0xc60e31(0x168)]('\x20\x20\x20\x20\x20Progress:\x20'+getProgressDisplay(_0x32757a['stats'])),_0x32757a[_0xc60e31(0x1ba)]&&console[_0xc60e31(0x168)](_0xc60e31(0x14f)+_0x32757a['gitBranch']);}throw new Error('Please\x20specify\x20the\x20feature\x20review\x20ID:\x20ranger\x20resume\x20<id>');}const {selected:_0x3d529b}=await _0xa97b08[_0xc60e31(0x15c)]([{'type':_0x478ccb[_0xc60e31(0x149)],'name':_0x478ccb['vaxXp'],'message':'Multiple\x20feature\x20reviews\x20found.\x20Select\x20one:','choices':_0x1d5402['map'](_0x564fda=>({'name':_0x564fda['name']+'\x20('+_0x564fda['id']+')','value':_0x564fda['id']}))}]);_0x4bffc7=_0x1d5402['find'](_0x572e63=>_0x572e63['id']===_0x3d529b);}await setActiveFeatureId(_0x4bffc7['id']);_0x36535c&&_0x36535c!==_0x4bffc7[_0xc60e31(0x1ba)]&&(await _0x478ccb['rRTMS'](updateFeature,_0x4bffc7['id'],{'gitBranch':_0x36535c}),console[_0xc60e31(0x168)](_0xc60e31(0x199)+_0x36535c));console['log']('\x0a✅\x20Resumed\x20feature\x20review:\x20'+_0x4bffc7['name']+'\x20('+_0x4bffc7['id']+')'),await tryStartCurrentSession(_0x4bffc7['id']);const _0x41712c=await _0x478ccb['AVZWV'](getFeature,_0x4bffc7['id']),_0x151079=process[_0xc60e31(0x18e)]['CLAUDE_SESSION_ID'];_0x151079&&_0x478ccb['rRTMS'](registerSession,_0x151079,_0x41712c['id']),_0x478ccb['rRTMS'](displayFeature,_0x41712c,_0x41712c['checklistItems']),await printFeedbackNudge(_0x41712c['id']);}async function printFeedbackNudge(_0xf71159){const _0x1221a9=_0x2d6a78,_0xb5b2d={'UIGss':function(_0x37458f,_0x7870c2){return _0x37458f(_0x7870c2);},'rfPuX':function(_0x55e84b,_0x7f1623){return _0x55e84b>_0x7f1623;},'DAGAE':'\x20\x20\x20Run\x20`ranger\x20get-review`\x20to\x20see\x20what\x20needs\x20to\x20be\x20fixed.'};try{const {items:_0x9ab07a}=await _0xb5b2d['UIGss'](getActionItems,_0xf71159);let _0x3b2cf7=0x0,_0x789267=0x0;for(const _0x44ed94 of _0x9ab07a){const _0x2def08=await getItemFeedback(_0xf71159,_0x44ed94['id']);_0x2def08[_0x1221a9(0x1b4)]['length']>0x0&&(_0x3b2cf7+=_0x2def08['unaddressedComments']['length'],_0x789267++);}_0xb5b2d[_0x1221a9(0x1c8)](_0x3b2cf7,0x0)&&(console[_0x1221a9(0x168)](_0x1221a9(0x164)+_0x3b2cf7+_0x1221a9(0x16d)+_0x789267+_0x1221a9(0x1dc)),console[_0x1221a9(0x168)](_0xb5b2d['DAGAE']));}catch{}}async function tryStartCurrentSession(_0x707edf){const _0x63f490=_0x2d6a78;try{const {sessions:_0x294c09}=await listFeatureSessions(_0x707edf),_0xd11b01=_0x294c09['find'](_0x3b59a7=>_0x3b59a7['status']===_0x63f490(0x1d3));_0xd11b01&&(await startSession(_0x707edf,_0xd11b01['id']),console['log'](_0x63f490(0x136)+_0xd11b01['iteration']));}catch{}}export async function featureReport(_0x763c3e,_0x148776){const _0x4183fd=_0x2d6a78,_0x497e81={'vkatd':_0x4183fd(0x1c5),'OyKyp':'reports','fgTDh':function(_0x1bc2c1,_0x3798f9,_0x54949f){return _0x1bc2c1(_0x3798f9,_0x54949f);},'MsGiO':function(_0x4fa686,_0x4ec9d9){return _0x4fa686(_0x4ec9d9);},'uCHuF':function(_0x14a00e,_0x1489ae,_0x3ab403,_0x6a0324){return _0x14a00e(_0x1489ae,_0x3ab403,_0x6a0324);}},_0x2b64da=_0x763c3e||await getActiveFeatureId();if(!_0x2b64da)throw new Error(_0x4183fd(0x14b));console['log'](_0x497e81[_0x4183fd(0x190)]);const _0xda4873=await getFeatureReportMarkdown(_0x2b64da,{'style':_0x148776['style']}),_0x39186d=_0x148776['output']||join(getRangerDir(),_0x497e81[_0x4183fd(0x19a)],_0x2b64da+'.md'),_0x56be44=_0x497e81[_0x4183fd(0x159)](join,_0x39186d,'..');!_0x497e81[_0x4183fd(0x15e)](existsSync,_0x56be44)&&await mkdir(_0x56be44,{'recursive':!![]}),await _0x497e81[_0x4183fd(0x163)](writeFile,_0x39186d,_0xda4873,'utf-8'),console['log'](_0x4183fd(0x110)+_0x39186d);}function getScenarioResult(_0x3704f0){const _0x156020=_0x2d6a78,_0x3ce5d1={'UfAQj':function(_0x4d741e,_0x714325){return _0x4d741e===_0x714325;},'jOzja':'closed','qeLxr':'verification_in_progress'};if(_0x3ce5d1['UfAQj'](_0x3704f0[_0x156020(0x1a5)],_0x156020(0x167)))return _0x3704f0['terminalReason']??_0x3ce5d1[_0x156020(0x112)];if(_0x3ce5d1['UfAQj'](_0x3704f0['status'],_0x3ce5d1[_0x156020(0x144)]))return _0x156020(0x10e);return _0x3704f0[_0x156020(0x1a5)];}function getScenarioRationale(_0x3901f0,_0x4e6f7f){const _0x533e08=_0x2d6a78,_0x18654={'KhTAK':'3|5|0|1|4|2'},_0x175159=_0x18654['KhTAK'][_0x533e08(0x15a)]('|');let _0x18d87c=0x0;while(!![]){switch(_0x175159[_0x18d87c++]){case'0':if(_0x3901f0['incompleteReason'])return _0x3901f0[_0x533e08(0x1a0)];continue;case'1':if(_0x3901f0[_0x533e08(0x12b)])return _0x3901f0['canceledReason'];continue;case'2':return null;case'3':if(_0x4e6f7f)return _0x4e6f7f;continue;case'4':if(_0x3901f0[_0x533e08(0x111)])return _0x3901f0[_0x533e08(0x111)];continue;case'5':if(_0x3901f0[_0x533e08(0x127)])return _0x3901f0['blockedReason'];continue;}break;}}export async function featureReportPrDescription(_0x209384,_0x233a3b){const _0x8ed607=_0x2d6a78,_0x12b1d2={'vEpzy':function(_0x13992a,_0x236683){return _0x13992a(_0x236683);},'sESGT':function(_0x4420e0,_0x33ae4d,_0x422bdd){return _0x4420e0(_0x33ae4d,_0x422bdd);},'EatYa':function(_0x43b97e,_0x2456f2){return _0x43b97e===_0x2456f2;},'vXRWG':'\x0a❌\x20No\x20scenarios\x20found\x20to\x20include.','ocAwl':function(_0x4a8d21,_0x4904c3){return _0x4a8d21>_0x4904c3;},'hSrNC':_0x8ed607(0x19f),'HiaEo':function(_0x18d907,_0x580fd3){return _0x18d907<_0x580fd3;},'KCwqk':function(_0x2fbeb4,_0x2e3e0d){return _0x2fbeb4+_0x2e3e0d;},'KUhvm':_0x8ed607(0x156),'rdfvc':function(_0x524d16,_0x474133,_0x16c323,_0x231f40){return _0x524d16(_0x474133,_0x16c323,_0x231f40);}},_0x49294f=_0x209384||await getActiveFeatureId();if(!_0x49294f)throw new Error('No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.');const _0x10e5ad=await _0x12b1d2['vEpzy'](getFeature,_0x49294f),_0x12d1fd=_0x10e5ad['checklistItems']||[],_0x16a90e=_0x12b1d2['sESGT'](getCurrentSessionItems,_0x10e5ad,_0x12d1fd);_0x12b1d2['EatYa'](_0x16a90e[_0x8ed607(0x12a)],0x0)&&(console['error'](_0x12b1d2['vXRWG']),process[_0x8ed607(0xfd)](0x1));const _0x40ff8b=_0x233a3b[_0x8ed607(0x1d7)]??[],_0x1a174a=_0x40ff8b['filter'](_0x148e17=>!Number[_0x8ed607(0x115)](_0x148e17)||_0x148e17<0x1||_0x148e17>_0x16a90e[_0x8ed607(0x12a)]);if(_0x12b1d2[_0x8ed607(0x18a)](_0x1a174a['length'],0x0)){console[_0x8ed607(0x119)]('\x0a❌\x20Invalid\x20scenario\x20number(s):\x20'+_0x1a174a[_0x8ed607(0x1c1)](',\x20')),console[_0x8ed607(0x168)](_0x12b1d2['hSrNC']);for(let _0x10cfc5=0x0;_0x12b1d2[_0x8ed607(0x1b8)](_0x10cfc5,_0x16a90e[_0x8ed607(0x12a)]);_0x10cfc5++){console['log']('\x20\x20'+_0x12b1d2['KCwqk'](_0x10cfc5,0x1)+'.\x20'+_0x16a90e[_0x10cfc5][_0x8ed607(0xff)]);}process[_0x8ed607(0xfd)](0x1);}const _0x4a73e1=new Set(_0x40ff8b[_0x8ed607(0x137)](_0x4df9f4=>_0x4df9f4-0x1)),_0x544823=_0x16a90e[_0x8ed607(0x195)]((_0x12ad86,_0x2d3bf0)=>!_0x4a73e1['has'](_0x2d3bf0));_0x12b1d2[_0x8ed607(0x1d8)](_0x544823[_0x8ed607(0x12a)],0x0)&&(console[_0x8ed607(0x119)](_0x12b1d2[_0x8ed607(0x158)]),process['exit'](0x1));if(_0x233a3b[_0x8ed607(0x1ac)])await _0x12b1d2[_0x8ed607(0x181)](outputJsonReport,_0x49294f,_0x10e5ad,_0x544823);else{const _0x2ce66e=await getFeatureReportMarkdown(_0x49294f,{'itemIds':_0x544823[_0x8ed607(0x137)](_0x175848=>_0x175848['id'])});process[_0x8ed607(0x10c)]['write'](_0x2ce66e['trimEnd']()+'\x0a');}}async function outputJsonReport(_0x1f16d2,_0x36ab3f,_0x270181){const _0x3117e6=_0x2d6a78,_0x510777={'ChxBw':function(_0x30fbff,_0x367717){return _0x30fbff>_0x367717;},'GDvjK':function(_0x45189e){return _0x45189e();},'ScubR':function(_0xdfc802,_0x317f19){return _0xdfc802(_0x317f19);},'xjtWd':function(_0x1a7e08,_0x4f6bb1){return _0x1a7e08+_0x4f6bb1;}},_0x26ab11=_0x510777['GDvjK'](getApiBaseUrl),_0x4f7bec=await _0x510777['ScubR'](getFeatureReport,_0x1f16d2),_0x1913f1=new Map(_0x4f7bec['checklistItems'][_0x3117e6(0x137)](_0x1b225b=>[_0x1b225b['id'],_0x1b225b])),_0x572da3=await Promise[_0x3117e6(0x1b0)](_0x270181[_0x3117e6(0x137)](async _0x47849c=>{const _0x22a1ca=_0x3117e6,_0x216e92=_0x1913f1[_0x22a1ca(0x11f)](_0x47849c['id']),_0x55b0ad=_0x216e92?.['linkedSession']??null;let _0x33b7aa=[];if(_0x47849c[_0x22a1ca(0x172)])try{const {steps:_0x31c265}=await getBrowserSessionSteps(_0x47849c[_0x22a1ca(0x172)]);_0x510777['ChxBw'](_0x31c265[_0x22a1ca(0x12a)],0x0)&&(_0x33b7aa=_0x31c265[_0x22a1ca(0x137)](_0x599d9a=>{const _0x4b7eea=_0x22a1ca,_0x3b66dd=_0x599d9a[_0x4b7eea(0x19d)][_0x4b7eea(0x11e)](_0x9ee36=>_0x9ee36['assetType']===_0x4b7eea(0x1d0)&&_0x9ee36[_0x4b7eea(0x1c3)]===_0x4b7eea(0x123))??_0x599d9a['assets'][_0x4b7eea(0x11e)](_0x3e9091=>_0x3e9091['assetType']===_0x4b7eea(0x1d0));let _0x56c471=null,_0x4d7410=null;if(_0x3b66dd){const _0x14d856=_0x3b66dd['storage'][_0x4b7eea(0x10a)][_0x4b7eea(0x15a)]('/')[_0x4b7eea(0x192)]();_0x56c471=_0x26ab11+_0x4b7eea(0x19c)+_0x47849c['browserSessionId']+_0x4b7eea(0x1cb)+_0x14d856,_0x14d856&&(_0x4d7410=_0x14d856[_0x4b7eea(0x193)](/\.\w+$/,'')[_0x4b7eea(0x193)](/^(key_)?\d+_/,'')[_0x4b7eea(0x193)](/[-_]/g,'\x20'));}return{'description':_0x4d7410||_0x599d9a[_0x4b7eea(0xff)]||_0x599d9a['stepName']||_0x4b7eea(0xf9)+_0x599d9a['position'],'screenshot':_0x56c471,'is_key_step':_0x599d9a['isKeyStep']};}));}catch{}return _0x33b7aa[_0x22a1ca(0x12a)]===0x0&&_0x55b0ad?.[_0x22a1ca(0x1b9)]&&(_0x33b7aa=_0x55b0ad['screenshotUrls']['map']((_0x5079d1,_0x4dbc86)=>({'description':_0x22a1ca(0x1c0)+(_0x4dbc86+0x1),'screenshot':_0x5079d1,'is_key_step':![]}))),{'description':_0x47849c['description'],'result':getScenarioResult(_0x47849c),'rationale':getScenarioRationale(_0x47849c,_0x55b0ad?.['agentResponse']),'steps':_0x33b7aa};})),_0x493b6f={'url':_0x36ab3f[_0x3117e6(0x1da)],'scenarios':_0x572da3};process[_0x3117e6(0x10c)][_0x3117e6(0x122)](_0x510777['xjtWd'](JSON['stringify'](_0x493b6f,null,0x2),'\x0a'));}export async function featureConcludeSession(_0x11f744){const _0x1c7728=_0x2d6a78,_0x5f025b={'ZFErW':'No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','NshOa':_0x1c7728(0xfb),'ETHKY':function(_0x355ec7,_0x521cbc){return _0x355ec7===_0x521cbc;},'DTrps':_0x1c7728(0x11c),'ufQKo':function(_0x2364eb,_0x3ef8c3){return _0x2364eb!==_0x3ef8c3;},'SBjCc':_0x1c7728(0x10e)},_0x5367a9=_0x11f744||await getActiveFeatureId();if(!_0x5367a9)throw new Error(_0x5f025b['ZFErW']);const _0x52d009=await getFeature(_0x5367a9);if(!_0x52d009[_0x1c7728(0x17a)])throw new Error(_0x1c7728(0x17b));const {sessions:_0x36355c}=await listFeatureSessions(_0x5367a9),_0x30edd9=_0x36355c[_0x1c7728(0x11e)](_0x33880c=>_0x33880c['id']===_0x52d009[_0x1c7728(0x17a)]);if(!_0x30edd9)throw new Error(_0x5f025b[_0x1c7728(0x1aa)]);if(_0x5f025b['ETHKY'](_0x30edd9[_0x1c7728(0x1a5)],'completed')){console['log'](_0x5f025b[_0x1c7728(0x1bd)]);return;}if(_0x5f025b['ufQKo'](_0x30edd9['status'],_0x5f025b[_0x1c7728(0x12d)]))throw new Error('Cannot\x20conclude\x20session\x20with\x20status:\x20'+_0x30edd9['status']);console[_0x1c7728(0x168)](_0x1c7728(0x184)),await concludeSession(_0x5367a9,_0x52d009['currentSessionId']),console[_0x1c7728(0x168)]('\x0a✅\x20Session\x20'+_0x30edd9['iteration']+_0x1c7728(0x18c)),console[_0x1c7728(0x168)]('\x20\x20\x20The\x20feature\x20review\x20is\x20now\x20ready\x20for\x20human\x20review\x20on\x20the\x20Ranger\x20dashboard.');}export async function featureSessions(_0x3dbf94){const _0x1544c6=_0x2d6a78,_0x5411b5={'LAzuO':function(_0x28f42){return _0x28f42();},'tPVqm':'No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.','XFvoG':function(_0x27063f,_0x27a299){return _0x27063f(_0x27a299);},'cbdVQ':_0x1544c6(0x1c2),'uBChY':function(_0x51a18a,_0x4ae033){return _0x51a18a===_0x4ae033;},'SGFrB':function(_0x37c6f1,_0x5892f1){return _0x37c6f1===_0x5892f1;},'sdiSC':_0x1544c6(0x10e)},_0x296e8e=_0x3dbf94||await _0x5411b5['LAzuO'](getActiveFeatureId);if(!_0x296e8e)throw new Error(_0x5411b5['tPVqm']);const _0x28b086=await getFeature(_0x296e8e);console['log'](_0x1544c6(0x113)+_0x28b086[_0x1544c6(0x1bb)]+'\x0a');const {sessions:_0x1ed062}=await _0x5411b5[_0x1544c6(0x1a8)](listFeatureSessions,_0x296e8e);if(_0x1ed062['length']===0x0){console['log'](_0x5411b5[_0x1544c6(0x143)]);return;}for(const _0x7fd9cc of _0x1ed062){const _0x57fd7e=_0x5411b5['uBChY'](_0x7fd9cc['status'],_0x1544c6(0x198))?'✅':_0x5411b5[_0x1544c6(0x157)](_0x7fd9cc[_0x1544c6(0x1a5)],_0x5411b5['sdiSC'])?'🔄':'▶️';console[_0x1544c6(0x168)](_0x57fd7e+'\x20Session\x20'+_0x7fd9cc[_0x1544c6(0x14a)]+'\x20('+_0x7fd9cc['id']+')'),console[_0x1544c6(0x168)]('\x20\x20\x20Status:\x20'+_0x7fd9cc['status']),console['log']('\x20\x20\x20Created:\x20'+new Date(_0x7fd9cc['createdAt'])[_0x1544c6(0x16f)]()),_0x7fd9cc['completedAt']&&console[_0x1544c6(0x168)]('\x20\x20\x20Completed:\x20'+new Date(_0x7fd9cc[_0x1544c6(0x128)])[_0x1544c6(0x16f)]()),console['log']('');}}export async function featureAddScenario(_0x12ca04,_0x5ec68a){const _0x3ce6c6=_0x2d6a78,_0x4e85b4={'NJPNK':function(_0x7fba0f,_0x4748b3){return _0x7fba0f(_0x4748b3);},'npLgf':function(_0x2c26a2,_0x40c587){return _0x2c26a2(_0x40c587);},'WLTLU':function(_0x516ef7,_0x33a25a,_0x3cb53d){return _0x516ef7(_0x33a25a,_0x3cb53d);}},_0x3fe869=_0x5ec68a||await getActiveFeatureId();if(!_0x3fe869)throw new Error(_0x3ce6c6(0x13c));const _0x168ab5=await _0x4e85b4['NJPNK'](getFeature,_0x3fe869);if(_0x168ab5['latestReview']&&!_0x168ab5['latestReview'][_0x3ce6c6(0x1be)])throw new Error('Cannot\x20add\x20scenario:\x20feature\x20review\x20has\x20an\x20active\x20review.\x20Please\x20finish\x20your\x20review\x20first:\x20'+_0x168ab5['dashboardUrl']);await createChecklistItem(_0x3fe869,_0x12ca04);const _0x54a92d=await _0x4e85b4['npLgf'](getFeature,_0x3fe869);console['log'](_0x3ce6c6(0x152)),_0x4e85b4[_0x3ce6c6(0x1de)](displayFeature,_0x54a92d,_0x54a92d[_0x3ce6c6(0x161)]);}function _0x1fbe(){const _0x500523=['\x20in\x20progress','jcuYt','2359427igdVHP','\x20\x20\x20\x20\x20Branch:\x20','\x20\x20\x20Progress:\x20','\x20\x20\x20Description:\x20','\x0a✅\x20Scenario\x20added','scenarios','push','CEbfa','\x0a❌\x20All\x20scenarios\x20were\x20excluded.','SGFrB','KUhvm','fgTDh','split','\x0a🗑️\x20\x20Deleted\x20feature\x20review:\x20','prompt','1683576hfogrv','MsGiO','887631nHXIJp','\x20\x20\x20\x20\x20📋\x20Selector:\x20','checklistItems','type','uCHuF','\x0a⚠️\x20\x20','blockedItems','\x20feature\x20review(s)\x20found','closed','log','pipe','en-US','YHZEr','jHull','\x20unaddressed\x20reviewer\x20comment(s)\x20across\x20','DxIuV','toLocaleString','terminalReason','FFtTw','browserSessionId','...','ArQol','verified','gIQKf','items','Run:\x20ranger\x20create\x20\x22<name>\x22\x20to\x20create\x20a\x20new\x20feature\x20review','\x0aCreating\x20feature\x20review...','currentSessionId','No\x20active\x20session\x20for\x20this\x20feature\x20review.','\x20\x20\x20Branch:\x20','\x0a❌\x20No\x20scenarios\x20found\x20to\x20edit.','JIIST','pSEZO','stats','rdfvc','verifiedItems','rRTMS','\x0aConcluding\x20session...','yCbaG','EiUHV','totalCount','LTNKa','approved','ocAwl','451508qJxLXs','\x20concluded.','MZzHZ','env','feedback-images','vkatd','latestReview','pop','replace','RANGER_TEST_USERNAME','filter','AsRUX','selector','completed','\x20\x20\x20Updated\x20branch\x20to:\x20','OyKyp','AvIgF','/api/v1/mcp/browser-sessions/','assets','\x20scenarios.','\x0aAvailable\x20scenarios:','incompleteReason','nJaxI','\x20\x20\x20Repository:\x20','xTUMJ','\x0aNo\x20feature\x20reviews\x20found.','status','176382nCRocM','gitRepoUrl','XFvoG','toFixed','NshOa','wTNzB','json','WMjHL','arrayBuffer','assetUrl','all','\x20\x20\x20\x20\x20🎯\x20Element:\x20<','Ylipd','gtrPu','unaddressedComments','verification_in_progress','Wdrxk','spatial','HiaEo','screenshotUrls','gitBranch','name','\x20\x20\x20Completed:\x20','DTrps','submittedAt','Scenario\x20','Screenshot\x20','join','No\x20sessions\x20found.','timing','offset','\x0aGenerating\x20report...','scenario','stdin','rfPuX','\x20\x20✅\x20No\x20feedback\x20to\x20address','slice','/artifacts/','oqhUE','AjJNf','wkEyj','\x20\x20\x20\x20\x20\x20Blocked:\x20','screenshot','\x1b[1m','.\x20Feature\x20review\x20has\x20','ready','sessionId','216196IlOnae','coordinates','excludeScenarios','EatYa','hgfWu','dashboardUrl','version','\x20scenario(s).','CLAUDE_SESSION_ID','WLTLU','createdAt','Step\x20','rAuvB','Current\x20session\x20not\x20found.','PAmvz','exit','utf-8','description','point','\x20\x20\x20\x20\x20📷\x20Screenshot:\x20','65ayrooD','pendingItems','nfamo','git\x20remote\x20get-url\x20origin','trim','LmKsu','):\x20\x22','431339UxktnO','location','kamCf','stdout','\x20at\x20[','in_progress','Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','\x0a✅\x20Report\x20generated:\x20','notes','jOzja','\x0a📁\x20Sessions\x20for\x20feature\x20review:\x20','numeric','isInteger','\x0a✅\x20Resumed\x20feature\x20review:\x20','limit','incomplete','error','\x20\x20\x20','PPynX','\x0a✅\x20Session\x20is\x20already\x20completed.','aUOYm','find','get','dMjiJ','\x20\x20💬\x20','write','after','WoWwM','YHJgf','\x20\x20\x20Created:\x20','blockedReason','completedAt','active-feature.txt','length','canceledReason','\x20\x20\x20To\x20restore\x20it,\x20run:\x20ranger\x20restore\x20','SBjCc','TfUMO','TuaMF','MgYNM','canonicalFlow','toLocaleDateString','JwNBK','oXejq','\x20—\x20','\x20\x20\x20▶️\x20Started\x20session\x20','map','\x20\x20\x20\x20\x20\x20Cancelled:\x20','\x0a✅\x20Restored\x20feature\x20review:\x20','comment_','wUAZN','No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','\x20\x20\x20\x20','currentBranch','ztTIE','\x0a\x20\x20\x20Scenarios:','jFEHE','textContent','cbdVQ','qeLxr','\x20unaddressed\x20comment(s)','maiKc','domRef','aXqsL','zEkkq','iteration','No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.'];_0x1fbe=function(){return _0x500523;};return _0x1fbe();}export async function featureEditScenario(_0x1f6296,_0x4f46be){const _0x511b5f=_0x2d6a78,_0x5860a2={'eEkjM':function(_0x13aab8){return _0x13aab8();},'wUAZN':'\x0a❌\x20No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.','JIIST':function(_0x4d36de,_0x9bcf18){return _0x4d36de(_0x9bcf18);},'wTNzB':_0x511b5f(0x17d),'AsRUX':function(_0x13faea,_0x5e5659){return _0x13faea===_0x5e5659;},'EiUHV':'\x0a❌\x20No\x20scenario\x20number\x20provided.\x20Use\x20--scenario\x20<number>.','Ylipd':function(_0x4ffa96,_0x40b315){return _0x4ffa96<_0x40b315;},'ycNPA':function(_0x4eee46,_0xa2fad6){return _0x4eee46-_0xa2fad6;},'AVILF':function(_0x171e30,_0x375607){return _0x171e30+_0x375607;},'MgYNM':function(_0x1e51e6,_0xa49904,_0x173563,_0x4b112f){return _0x1e51e6(_0xa49904,_0x173563,_0x4b112f);}},_0x5cfb9a=_0x4f46be['id']||await _0x5860a2['eEkjM'](getActiveFeatureId);!_0x5cfb9a&&(console['error'](_0x5860a2[_0x511b5f(0x13b)]),console['error'](_0x511b5f(0x10f)),process[_0x511b5f(0xfd)](0x1));const _0x2ec9f9=await _0x5860a2[_0x511b5f(0x17e)](getFeature,_0x5cfb9a);_0x2ec9f9[_0x511b5f(0x191)]&&!_0x2ec9f9['latestReview'][_0x511b5f(0x1be)]&&(console['error']('\x0a❌\x20Cannot\x20edit\x20scenario:\x20feature\x20review\x20has\x20an\x20active\x20review.'),console[_0x511b5f(0x119)]('Please\x20finish\x20your\x20review\x20first:'),console['error']('\x20\x20'+_0x2ec9f9['dashboardUrl']),process[_0x511b5f(0xfd)](0x1));const _0x24e706=_0x2ec9f9['checklistItems']||[];_0x24e706[_0x511b5f(0x12a)]===0x0&&(console[_0x511b5f(0x119)](_0x5860a2[_0x511b5f(0x1ab)]),process[_0x511b5f(0xfd)](0x1));if(_0x5860a2[_0x511b5f(0x196)](_0x4f46be[_0x511b5f(0x1c6)],undefined)){console['error'](_0x5860a2[_0x511b5f(0x186)]),console['log']('\x0aAvailable\x20scenarios:');for(let _0x2760c3=0x0;_0x5860a2[_0x511b5f(0x1b2)](_0x2760c3,_0x24e706[_0x511b5f(0x12a)]);_0x2760c3++){console[_0x511b5f(0x168)]('\x20\x20'+(_0x2760c3+0x1)+'.\x20'+_0x24e706[_0x2760c3][_0x511b5f(0xff)]);}process['exit'](0x1);}const _0x456407=_0x5860a2['ycNPA'](_0x4f46be['scenario'],0x1);if(_0x456407<0x0||_0x456407>=_0x24e706['length']){console['error']('\x0a❌\x20Invalid\x20scenario\x20index:\x20'+_0x4f46be[_0x511b5f(0x1c6)]+_0x511b5f(0x1d2)+_0x24e706[_0x511b5f(0x12a)]+_0x511b5f(0x19e)),console[_0x511b5f(0x168)]('\x0aAvailable\x20scenarios:');for(let _0xb2be56=0x0;_0xb2be56<_0x24e706[_0x511b5f(0x12a)];_0xb2be56++){console[_0x511b5f(0x168)]('\x20\x20'+_0x5860a2['AVILF'](_0xb2be56,0x1)+'.\x20'+_0x24e706[_0xb2be56][_0x511b5f(0xff)]);}process['exit'](0x1);}const _0x330d93=_0x24e706[_0x456407];await _0x5860a2[_0x511b5f(0x130)](updateChecklistItem,_0x5cfb9a,_0x330d93['id'],{'description':_0x1f6296});const _0x7280d6=await _0x5860a2['JIIST'](getFeature,_0x5cfb9a);console[_0x511b5f(0x168)]('\x0a✅\x20Scenario\x20updated'),displayFeature(_0x7280d6,_0x7280d6[_0x511b5f(0x161)]);}async function downloadFeedbackImage(_0x5e58b0,_0x5e1cf2){const _0x18559e=_0x2d6a78,_0x3b9246={'dMjiJ':function(_0x4e6f02,_0x6e08db,_0x376a3b){return _0x4e6f02(_0x6e08db,_0x376a3b);},'jHull':function(_0x201b2c){return _0x201b2c();},'yCbaG':function(_0x8d0d48,_0x372aea,_0x4cd653){return _0x8d0d48(_0x372aea,_0x4cd653);}};try{const _0x425316=_0x3b9246[_0x18559e(0x120)](join,_0x3b9246[_0x18559e(0x16c)](getRangerDir),_0x18559e(0x18f));await mkdir(_0x425316,{'recursive':!![]});const _0x37305e=join(_0x425316,_0x18559e(0x13a)+_0x5e1cf2+'.png'),_0x1db80e=await fetch(_0x5e58b0);if(!_0x1db80e['ok'])return null;const _0x51e358=Buffer['from'](await _0x1db80e[_0x18559e(0x1ae)]());return await _0x3b9246[_0x18559e(0x185)](writeFile,_0x37305e,_0x51e358),_0x37305e;}catch{return null;}}export async function featureGetReview(_0x41277a){const _0xdadeb0=_0x2d6a78,_0x3adeae={'gYQbX':function(_0x54a6f6){return _0x54a6f6();},'lNGjJ':_0xdadeb0(0x13c),'GHWDj':function(_0xe6ac70,_0x2e332f){return _0xe6ac70(_0x2e332f);},'jFEHE':function(_0x11db1d,_0x4f91f7){return _0x11db1d===_0x4f91f7;},'DiQcL':'No\x20scenarios\x20found.','MZzHZ':function(_0x444a22,_0x57ff33,_0x35b249){return _0x444a22(_0x57ff33,_0x35b249);},'WoWwM':_0xdadeb0(0x16a),'LTNKa':'short','xTUMJ':'element','pSEZO':_0xdadeb0(0x100),'iHlMf':function(_0x16e807,_0x36d4de){return _0x16e807>=_0x36d4de;}},_0x46ae80=_0x41277a||await _0x3adeae['gYQbX'](getActiveFeatureId);if(!_0x46ae80)throw new Error(_0x3adeae['lNGjJ']);const _0x3c1b06=await _0x3adeae['GHWDj'](getFeature,_0x46ae80),{items:_0x2c99d5}=await getActionItems(_0x46ae80);console['log']('\x0a📋\x20Feedback\x20for:\x20'+_0x3c1b06['name']+'\x20('+_0x3c1b06['id']+')\x0a');if(_0x3adeae[_0xdadeb0(0x141)](_0x2c99d5['length'],0x0)){console['log'](_0x3adeae['DiQcL']);return;}for(let _0x259790=0x0;_0x259790<_0x2c99d5[_0xdadeb0(0x12a)];_0x259790++){const _0x4cae85=_0x2c99d5[_0x259790],_0x110de3=_0x4cae85[_0xdadeb0(0x1db)]>0x1?'\x20(v'+_0x4cae85['version']+')':'',_0x5ce858=await _0x3adeae['MZzHZ'](getItemFeedback,_0x46ae80,_0x4cae85['id']);if(_0x5ce858['unaddressedComments'][_0xdadeb0(0x12a)]>0x0){console['log']('Scenario\x20'+(_0x259790+0x1)+':\x20\x22'+_0x4cae85[_0xdadeb0(0xff)]+'\x22'+_0x110de3+_0xdadeb0(0x135)+_0x5ce858[_0xdadeb0(0x1b4)]['length']+_0xdadeb0(0x145));for(const _0x21a6d4 of _0x5ce858['unaddressedComments']){const _0x466184=new Date(_0x21a6d4[_0xdadeb0(0xf8)])['toLocaleDateString'](_0x3adeae[_0xdadeb0(0x124)],{'month':_0x3adeae[_0xdadeb0(0x188)],'day':_0xdadeb0(0x114)}),_0x4f970a=_0x21a6d4['authorName']||_0x21a6d4['authorEmail']||'Unknown';console['log'](_0xdadeb0(0x121)+_0x4f970a+'\x20('+_0x466184+_0xdadeb0(0x108)+_0x21a6d4['content']+'\x22');if(_0x21a6d4['assetUrl']){const _0x4f235b=await _0x3adeae[_0xdadeb0(0x18d)](downloadFeedbackImage,_0x21a6d4[_0xdadeb0(0x1af)],_0x21a6d4['id']);_0x4f235b&&console[_0xdadeb0(0x168)](_0xdadeb0(0x101)+_0x4f235b);}if(_0x21a6d4['domRef']){const _0x5c52ee=_0x21a6d4[_0xdadeb0(0x147)][_0xdadeb0(0x197)]['split']('\x20>\x20')['pop']()?.[_0xdadeb0(0x15a)](':')[0x0]||_0x3adeae[_0xdadeb0(0x1a3)],_0x5177ad=_0x21a6d4[_0xdadeb0(0x147)][_0xdadeb0(0x142)]?'\x20\x22'+_0x21a6d4[_0xdadeb0(0x147)]['textContent'][_0xdadeb0(0x1ca)](0x0,0x3c)+'\x22':'';console['log'](_0xdadeb0(0x1b1)+_0x5c52ee+'>'+_0x5177ad),console['log'](_0xdadeb0(0x160)+_0x21a6d4[_0xdadeb0(0x147)][_0xdadeb0(0x197)]);}else{if(_0x21a6d4['spatial']){const _0x18374f=_0x21a6d4['spatial'][_0xdadeb0(0x1d6)];_0x3adeae[_0xdadeb0(0x141)](_0x21a6d4['spatial']['type'],_0x3adeae[_0xdadeb0(0x17f)])&&_0x3adeae['iHlMf'](_0x18374f['length'],0x2)?console['log']('\x20\x20\x20\x20\x20📍\x20Annotation:\x20point\x20at\x20('+_0x18374f[0x0]['toFixed'](0x2)+',\x20'+_0x18374f[0x1][_0xdadeb0(0x1a9)](0x2)+')'):console[_0xdadeb0(0x168)]('\x20\x20\x20\x20\x20📍\x20Annotation:\x20'+_0x21a6d4[_0xdadeb0(0x1b7)][_0xdadeb0(0x162)]+_0xdadeb0(0x10d)+_0x18374f['map'](_0x174e5d=>_0x174e5d[_0xdadeb0(0x1a9)](0x2))[_0xdadeb0(0x1c1)](',\x20')+']');}}}if(_0x5ce858[_0xdadeb0(0x131)]){console[_0xdadeb0(0x168)]('\x20\x20Expected\x20flow:');for(const _0x557da4 of _0x5ce858[_0xdadeb0(0x131)]['split']('\x0a')){console[_0xdadeb0(0x168)](_0xdadeb0(0x13d)+_0x557da4);}}}else console['log'](_0xdadeb0(0x1bf)+(_0x259790+0x1)+':\x20\x22'+_0x4cae85['description']+'\x22'+_0x110de3+'\x20—\x20no\x20comments'),console['log'](_0xdadeb0(0x1c9));console[_0xdadeb0(0x168)]('');}}export async function featureDelete(_0x28ba9b){const _0x2c007c=_0x2d6a78,_0x513027={'oqhUE':function(_0x512581){return _0x512581();},'WMjHL':function(_0x221a59,_0xfa1d38){return _0x221a59(_0xfa1d38);}},_0x787b24=_0x28ba9b||await _0x513027[_0x2c007c(0x1cc)](getActiveFeatureId);if(!_0x787b24)throw new Error(_0x2c007c(0x13c));const _0x206d41=await _0x513027[_0x2c007c(0x1ad)](getFeature,_0x787b24);await _0x513027[_0x2c007c(0x1ad)](softDeleteFeature,_0x787b24),console[_0x2c007c(0x168)](_0x2c007c(0x15b)+_0x206d41['name']+'\x20('+_0x787b24+')'),console['log'](_0x2c007c(0x12c)+_0x787b24);}export async function featureRestore(_0x55c6c8){const _0x237624=_0x2d6a78,_0x157fbf={'Jkrbz':function(_0x348c83,_0x28a515){return _0x348c83(_0x28a515);},'aUOYm':function(_0x5ba622,_0x179c09){return _0x5ba622(_0x179c09);},'axPOv':function(_0x186e1b,_0x5c08e9,_0x3b04cd){return _0x186e1b(_0x5c08e9,_0x3b04cd);}};await _0x157fbf['Jkrbz'](restoreFeature,_0x55c6c8);const _0x31555f=await _0x157fbf[_0x237624(0x11d)](getFeature,_0x55c6c8);console['log'](_0x237624(0x139)+_0x31555f[_0x237624(0x1bb)]+'\x20('+_0x55c6c8+')'),_0x157fbf['axPOv'](displayFeature,_0x31555f,_0x31555f[_0x237624(0x161)]);}
1
+ const _0x315c8e=_0x56b6;(function(_0x1194cb,_0x11ce44){const _0x5d53ca=_0x56b6,_0x5afe7d=_0x1194cb();while(!![]){try{const _0x1dd2af=-parseInt(_0x5d53ca(0x17c))/0x1+parseInt(_0x5d53ca(0x141))/0x2+-parseInt(_0x5d53ca(0x154))/0x3+-parseInt(_0x5d53ca(0x17a))/0x4*(parseInt(_0x5d53ca(0x194))/0x5)+parseInt(_0x5d53ca(0x1a6))/0x6*(parseInt(_0x5d53ca(0x146))/0x7)+-parseInt(_0x5d53ca(0xfb))/0x8*(-parseInt(_0x5d53ca(0x1a7))/0x9)+-parseInt(_0x5d53ca(0x171))/0xa*(parseInt(_0x5d53ca(0xfc))/0xb);if(_0x1dd2af===_0x11ce44)break;else _0x5afe7d['push'](_0x5afe7d['shift']());}catch(_0x200558){_0x5afe7d['push'](_0x5afe7d['shift']());}}}(_0x5ed3,0x4eece));import{readFile,writeFile,mkdir}from'fs/promises';import{join}from'path';import{existsSync}from'fs';import{execSync}from'child_process';import _0x51fc58 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=_0x315c8e(0x144),bold=_0x12f250=>'\x1b[1m'+_0x12f250+'\x1b[0m';function getGitRepoUrl(){const _0x34c976=_0x315c8e,_0x59ab33={'EWzfp':_0x34c976(0x192)};try{const _0x5f31cd=execSync('git\x20remote\x20get-url\x20origin',{'encoding':'utf-8','stdio':[_0x34c976(0x192),'pipe',_0x59ab33['EWzfp']]})['trim']();return _0x5f31cd[_0x34c976(0x1b0)](/\.git$/,'')['replace'](/^git@github\.com:/,_0x34c976(0x1aa))[_0x34c976(0x1b0)](/^https?:\/\//,'');}catch{return undefined;}}function getGitBranch(){const _0x1065fb=_0x315c8e,_0x33d176={'erfbA':function(_0x19a91c,_0x63213b,_0x3740a7){return _0x19a91c(_0x63213b,_0x3740a7);},'thYzC':'pipe'};try{return _0x33d176['erfbA'](execSync,'git\x20rev-parse\x20--abbrev-ref\x20HEAD',{'encoding':_0x1065fb(0x196),'stdio':[_0x33d176[_0x1065fb(0x173)],_0x33d176['thYzC'],_0x33d176['thYzC']]})['trim']();}catch{return undefined;}}export async function getActiveFeatureId(){const _0x48fa7d=_0x315c8e,_0x29f3f9={'KRfCz':function(_0x45ebbc,_0x42f8a0,_0x5b94e7){return _0x45ebbc(_0x42f8a0,_0x5b94e7);}},_0x314dc3=_0x29f3f9[_0x48fa7d(0x108)](join,getRangerDir(),ACTIVE_FEATURE_FILE);if(!existsSync(_0x314dc3))return null;try{const _0x446241=await _0x29f3f9[_0x48fa7d(0x108)](readFile,_0x314dc3,'utf-8');return _0x446241[_0x48fa7d(0x125)]()||null;}catch{return null;}}function _0x56b6(_0xf24a03,_0x1bbde6){_0xf24a03=_0xf24a03-0xd0;const _0x5ed358=_0x5ed3();let _0x56b601=_0x5ed358[_0xf24a03];return _0x56b601;}async function setActiveFeatureId(_0x4cd7cd){const _0x1f1ef8=_0x315c8e,_0x109020={'nAEhp':function(_0x179225){return _0x179225();},'PszRp':function(_0x58ddc2,_0x5ede3d,_0x435b49){return _0x58ddc2(_0x5ede3d,_0x435b49);},'mxxvc':function(_0x203943,_0x559ed1){return _0x203943(_0x559ed1);},'kwYgf':function(_0x5e501d,_0x22c72c,_0x493704,_0x1277b6){return _0x5e501d(_0x22c72c,_0x493704,_0x1277b6);}},_0x305ab5=_0x109020[_0x1f1ef8(0x126)](getRangerDir),_0x41c717=_0x109020[_0x1f1ef8(0xe1)](join,_0x305ab5,ACTIVE_FEATURE_FILE);!_0x109020[_0x1f1ef8(0x12a)](existsSync,_0x305ab5)&&await mkdir(_0x305ab5,{'recursive':!![]}),await _0x109020[_0x1f1ef8(0x1b8)](writeFile,_0x41c717,_0x4cd7cd,_0x1f1ef8(0x196));}function getProgressDisplay(_0x3ac65b){const _0x108f63=_0x315c8e,_0xd5b37b={'jwjKW':function(_0xe3c48c,_0x1d06ac){return _0xe3c48c+_0x1d06ac;},'DYuBs':function(_0x1bcfad,_0x3e6e93){return _0x1bcfad+_0x3e6e93;},'lVKYr':function(_0x25013b,_0x56e184){return _0x25013b+_0x56e184;},'VbGzI':function(_0x32dbc7,_0x231e63){return _0x32dbc7*_0x231e63;},'htcod':function(_0x242fe4,_0x28d3fb){return _0x242fe4-_0x28d3fb;}},_0x205291=_0x3ac65b['verifiedItems']||0x0,_0x1a21df=_0x3ac65b[_0x108f63(0xe2)]||0x0,_0x52f181=_0x3ac65b['blockedItems']||0x0,_0x311070=_0x3ac65b[_0x108f63(0x142)]||0x0,_0x5d1f92=_0x3ac65b['pendingItems']||0x0,_0x3a69b3=_0xd5b37b[_0x108f63(0x150)](_0xd5b37b['DYuBs'](_0xd5b37b['lVKYr'](_0xd5b37b[_0x108f63(0x122)](_0x205291,_0x1a21df),_0x52f181),_0x311070),_0x5d1f92);if(_0x3a69b3===0x0)return'-';const _0x1a3a20=0xa,_0x30e45f=Math['round'](_0xd5b37b['VbGzI'](_0x205291/_0x3a69b3,_0x1a3a20)),_0x32c245='█'['repeat'](_0x30e45f)+'░'[_0x108f63(0x112)](_0xd5b37b[_0x108f63(0x115)](_0x1a3a20,_0x30e45f)),_0x59e40b=[];if(_0x52f181>0x0)_0x59e40b['push'](_0x52f181+_0x108f63(0x13f));if(_0x311070>0x0)_0x59e40b['push'](_0x311070+_0x108f63(0xdd));if(_0x1a21df>0x0)_0x59e40b['push'](_0x1a21df+_0x108f63(0x19e));const _0x17c9c9=_0x59e40b[_0x108f63(0x16b)]>0x0?'\x20('+_0x59e40b[_0x108f63(0xd8)](',\x20')+')':'';return _0x32c245+'\x20'+_0x205291+'/'+_0x3a69b3+_0x108f63(0xf4)+_0x17c9c9;}function getCurrentSessionItems(_0x55b544,_0x5b86bb){const _0x3144ef=_0x315c8e;if(!_0x55b544[_0x3144ef(0x135)])return _0x5b86bb[_0x3144ef(0xf8)](_0x77b141=>!_0x77b141[_0x3144ef(0x1b7)]);return _0x5b86bb[_0x3144ef(0xf8)](_0x550cb4=>_0x550cb4['sessionId']===_0x55b544['currentSessionId']||!_0x550cb4[_0x3144ef(0x1b7)]);}function displayFeature(_0x405e9f,_0x1ffb06){const _0x2cddee=_0x315c8e,_0xa3abbd={'BABKa':function(_0x2f54af,_0x7b5a9){return _0x2f54af(_0x7b5a9);},'erKkn':'\x0a\x20\x20\x20Scenarios:','bARMZ':function(_0x4eefcf,_0x2d572c){return _0x4eefcf<_0x2d572c;},'JFrEV':function(_0x3ed6a1,_0x441937){return _0x3ed6a1===_0x441937;},'bfaaW':_0x2cddee(0x18a),'loipd':function(_0xd87c18,_0x360eb3){return _0xd87c18===_0x360eb3;},'LHEGg':_0x2cddee(0xdc),'XTfpc':function(_0x28ac75,_0xae36dc){return _0x28ac75===_0xae36dc;},'smxwP':function(_0x8d5745,_0x59ec8d){return _0x8d5745!==_0x59ec8d;},'lhuIX':function(_0x17a3cd,_0x50e7d0){return _0x17a3cd===_0x50e7d0;},'qmphN':_0x2cddee(0x107)};console['log']('\x0a'+_0x405e9f[_0x2cddee(0xeb)]+'\x20('+_0x405e9f['dashboardUrl']+')');_0x405e9f[_0x2cddee(0x14b)]&&console['log'](_0x2cddee(0x10d)+_0xa3abbd['BABKa'](getProgressDisplay,_0x405e9f['stats']));_0x405e9f['description']&&console['log']('\x20\x20\x20Description:\x20'+_0x405e9f['description']);_0x405e9f['gitRepoUrl']&&console[_0x2cddee(0xf3)]('\x20\x20\x20Repository:\x20'+_0x405e9f[_0x2cddee(0x1ac)]);_0x405e9f[_0x2cddee(0xd7)]&&console['log']('\x20\x20\x20Branch:\x20'+_0x405e9f['gitBranch']);console['log']('\x20\x20\x20Created:\x20'+new Date(_0x405e9f['createdAt'])[_0x2cddee(0x175)]());_0x405e9f['completedAt']&&console[_0x2cddee(0xf3)](_0x2cddee(0x15c)+new Date(_0x405e9f[_0x2cddee(0xe9)])[_0x2cddee(0x175)]());if(_0x1ffb06&&_0x1ffb06[_0x2cddee(0x16b)]>0x0){console[_0x2cddee(0xf3)](_0xa3abbd['erKkn']);for(let _0x3d9363=0x0;_0xa3abbd['bARMZ'](_0x3d9363,_0x1ffb06[_0x2cddee(0x16b)]);_0x3d9363++){const _0x3c1eea=_0x1ffb06[_0x3d9363];let _0x335694;if(_0xa3abbd['JFrEV'](_0x3c1eea[_0x2cddee(0x189)],_0xa3abbd[_0x2cddee(0x153)])&&_0x3c1eea[_0x2cddee(0x138)]==='approved')_0x335694='✅';else{if(_0xa3abbd['loipd'](_0x3c1eea['status'],'verified'))_0x335694='🟢';else{if(_0x3c1eea[_0x2cddee(0x189)]===_0xa3abbd['LHEGg'])_0x335694='🟠';else{if(_0xa3abbd['XTfpc'](_0x3c1eea['status'],'blocked'))_0x335694='🛑';else{if(_0xa3abbd[_0x2cddee(0x15b)](_0x3c1eea[_0x2cddee(0x189)],_0xa3abbd['bfaaW']))_0x335694='⛔';else _0xa3abbd['XTfpc'](_0x3c1eea[_0x2cddee(0x189)],_0x2cddee(0x174))?_0x335694='⏳':_0x335694='⬜';}}}}const _0x345b25=_0x3c1eea['version']>0x1?_0x2cddee(0x12f)+_0x3c1eea['version']+')':'',_0x22c9d9=_0x3c1eea[_0x2cddee(0x106)]>0x1&&_0x3c1eea[_0x2cddee(0x151)]&&_0xa3abbd['smxwP'](_0x3c1eea['status'],_0x2cddee(0x18a))&&_0xa3abbd[_0x2cddee(0x19b)](_0x3c1eea[_0x2cddee(0x189)],_0x2cddee(0xed))?_0x2cddee(0xd4):'';console['log']('\x20\x20\x20'+(_0x3d9363+0x1)+'.\x20'+_0x335694+'\x20'+_0x3c1eea[_0x2cddee(0x123)]+_0x345b25+_0x22c9d9);_0xa3abbd[_0x2cddee(0x15a)](_0x3c1eea[_0x2cddee(0x189)],_0x2cddee(0x179))&&_0x3c1eea['blockedReason']&&console['log'](_0x2cddee(0xe3)+_0x3c1eea['blockedReason']);_0xa3abbd[_0x2cddee(0x15b)](_0x3c1eea[_0x2cddee(0x189)],_0xa3abbd[_0x2cddee(0x19f)])&&_0x3c1eea[_0x2cddee(0x14f)]&&console['log'](_0x2cddee(0x14e)+_0x3c1eea['incompleteReason']);if(_0x3c1eea['status']===_0xa3abbd[_0x2cddee(0x153)]&&_0xa3abbd['lhuIX'](_0x3c1eea['terminalReason'],_0xa3abbd[_0x2cddee(0x18c)]))console['log'](_0x2cddee(0x188));else _0xa3abbd['loipd'](_0x3c1eea[_0x2cddee(0x189)],_0x2cddee(0x18a))&&_0x3c1eea[_0x2cddee(0x15e)]&&console['log'](_0x2cddee(0xf5)+_0x3c1eea[_0x2cddee(0x15e)]);}}}export async function featureCreate(_0x2c0a56,_0x3c680f){const _0x176139=_0x315c8e,_0x12cb94={'rETeK':function(_0x550363,_0xa5a289){return _0x550363===_0xa5a289;},'QtzJq':function(_0x40e1d5){return _0x40e1d5();},'gJpwc':function(_0x41bf42,_0x367f9e){return _0x41bf42(_0x367f9e);},'YCDGR':_0x176139(0x19c),'showe':function(_0x45df79,_0x114cc6){return _0x45df79(_0x114cc6);},'kuKIz':function(_0x200513,_0x4886f1,_0x44413a){return _0x200513(_0x4886f1,_0x44413a);}},{envNames:_0x10aeac}=await getEnvNames();if(_0x12cb94['rETeK'](_0x10aeac[_0x176139(0x16b)],0x0)&&!process[_0x176139(0x184)]['RANGER_TEST_USERNAME']){let _0xa14de8=0x0;try{_0xa14de8=(await _0x12cb94['QtzJq'](listCloudProfiles))[_0x176139(0x16b)];}catch{_0xa14de8=0x1;}_0xa14de8===0x0&&console['warn']('\x0a'+_0x12cb94[_0x176139(0x102)](formatProfileRequiredMessage,_0x206ff3=>bold(_0x206ff3)));}const _0x91405c=_0x3c680f['scenarios']?_0x3c680f[_0x176139(0x11e)]['map'](_0x431d22=>_0x431d22['trim']()):[],_0x259ecc=getGitRepoUrl(),_0x316291=getGitBranch();console[_0x176139(0xf3)](_0x12cb94[_0x176139(0x13e)]);const _0x365670=await _0x12cb94['showe'](createFeature,{'name':_0x2c0a56,'description':_0x3c680f['description'],'checklist':_0x91405c,'gitRepoUrl':_0x259ecc,'gitBranch':_0x316291});await setActiveFeatureId(_0x365670['id']),await tryStartCurrentSession(_0x365670['id']);const _0x707bff=process[_0x176139(0x184)][_0x176139(0x129)];_0x707bff&&registerSession(_0x707bff,_0x365670['id']),console['log'](_0x176139(0x117)+_0x365670['id']),_0x12cb94[_0x176139(0x1ae)](displayFeature,_0x365670,_0x365670[_0x176139(0xd3)]),console['log']('\x0a➡️\x20\x20Set\x20as\x20active\x20feature\x20review');}export async function featureList(_0x19f555){const _0x10ab9f=_0x315c8e,_0x317bed={'PVTxP':function(_0xf47fd9){return _0xf47fd9();},'mzpBe':function(_0x343409,_0x3d5e9f){return _0x343409(_0x3d5e9f);},'nyuZO':function(_0x56e9c8,_0x418b0a){return _0x56e9c8===_0x418b0a;},'gaFSc':'\x0aNo\x20feature\x20reviews\x20found.','PzfUC':function(_0x189c06,_0x39384d){return _0x189c06>_0x39384d;},'WAlRl':_0x10ab9f(0xef),'lXOdm':function(_0x755745,_0x8f4632){return _0x755745(_0x8f4632);},'nJbjM':function(_0x1fceb7,_0x3d675e){return _0x1fceb7!==_0x3d675e;},'XLfLA':'\x20--include-deleted'},_0x598e0f={'limit':_0x19f555['limit']??0xa,'offset':_0x19f555[_0x10ab9f(0x17b)]??0x0,'includeDeleted':_0x19f555['includeDeleted']};_0x19f555[_0x10ab9f(0x1b4)]&&(_0x598e0f[_0x10ab9f(0x1ac)]=getGitRepoUrl(),_0x598e0f[_0x10ab9f(0xd7)]=_0x317bed[_0x10ab9f(0x1b3)](getGitBranch));const _0x59b4c5=await _0x317bed[_0x10ab9f(0xfd)](listFeatures,_0x598e0f);if(_0x317bed[_0x10ab9f(0x1b5)](_0x59b4c5[_0x10ab9f(0x147)][_0x10ab9f(0x16b)],0x0)){console['log'](_0x317bed['gaFSc']);return;}const _0x189749=_0x317bed['PzfUC'](_0x59b4c5[_0x10ab9f(0xfe)],_0x59b4c5[_0x10ab9f(0x147)]['length'])?'Showing\x20'+_0x59b4c5[_0x10ab9f(0x147)][_0x10ab9f(0x16b)]+_0x10ab9f(0xf9)+_0x59b4c5['totalCount']:_0x59b4c5['totalCount']+'\x20feature\x20review(s)\x20found';console['log']('\x0a'+_0x189749+':\x0a');for(const _0x5b85af of _0x59b4c5['items']){const _0x247e7f=_0x317bed[_0x10ab9f(0x11a)][_0x10ab9f(0x16c)]('|');let _0x531193=0x0;while(!![]){switch(_0x247e7f[_0x531193++]){case'0':_0x5b85af['stats']&&console[_0x10ab9f(0xf3)]('\x20\x20\x20Progress:\x20'+_0x317bed['lXOdm'](getProgressDisplay,_0x5b85af[_0x10ab9f(0x14b)]));continue;case'1':console['log'](_0x10ab9f(0x10c)+_0x5b85af['id']);continue;case'2':_0x5b85af[_0x10ab9f(0xd7)]&&console[_0x10ab9f(0xf3)]('\x20\x20\x20Branch:\x20'+_0x5b85af[_0x10ab9f(0xd7)]);continue;case'3':console['log'](_0x10ab9f(0x177)+new Date(_0x5b85af[_0x10ab9f(0xec)])[_0x10ab9f(0x111)]());continue;case'4':console['log'](''+_0x5b85af[_0x10ab9f(0xeb)]);continue;case'5':console[_0x10ab9f(0xf3)]('');continue;}break;}}const _0x246b5a=_0x598e0f[_0x10ab9f(0x165)]??0xa,_0xe6fc6b=(_0x598e0f[_0x10ab9f(0x17b)]??0x0)+_0x59b4c5[_0x10ab9f(0x147)]['length'];if(_0xe6fc6b<_0x59b4c5[_0x10ab9f(0xfe)]){const _0x205db8=_0x317bed[_0x10ab9f(0x1a3)](_0x246b5a,0xa)?'\x20--limit\x20'+_0x246b5a:'',_0x1d4170=_0x19f555['currentBranch']?'\x20--current-branch':'',_0x125dbd=_0x19f555[_0x10ab9f(0x182)]?_0x317bed[_0x10ab9f(0x15d)]:'';console[_0x10ab9f(0xf3)]('Next\x20page:\x20ranger\x20list\x20--offset\x20'+_0xe6fc6b+_0x205db8+_0x1d4170+_0x125dbd);}}export async function featureShow(_0x2b1b86){const _0x459c58=_0x315c8e,_0x4b441f={'RMomL':function(_0xe9145b,_0xb9a164,_0x175b01){return _0xe9145b(_0xb9a164,_0x175b01);}},_0x4641e1=_0x2b1b86||await getActiveFeatureId();if(!_0x4641e1)throw new Error(_0x459c58(0x161));const _0x352f47=await getFeature(_0x4641e1);_0x4b441f[_0x459c58(0x1b2)](displayFeature,_0x352f47,_0x352f47['checklistItems']);}export async function featureResume(_0x57d7f9){const _0x2eb025=_0x315c8e,_0x48556d={'DqvIt':function(_0x9b5a62,_0x7900a1){return _0x9b5a62(_0x7900a1);},'DopPO':function(_0x7c0e17){return _0x7c0e17();},'gHUJY':function(_0x4a5709,_0x5f3136){return _0x4a5709(_0x5f3136);},'Zwxzk':function(_0x4133ca,_0x107702,_0x1ab690){return _0x4133ca(_0x107702,_0x1ab690);},'wZvPh':function(_0x3f7bff,_0x12aa42){return _0x3f7bff(_0x12aa42);},'MHTpJ':function(_0x2e7fae,_0x40a97c){return _0x2e7fae&&_0x40a97c;},'Knpje':function(_0x7032c8,_0x33bffd){return _0x7032c8||_0x33bffd;},'FpYzm':function(_0x10c9cd,_0xb310a3){return _0x10c9cd(_0xb310a3);},'HHUfc':_0x2eb025(0x152),'nBtpC':'Please\x20specify\x20the\x20feature\x20review\x20ID:\x20ranger\x20resume\x20<id>','IDjMS':function(_0x2d1741,_0x212c43){return _0x2d1741!==_0x212c43;},'UVFcD':function(_0x16eb62,_0x3a5b8b,_0x1c7c5b){return _0x16eb62(_0x3a5b8b,_0x1c7c5b);}};if(_0x57d7f9){const _0x1455eb=await _0x48556d['DqvIt'](getFeature,_0x57d7f9);await setActiveFeatureId(_0x1455eb['id']);const _0x19e4fe=_0x48556d['DopPO'](getGitBranch);_0x19e4fe&&_0x19e4fe!==_0x1455eb[_0x2eb025(0xd7)]&&(await updateFeature(_0x1455eb['id'],{'gitBranch':_0x19e4fe}),console['log']('\x20\x20\x20Updated\x20branch\x20to:\x20'+_0x19e4fe));console[_0x2eb025(0xf3)]('\x0a✅\x20Resumed\x20feature\x20review:\x20'+_0x1455eb[_0x2eb025(0xeb)]+'\x20('+_0x1455eb['id']+')'),await _0x48556d[_0x2eb025(0x18d)](tryStartCurrentSession,_0x1455eb['id']);const _0x46a915=process['env']['CLAUDE_SESSION_ID'];_0x46a915&&registerSession(_0x46a915,_0x1455eb['id']);_0x48556d['Zwxzk'](displayFeature,_0x1455eb,_0x1455eb['checklistItems']),await _0x48556d['wZvPh'](printFeedbackNudge,_0x1455eb['id']);return;}const _0x5ec5e6=getGitRepoUrl(),_0x256a89=_0x48556d['DopPO'](getGitBranch);if(_0x48556d['MHTpJ'](!_0x5ec5e6,!_0x256a89))throw new Error('Not\x20in\x20a\x20git\x20repository.');console[_0x2eb025(0xf3)](_0x2eb025(0x170)+(_0x5ec5e6||_0x2eb025(0xf0))+_0x2eb025(0x16d)+_0x48556d[_0x2eb025(0x12e)](_0x256a89,'any')+_0x2eb025(0x116));const _0x40b8eb=await _0x48556d[_0x2eb025(0x183)](listFeatures,{'gitRepoUrl':_0x5ec5e6,'gitBranch':_0x256a89}),_0x1da2e1=_0x40b8eb['items'][_0x2eb025(0xf8)](_0x568af7=>_0x568af7['status']?_0x568af7['status']!==_0x2eb025(0xed):!_0x568af7['completedAt']);if(_0x1da2e1[_0x2eb025(0x16b)]===0x0){console['log']('\x0aNo\x20matching\x20active\x20feature\x20reviews\x20found.'),console[_0x2eb025(0xf3)](_0x48556d[_0x2eb025(0x157)]);return;}let _0x3661a4;if(_0x1da2e1[_0x2eb025(0x16b)]===0x1)_0x3661a4=_0x1da2e1[0x0];else{const _0x4b012d=process['stdin'][_0x2eb025(0x120)]&&process[_0x2eb025(0x16e)][_0x2eb025(0x120)];if(!_0x4b012d){console[_0x2eb025(0xf3)]('\x0aNon-interactive\x20mode\x20detected.\x20Multiple\x20feature\x20reviews\x20found:');for(const _0x1cba07 of _0x1da2e1){console['log']('\x20\x20'+_0x1cba07['name']),console['log'](_0x2eb025(0xe0)+_0x1cba07['id']),_0x1cba07[_0x2eb025(0x14b)]&&console[_0x2eb025(0xf3)](_0x2eb025(0x1ad)+getProgressDisplay(_0x1cba07['stats'])),_0x1cba07[_0x2eb025(0xd7)]&&console[_0x2eb025(0xf3)]('\x20\x20\x20\x20\x20Branch:\x20'+_0x1cba07['gitBranch']);}throw new Error(_0x48556d[_0x2eb025(0xd2)]);}const {selected:_0x56715a}=await _0x51fc58[_0x2eb025(0x14c)]([{'type':_0x2eb025(0xfa),'name':'selected','message':'Multiple\x20feature\x20reviews\x20found.\x20Select\x20one:','choices':_0x1da2e1[_0x2eb025(0xda)](_0x5a0fa=>({'name':_0x5a0fa[_0x2eb025(0xeb)]+'\x20('+_0x5a0fa['id']+')','value':_0x5a0fa['id']}))}]);_0x3661a4=_0x1da2e1[_0x2eb025(0x12d)](_0x4042ac=>_0x4042ac['id']===_0x56715a);}await _0x48556d[_0x2eb025(0x159)](setActiveFeatureId,_0x3661a4['id']);_0x256a89&&_0x48556d['IDjMS'](_0x256a89,_0x3661a4['gitBranch'])&&(await _0x48556d[_0x2eb025(0x195)](updateFeature,_0x3661a4['id'],{'gitBranch':_0x256a89}),console[_0x2eb025(0xf3)](_0x2eb025(0x17f)+_0x256a89));console[_0x2eb025(0xf3)]('\x0a✅\x20Resumed\x20feature\x20review:\x20'+_0x3661a4[_0x2eb025(0xeb)]+'\x20('+_0x3661a4['id']+')'),await tryStartCurrentSession(_0x3661a4['id']);const _0x161baf=await getFeature(_0x3661a4['id']),_0x4cbb35=process['env']['CLAUDE_SESSION_ID'];_0x4cbb35&&registerSession(_0x4cbb35,_0x161baf['id']),_0x48556d[_0x2eb025(0xd9)](displayFeature,_0x161baf,_0x161baf['checklistItems']),await _0x48556d[_0x2eb025(0x18d)](printFeedbackNudge,_0x161baf['id']);}async function printFeedbackNudge(_0x14e863){const _0x4aece1=_0x315c8e,_0x44a05f={'XFvbS':function(_0xd3ce64,_0xe7fbe2){return _0xd3ce64(_0xe7fbe2);},'kjeqb':function(_0x525406,_0x1a2a0b){return _0x525406>_0x1a2a0b;}};try{const {items:_0x42781c}=await _0x44a05f['XFvbS'](getActionItems,_0x14e863);let _0x499b4d=0x0,_0x2af85c=0x0;for(const _0x1ef3c8 of _0x42781c){const _0x4f3526=await getItemFeedback(_0x14e863,_0x1ef3c8['id']);_0x4f3526[_0x4aece1(0x14a)][_0x4aece1(0x16b)]>0x0&&(_0x499b4d+=_0x4f3526['unaddressedComments'][_0x4aece1(0x16b)],_0x2af85c++);}_0x44a05f['kjeqb'](_0x499b4d,0x0)&&(console[_0x4aece1(0xf3)]('\x0a⚠️\x20\x20'+_0x499b4d+_0x4aece1(0x181)+_0x2af85c+'\x20scenario(s).'),console[_0x4aece1(0xf3)](_0x4aece1(0x10f)));}catch{}}async function tryStartCurrentSession(_0x4b2f3b){const _0x118fe3=_0x315c8e,_0x1f7d74={'iZGBf':function(_0x130c03,_0x27af6a){return _0x130c03(_0x27af6a);}};try{const {sessions:_0xff5d25}=await _0x1f7d74['iZGBf'](listFeatureSessions,_0x4b2f3b),_0x3239c7=_0xff5d25['find'](_0x1575c6=>_0x1575c6[_0x118fe3(0x189)]===_0x118fe3(0x136));_0x3239c7&&(await startSession(_0x4b2f3b,_0x3239c7['id']),console['log'](_0x118fe3(0x100)+_0x3239c7['iteration']));}catch{}}export async function featureReport(_0x91940d,_0x5e52a0){const _0x3f586b=_0x315c8e,_0x5ad9b9={'DDyPo':_0x3f586b(0xd1),'viYZK':function(_0x377510){return _0x377510();},'ZrRYF':function(_0x254602,_0x26cfff){return _0x254602(_0x26cfff);},'TUNGc':function(_0x3b2b25,_0x3cef79,_0x34b688){return _0x3b2b25(_0x3cef79,_0x34b688);}},_0x18f986=_0x91940d||await getActiveFeatureId();if(!_0x18f986)throw new Error(_0x5ad9b9[_0x3f586b(0x118)]);console[_0x3f586b(0xf3)](_0x3f586b(0x119));const _0x320cdd=await getFeatureReportMarkdown(_0x18f986,{'style':_0x5e52a0[_0x3f586b(0x114)]}),_0x36782e=_0x5e52a0['output']||join(_0x5ad9b9[_0x3f586b(0x131)](getRangerDir),_0x3f586b(0x168),_0x18f986+'.md'),_0x57721b=join(_0x36782e,'..');!_0x5ad9b9[_0x3f586b(0x11c)](existsSync,_0x57721b)&&await _0x5ad9b9[_0x3f586b(0x1a5)](mkdir,_0x57721b,{'recursive':!![]}),await writeFile(_0x36782e,_0x320cdd,'utf-8'),console['log']('\x0a✅\x20Report\x20generated:\x20'+_0x36782e);}function getScenarioResult(_0x41d36d){const _0x23e857=_0x315c8e,_0x529c0c={'nsKYT':'closed'};if(_0x41d36d[_0x23e857(0x189)]===_0x529c0c['nsKYT'])return _0x41d36d[_0x23e857(0x138)]??'closed';if(_0x41d36d['status']===_0x23e857(0x174))return _0x23e857(0x1af);return _0x41d36d['status'];}function getScenarioRationale(_0x341308,_0x521acb){const _0x2dfbcb=_0x315c8e,_0x2084c2='0|2|1|4|3|5'[_0x2dfbcb(0x16c)]('|');let _0x55ce0c=0x0;while(!![]){switch(_0x2084c2[_0x55ce0c++]){case'0':if(_0x521acb)return _0x521acb;continue;case'1':if(_0x341308[_0x2dfbcb(0x14f)])return _0x341308['incompleteReason'];continue;case'2':if(_0x341308['blockedReason'])return _0x341308[_0x2dfbcb(0xdb)];continue;case'3':if(_0x341308['notes'])return _0x341308[_0x2dfbcb(0xde)];continue;case'4':if(_0x341308['canceledReason'])return _0x341308['canceledReason'];continue;case'5':return null;}break;}}export async function featureReportPrDescription(_0xcfaf8d,_0x56fa43){const _0x480841=_0x315c8e,_0x4075e4={'BTuEO':'No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.','GZLlI':function(_0x314efa,_0x4dd23d){return _0x314efa(_0x4dd23d);},'lHqax':function(_0x23db67,_0x2d9944,_0x86d1fb){return _0x23db67(_0x2d9944,_0x86d1fb);},'WRLIW':function(_0x57a8b4,_0x45e27f){return _0x57a8b4===_0x45e27f;},'oCRtE':_0x480841(0xe6),'gRvNc':function(_0xd51895,_0x5ba0fb){return _0xd51895>_0x5ba0fb;},'bYmtF':'\x0aAvailable\x20scenarios:','coFoI':function(_0x11474b,_0x1289b4){return _0x11474b<_0x1289b4;},'ygqMs':function(_0x211b64,_0x116636){return _0x211b64+_0x116636;},'vKpKs':function(_0x5ee232,_0x678829){return _0x5ee232===_0x678829;},'OMWgt':'\x0a❌\x20All\x20scenarios\x20were\x20excluded.','iBpZN':function(_0x145e01,_0x2db67c,_0x12033a,_0x3b4dd0){return _0x145e01(_0x2db67c,_0x12033a,_0x3b4dd0);}},_0x131d29=_0xcfaf8d||await getActiveFeatureId();if(!_0x131d29)throw new Error(_0x4075e4[_0x480841(0x164)]);const _0x5a6494=await _0x4075e4[_0x480841(0x124)](getFeature,_0x131d29),_0x474d6d=_0x5a6494[_0x480841(0xd3)]||[],_0x3f3249=_0x4075e4['lHqax'](getCurrentSessionItems,_0x5a6494,_0x474d6d);_0x4075e4[_0x480841(0x15f)](_0x3f3249['length'],0x0)&&(console[_0x480841(0x185)](_0x4075e4[_0x480841(0x10e)]),process['exit'](0x1));const _0x33810f=_0x56fa43['excludeScenarios']??[],_0x3c2e6f=_0x33810f[_0x480841(0xf8)](_0x328246=>!Number[_0x480841(0x176)](_0x328246)||_0x328246<0x1||_0x328246>_0x3f3249[_0x480841(0x16b)]);if(_0x4075e4['gRvNc'](_0x3c2e6f[_0x480841(0x16b)],0x0)){console['error']('\x0a❌\x20Invalid\x20scenario\x20number(s):\x20'+_0x3c2e6f[_0x480841(0xd8)](',\x20')),console['log'](_0x4075e4['bYmtF']);for(let _0x6f2734=0x0;_0x4075e4['coFoI'](_0x6f2734,_0x3f3249[_0x480841(0x16b)]);_0x6f2734++){console['log']('\x20\x20'+_0x4075e4['ygqMs'](_0x6f2734,0x1)+'.\x20'+_0x3f3249[_0x6f2734]['description']);}process['exit'](0x1);}const _0xf8520d=new Set(_0x33810f[_0x480841(0xda)](_0x2c0273=>_0x2c0273-0x1)),_0x1f40e0=_0x3f3249[_0x480841(0xf8)]((_0x5b26c3,_0x58330a)=>!_0xf8520d[_0x480841(0x172)](_0x58330a));_0x4075e4[_0x480841(0x1a4)](_0x1f40e0[_0x480841(0x16b)],0x0)&&(console[_0x480841(0x185)](_0x4075e4['OMWgt']),process['exit'](0x1));if(_0x56fa43['json'])await _0x4075e4[_0x480841(0x13a)](outputJsonReport,_0x131d29,_0x5a6494,_0x1f40e0);else{const _0x4b4d90=await _0x4075e4['lHqax'](getFeatureReportMarkdown,_0x131d29,{'itemIds':_0x1f40e0[_0x480841(0xda)](_0x5a26a8=>_0x5a26a8['id'])});process[_0x480841(0x16e)]['write'](_0x4b4d90[_0x480841(0x160)]()+'\x0a');}}async function outputJsonReport(_0x32cf43,_0xb78d29,_0x2fd27a){const _0x2ca86e=_0x315c8e,_0x3d3cf3={'aSElt':function(_0x4b5465,_0x53333d){return _0x4b5465(_0x53333d);},'UFbHw':function(_0x6c40fa,_0x371aa0){return _0x6c40fa+_0x371aa0;}},_0x5970d2=getApiBaseUrl(),_0x499d38=await _0x3d3cf3['aSElt'](getFeatureReport,_0x32cf43),_0xc31072=new Map(_0x499d38['checklistItems']['map'](_0x158288=>[_0x158288['id'],_0x158288])),_0x4e2add=await Promise[_0x2ca86e(0x130)](_0x2fd27a['map'](async _0x294815=>{const _0x52accc=_0x2ca86e,_0x153955=_0xc31072['get'](_0x294815['id']),_0x1ae63e=_0x153955?.[_0x52accc(0x190)]??null;let _0x3ee1f4=[];if(_0x294815['browserSessionId'])try{const {steps:_0x3d51c0}=await getBrowserSessionSteps(_0x294815['browserSessionId']);_0x3d51c0['length']>0x0&&(_0x3ee1f4=_0x3d51c0[_0x52accc(0xda)](_0xbc3424=>{const _0x11acd1=_0x52accc,_0x5c7df7=_0xbc3424[_0x11acd1(0x11f)]['find'](_0x4f4677=>_0x4f4677[_0x11acd1(0x140)]==='screenshot'&&_0x4f4677['timing']==='after')??_0xbc3424['assets']['find'](_0x3beb62=>_0x3beb62[_0x11acd1(0x140)]==='screenshot');let _0x146ad1=null,_0x242bff=null;if(_0x5c7df7){const _0xa247b9=_0x5c7df7[_0x11acd1(0x1a9)]['location'][_0x11acd1(0x16c)]('/')[_0x11acd1(0x163)]();_0x146ad1=_0x5970d2+_0x11acd1(0x134)+_0x294815[_0x11acd1(0x193)]+_0x11acd1(0x137)+_0xa247b9,_0xa247b9&&(_0x242bff=_0xa247b9[_0x11acd1(0x1b0)](/\.\w+$/,'')['replace'](/^(key_)?\d+_/,'')['replace'](/[-_]/g,'\x20'));}return{'description':_0x242bff||_0xbc3424[_0x11acd1(0x123)]||_0xbc3424['stepName']||'Step\x20'+_0xbc3424['position'],'screenshot':_0x146ad1,'is_key_step':_0xbc3424[_0x11acd1(0xe7)]};}));}catch{}return _0x3ee1f4[_0x52accc(0x16b)]===0x0&&_0x1ae63e?.[_0x52accc(0x155)]&&(_0x3ee1f4=_0x1ae63e[_0x52accc(0x155)]['map']((_0x11bb82,_0x427b59)=>({'description':'Screenshot\x20'+(_0x427b59+0x1),'screenshot':_0x11bb82,'is_key_step':![]}))),{'description':_0x294815['description'],'result':getScenarioResult(_0x294815),'rationale':getScenarioRationale(_0x294815,_0x1ae63e?.['agentResponse']),'steps':_0x3ee1f4};})),_0x42c2bb={'url':_0xb78d29[_0x2ca86e(0xd0)],'scenarios':_0x4e2add};process[_0x2ca86e(0x16e)][_0x2ca86e(0x191)](_0x3d3cf3['UFbHw'](JSON['stringify'](_0x42c2bb,null,0x2),'\x0a'));}export async function featureConcludeSession(_0x2bebba){const _0x11c4a9=_0x315c8e,_0x36c829={'DKAhd':function(_0x30e07d){return _0x30e07d();},'PKiOX':'No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','QHKeK':function(_0x5c82b8,_0xde596a){return _0x5c82b8(_0xde596a);},'PqJlo':'No\x20active\x20session\x20for\x20this\x20feature\x20review.','uZITl':'Current\x20session\x20not\x20found.','oIAgr':function(_0xdf627,_0x4380aa){return _0xdf627===_0x4380aa;},'AhcHs':_0x11c4a9(0xf6),'IvExV':_0x11c4a9(0x113),'zbwoW':function(_0x34ab91,_0x1f1dca,_0x451db9){return _0x34ab91(_0x1f1dca,_0x451db9);}},_0x12b3f9=_0x2bebba||await _0x36c829[_0x11c4a9(0x19a)](getActiveFeatureId);if(!_0x12b3f9)throw new Error(_0x36c829['PKiOX']);const _0x25ff6d=await _0x36c829['QHKeK'](getFeature,_0x12b3f9);if(!_0x25ff6d[_0x11c4a9(0x135)])throw new Error(_0x36c829['PqJlo']);const {sessions:_0x5b797b}=await _0x36c829[_0x11c4a9(0x133)](listFeatureSessions,_0x12b3f9),_0x1673e6=_0x5b797b['find'](_0x3ca272=>_0x3ca272['id']===_0x25ff6d[_0x11c4a9(0x135)]);if(!_0x1673e6)throw new Error(_0x36c829['uZITl']);if(_0x36c829[_0x11c4a9(0x13c)](_0x1673e6[_0x11c4a9(0x189)],_0x36c829[_0x11c4a9(0xf1)])){console['log'](_0x11c4a9(0x178));return;}if(_0x1673e6['status']!=='in_progress')throw new Error(_0x11c4a9(0x104)+_0x1673e6['status']);console['log'](_0x36c829['IvExV']),await _0x36c829[_0x11c4a9(0x1a2)](concludeSession,_0x12b3f9,_0x25ff6d[_0x11c4a9(0x135)]),console[_0x11c4a9(0xf3)](_0x11c4a9(0x1b6)+_0x1673e6[_0x11c4a9(0xe4)]+'\x20concluded.'),console['log'](_0x11c4a9(0x105));}export async function featureSessions(_0x4abb39){const _0x64fedf=_0x315c8e,_0x5c9f29={'wdqwB':function(_0x4f9812){return _0x4f9812();},'jGBFe':function(_0x18551e,_0x1a552d){return _0x18551e(_0x1a552d);},'sMOij':function(_0x337719,_0x714920){return _0x337719===_0x714920;},'oqnaz':function(_0x2731e6,_0x179afe){return _0x2731e6===_0x179afe;},'LjOIa':'in_progress'},_0x484643=_0x4abb39||await _0x5c9f29[_0x64fedf(0x18b)](getActiveFeatureId);if(!_0x484643)throw new Error(_0x64fedf(0xd1));const _0x7b8faf=await _0x5c9f29['jGBFe'](getFeature,_0x484643);console[_0x64fedf(0xf3)](_0x64fedf(0xea)+_0x7b8faf['name']+'\x0a');const {sessions:_0x367a80}=await listFeatureSessions(_0x484643);if(_0x5c9f29['sMOij'](_0x367a80[_0x64fedf(0x16b)],0x0)){console['log'](_0x64fedf(0x145));return;}for(const _0x1b2773 of _0x367a80){const _0x59cefc=_0x1b2773[_0x64fedf(0x189)]===_0x64fedf(0xf6)?'✅':_0x5c9f29['oqnaz'](_0x1b2773['status'],_0x5c9f29[_0x64fedf(0x198)])?'🔄':'▶️';console['log'](_0x59cefc+_0x64fedf(0x110)+_0x1b2773['iteration']+'\x20('+_0x1b2773['id']+')'),console['log']('\x20\x20\x20Status:\x20'+_0x1b2773['status']),console[_0x64fedf(0xf3)]('\x20\x20\x20Created:\x20'+new Date(_0x1b2773[_0x64fedf(0xec)])['toLocaleString']()),_0x1b2773[_0x64fedf(0xe9)]&&console['log'](_0x64fedf(0x15c)+new Date(_0x1b2773['completedAt'])[_0x64fedf(0x175)]()),console['log']('');}}export async function featureAddScenario(_0x47603f,_0x2479c9){const _0x141119=_0x315c8e,_0x48c9e7={'MYWXj':function(_0x3aafeb){return _0x3aafeb();},'Cgytc':function(_0xa8406b,_0x2e2e0a,_0x54b974){return _0xa8406b(_0x2e2e0a,_0x54b974);},'zhFnR':function(_0x4836ab,_0x14e689){return _0x4836ab(_0x14e689);},'stZBL':function(_0xcc0d63,_0x5840bf,_0x43b6b5){return _0xcc0d63(_0x5840bf,_0x43b6b5);}},_0x2ef93c=_0x2479c9||await _0x48c9e7['MYWXj'](getActiveFeatureId);if(!_0x2ef93c)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 _0x167078=await getFeature(_0x2ef93c);if(_0x167078[_0x141119(0x128)]&&!_0x167078['latestReview']['submittedAt'])throw new Error('Cannot\x20add\x20scenario:\x20feature\x20review\x20has\x20an\x20active\x20review.\x20Please\x20finish\x20your\x20review\x20first:\x20'+_0x167078['dashboardUrl']);await _0x48c9e7['Cgytc'](createChecklistItem,_0x2ef93c,_0x47603f);const _0x4b9081=await _0x48c9e7[_0x141119(0x12b)](getFeature,_0x2ef93c);console[_0x141119(0xf3)](_0x141119(0x180)),_0x48c9e7['stZBL'](displayFeature,_0x4b9081,_0x4b9081['checklistItems']);}export async function featureEditScenario(_0x46cce1,_0x588d8b){const _0x1097ca=_0x315c8e,_0x6481bd={'aohEe':function(_0xec7ecf){return _0xec7ecf();},'gukLZ':function(_0x2f79c7,_0x4b1b83){return _0x2f79c7===_0x4b1b83;},'vsHkn':_0x1097ca(0x139),'ihbin':function(_0x258d46,_0x1417f1){return _0x258d46+_0x1417f1;},'dfEjJ':function(_0x4f5da0,_0x768817){return _0x4f5da0-_0x768817;},'UkzNF':function(_0x4563a3,_0xde356e){return _0x4563a3<_0xde356e;},'DGWbj':'\x0aAvailable\x20scenarios:','UyUzH':function(_0x2e367f,_0x120669){return _0x2e367f+_0x120669;},'uPWTV':function(_0x210ebc,_0x4a0c04){return _0x210ebc(_0x4a0c04);}},_0x694629=_0x588d8b['id']||await _0x6481bd[_0x1097ca(0xe5)](getActiveFeatureId);!_0x694629&&(console[_0x1097ca(0x185)]('\x0a❌\x20No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.'),console['error'](_0x1097ca(0x199)),process['exit'](0x1));const _0x4ad014=await getFeature(_0x694629);_0x4ad014['latestReview']&&!_0x4ad014[_0x1097ca(0x128)]['submittedAt']&&(console['error'](_0x1097ca(0x12c)),console['error']('Please\x20finish\x20your\x20review\x20first:'),console['error']('\x20\x20'+_0x4ad014[_0x1097ca(0xd0)]),process['exit'](0x1));const _0x2d4d40=_0x4ad014[_0x1097ca(0xd3)]||[];_0x6481bd[_0x1097ca(0x121)](_0x2d4d40['length'],0x0)&&(console['error'](_0x6481bd[_0x1097ca(0xe8)]),process['exit'](0x1));if(_0x6481bd[_0x1097ca(0x121)](_0x588d8b['scenario'],undefined)){console['error'](_0x1097ca(0x103)),console[_0x1097ca(0xf3)](_0x1097ca(0x1b1));for(let _0x5c8d26=0x0;_0x5c8d26<_0x2d4d40[_0x1097ca(0x16b)];_0x5c8d26++){console['log']('\x20\x20'+_0x6481bd['ihbin'](_0x5c8d26,0x1)+'.\x20'+_0x2d4d40[_0x5c8d26][_0x1097ca(0x123)]);}process['exit'](0x1);}const _0x4b3300=_0x6481bd[_0x1097ca(0x10b)](_0x588d8b[_0x1097ca(0x1a1)],0x1);if(_0x6481bd['UkzNF'](_0x4b3300,0x0)||_0x4b3300>=_0x2d4d40['length']){console[_0x1097ca(0x185)](_0x1097ca(0x18e)+_0x588d8b['scenario']+_0x1097ca(0x13b)+_0x2d4d40['length']+'\x20scenarios.'),console[_0x1097ca(0xf3)](_0x6481bd[_0x1097ca(0x197)]);for(let _0x2e3e70=0x0;_0x2e3e70<_0x2d4d40['length'];_0x2e3e70++){console['log']('\x20\x20'+_0x6481bd[_0x1097ca(0x162)](_0x2e3e70,0x1)+'.\x20'+_0x2d4d40[_0x2e3e70]['description']);}process['exit'](0x1);}const _0x3d9e82=_0x2d4d40[_0x4b3300];await updateChecklistItem(_0x694629,_0x3d9e82['id'],{'description':_0x46cce1});const _0x37e65c=await _0x6481bd[_0x1097ca(0x156)](getFeature,_0x694629);console[_0x1097ca(0xf3)](_0x1097ca(0xd5)),displayFeature(_0x37e65c,_0x37e65c['checklistItems']);}async function downloadFeedbackImage(_0x48de6f,_0x190bac){const _0x495a1a=_0x315c8e,_0x5b06df={'sUSvR':function(_0xfb4c09,_0x198337,_0xcff51b){return _0xfb4c09(_0x198337,_0xcff51b);},'JetyY':function(_0x57d6db){return _0x57d6db();},'GMgiG':_0x495a1a(0x16f)};try{const _0x265f10=_0x5b06df['sUSvR'](join,_0x5b06df['JetyY'](getRangerDir),_0x5b06df[_0x495a1a(0x13d)]);await _0x5b06df['sUSvR'](mkdir,_0x265f10,{'recursive':!![]});const _0x5379c2=join(_0x265f10,'comment_'+_0x190bac+'.png'),_0x4ef710=await fetch(_0x48de6f);if(!_0x4ef710['ok'])return null;const _0x506820=Buffer['from'](await _0x4ef710['arrayBuffer']());return await writeFile(_0x5379c2,_0x506820),_0x5379c2;}catch{return null;}}export async function featureGetReview(_0x37becd){const _0xd4a525=_0x315c8e,_0x557229={'qBLxt':'No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','wfHGi':_0xd4a525(0x18f),'Kkfqq':function(_0x436a39,_0x11dc79){return _0x436a39<_0x11dc79;},'OYgQD':function(_0x3a6e70,_0x55e8b0){return _0x3a6e70>_0x55e8b0;},'DVFbj':'en-US','Mqxla':_0xd4a525(0xee),'jAVaV':'\x20>\x20','cXNWI':function(_0x14097b,_0x2c59cb){return _0x14097b===_0x2c59cb;},'UOSJM':function(_0x3a1adb,_0xc84bc3){return _0x3a1adb>=_0xc84bc3;}},_0x59acb0=_0x37becd||await getActiveFeatureId();if(!_0x59acb0)throw new Error(_0x557229['qBLxt']);const _0x14e748=await getFeature(_0x59acb0),{items:_0x24fb8b}=await getActionItems(_0x59acb0);console[_0xd4a525(0xf3)](_0xd4a525(0x1a8)+_0x14e748['name']+'\x20('+_0x14e748['id']+')\x0a');if(_0x24fb8b[_0xd4a525(0x16b)]===0x0){console[_0xd4a525(0xf3)](_0x557229['wfHGi']);return;}for(let _0x420451=0x0;_0x557229[_0xd4a525(0x10a)](_0x420451,_0x24fb8b[_0xd4a525(0x16b)]);_0x420451++){const _0x2e11bb=_0x24fb8b[_0x420451],_0x4893e5=_0x557229['OYgQD'](_0x2e11bb['version'],0x1)?'\x20(v'+_0x2e11bb[_0xd4a525(0x106)]+')':'',_0x137dfd=await getItemFeedback(_0x59acb0,_0x2e11bb['id']);if(_0x137dfd['unaddressedComments'][_0xd4a525(0x16b)]>0x0){console[_0xd4a525(0xf3)](_0xd4a525(0x166)+(_0x420451+0x1)+':\x20\x22'+_0x2e11bb['description']+'\x22'+_0x4893e5+'\x20—\x20'+_0x137dfd['unaddressedComments']['length']+'\x20unaddressed\x20comment(s)');for(const _0x5ccfc2 of _0x137dfd[_0xd4a525(0x14a)]){const _0x56e6a2=new Date(_0x5ccfc2['createdAt'])[_0xd4a525(0x111)](_0x557229['DVFbj'],{'month':_0xd4a525(0x11d),'day':'numeric'}),_0x284875=_0x5ccfc2[_0xd4a525(0x101)]||_0x5ccfc2[_0xd4a525(0x109)]||_0x557229['Mqxla'];console[_0xd4a525(0xf3)]('\x20\x20💬\x20'+_0x284875+'\x20('+_0x56e6a2+_0xd4a525(0x158)+_0x5ccfc2['content']+'\x22');if(_0x5ccfc2[_0xd4a525(0x169)]){const _0x16a94a=await downloadFeedbackImage(_0x5ccfc2['assetUrl'],_0x5ccfc2['id']);_0x16a94a&&console[_0xd4a525(0xf3)](_0xd4a525(0x1ab)+_0x16a94a);}if(_0x5ccfc2['domRef']){const _0x346589=_0x5ccfc2[_0xd4a525(0xdf)]['selector']['split'](_0x557229[_0xd4a525(0x17e)])[_0xd4a525(0x163)]()?.['split'](':')[0x0]||'element',_0x3637dd=_0x5ccfc2[_0xd4a525(0xdf)]['textContent']?'\x20\x22'+_0x5ccfc2['domRef'][_0xd4a525(0xf2)][_0xd4a525(0x19d)](0x0,0x3c)+'\x22':'';console[_0xd4a525(0xf3)]('\x20\x20\x20\x20\x20🎯\x20Element:\x20<'+_0x346589+'>'+_0x3637dd),console[_0xd4a525(0xf3)](_0xd4a525(0xff)+_0x5ccfc2[_0xd4a525(0xdf)][_0xd4a525(0x167)]);}else{if(_0x5ccfc2[_0xd4a525(0x149)]){const _0x2fe56d=_0x5ccfc2[_0xd4a525(0x149)][_0xd4a525(0x17d)];_0x557229['cXNWI'](_0x5ccfc2['spatial']['type'],_0xd4a525(0x127))&&_0x557229[_0xd4a525(0x16a)](_0x2fe56d['length'],0x2)?console[_0xd4a525(0xf3)]('\x20\x20\x20\x20\x20📍\x20Annotation:\x20point\x20at\x20('+_0x2fe56d[0x0]['toFixed'](0x2)+',\x20'+_0x2fe56d[0x1][_0xd4a525(0x143)](0x2)+')'):console[_0xd4a525(0xf3)](_0xd4a525(0x186)+_0x5ccfc2[_0xd4a525(0x149)]['type']+_0xd4a525(0x14d)+_0x2fe56d['map'](_0x20cceb=>_0x20cceb[_0xd4a525(0x143)](0x2))[_0xd4a525(0xd8)](',\x20')+']');}}}if(_0x137dfd['canonicalFlow']){console['log']('\x20\x20Expected\x20flow:');for(const _0x208f54 of _0x137dfd['canonicalFlow'][_0xd4a525(0x16c)]('\x0a')){console[_0xd4a525(0xf3)]('\x20\x20\x20\x20'+_0x208f54);}}}else console['log']('Scenario\x20'+(_0x420451+0x1)+_0xd4a525(0x1a0)+_0x2e11bb[_0xd4a525(0x123)]+'\x22'+_0x4893e5+_0xd4a525(0x148)),console['log'](_0xd4a525(0x132));console['log']('');}}export async function featureDelete(_0x5468b1){const _0x4c9856=_0x315c8e,_0x514315={'ymyxj':function(_0x487b0e){return _0x487b0e();},'HjGua':function(_0x3c65a9,_0x3d40e1){return _0x3c65a9+_0x3d40e1;},'YJctC':'\x20\x20\x20To\x20restore\x20it,\x20run:\x20ranger\x20restore\x20'},_0x4d6e02=_0x5468b1||await _0x514315[_0x4c9856(0xd6)](getActiveFeatureId);if(!_0x4d6e02)throw new Error(_0x4c9856(0x161));const _0x34b52e=await getFeature(_0x4d6e02);await softDeleteFeature(_0x4d6e02),console[_0x4c9856(0xf3)]('\x0a🗑️\x20\x20Deleted\x20feature\x20review:\x20'+_0x34b52e[_0x4c9856(0xeb)]+'\x20('+_0x4d6e02+')'),console['log'](_0x514315[_0x4c9856(0x11b)](_0x514315['YJctC'],_0x4d6e02));}function _0x5ed3(){const _0x3e6483=['\x0aCreating\x20feature\x20review...','slice','\x20in\x20progress','LHEGg',':\x20\x22','scenario','zbwoW','nJbjM','vKpKs','TUNGc','382728XpvfmA','9DpDMqX','\x0a📋\x20Feedback\x20for:\x20','storage','github.com/','\x20\x20\x20\x20\x20📷\x20Screenshot:\x20','gitRepoUrl','\x20\x20\x20\x20\x20Progress:\x20','kuKIz','in_progress','replace','\x0aAvailable\x20scenarios:','RMomL','PVTxP','currentBranch','nyuZO','\x0a✅\x20Session\x20','sessionId','kwYgf','dashboardUrl','No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.','nBtpC','checklistItems','\x20[has\x20reviewer\x20feedback]','\x0a✅\x20Scenario\x20updated','ymyxj','gitBranch','join','UVFcD','map','blockedReason','incomplete','\x20incomplete','notes','domRef','\x20\x20\x20\x20\x20ID:\x20','PszRp','verificationInProgressItems','\x20\x20\x20\x20\x20\x20Blocked:\x20','iteration','aohEe','\x0a❌\x20No\x20scenarios\x20found\x20to\x20include.','isKeyStep','vsHkn','completedAt','\x0a📁\x20Sessions\x20for\x20feature\x20review:\x20','name','createdAt','verified','Unknown','4|1|0|2|3|5','any','AhcHs','textContent','log','\x20verified','\x20\x20\x20\x20\x20\x20Cancelled:\x20','completed','\x0a✅\x20Restored\x20feature\x20review:\x20','filter','\x20of\x20','list','2470504LPNCVf','629519jXnugf','mzpBe','totalCount','\x20\x20\x20\x20\x20📋\x20Selector:\x20','\x20\x20\x20▶️\x20Started\x20session\x20','authorName','gJpwc','\x0a❌\x20No\x20scenario\x20number\x20provided.\x20Use\x20--scenario\x20<number>.','Cannot\x20conclude\x20session\x20with\x20status:\x20','\x20\x20\x20The\x20feature\x20review\x20is\x20now\x20ready\x20for\x20human\x20review\x20on\x20the\x20Ranger\x20dashboard.','version','approved','KRfCz','authorEmail','Kkfqq','dfEjJ','\x20\x20\x20ID:\x20','\x20\x20\x20Progress:\x20','oCRtE','\x20\x20\x20Run\x20`ranger\x20get-review`\x20to\x20see\x20what\x20needs\x20to\x20be\x20fixed.','\x20Session\x20','toLocaleDateString','repeat','\x0aConcluding\x20session...','style','htcod','...','\x0a✅\x20Feature\x20review\x20created:\x20','DDyPo','\x0aGenerating\x20report...','WAlRl','HjGua','ZrRYF','short','scenarios','assets','isTTY','gukLZ','lVKYr','description','GZLlI','trim','nAEhp','point','latestReview','CLAUDE_SESSION_ID','mxxvc','zhFnR','\x0a❌\x20Cannot\x20edit\x20scenario:\x20feature\x20review\x20has\x20an\x20active\x20review.','find','Knpje','\x20(v','all','viYZK','\x20\x20✅\x20No\x20feedback\x20to\x20address','QHKeK','/api/v1/mcp/browser-sessions/','currentSessionId','ready','/artifacts/','terminalReason','\x0a❌\x20No\x20scenarios\x20found\x20to\x20edit.','iBpZN','.\x20Feature\x20review\x20has\x20','oIAgr','GMgiG','YCDGR','\x20blocked','assetType','881614TTrKSA','incompleteItems','toFixed','active-feature.txt','No\x20sessions\x20found.','42AMydob','items','\x20—\x20no\x20comments','spatial','unaddressedComments','stats','prompt','\x20at\x20[','\x20\x20\x20\x20\x20\x20Incomplete:\x20','incompleteReason','jwjKW','parentItemId','Run:\x20ranger\x20create\x20\x22<name>\x22\x20to\x20create\x20a\x20new\x20feature\x20review','bfaaW','620163LuqXOX','screenshotUrls','uPWTV','HHUfc','):\x20\x22','DqvIt','JFrEV','loipd','\x20\x20\x20Completed:\x20','XLfLA','canceledReason','WRLIW','trimEnd','No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','UyUzH','pop','BTuEO','limit','Scenario\x20','selector','reports','assetUrl','UOSJM','length','split','\x20/\x20','stdout','feedback-images','\x0aSearching\x20for\x20feature\x20reviews\x20matching:\x20','10Ceazss','has','thYzC','verification_in_progress','toLocaleString','isInteger','\x20\x20\x20Created:\x20','\x0a✅\x20Session\x20is\x20already\x20completed.','blocked','353084Ewvkmx','offset','280307MoKNqx','coordinates','jAVaV','\x20\x20\x20Updated\x20branch\x20to:\x20','\x0a✅\x20Scenario\x20added','\x20unaddressed\x20reviewer\x20comment(s)\x20across\x20','includeDeleted','FpYzm','env','error','\x20\x20\x20\x20\x20📍\x20Annotation:\x20','NqBwg','\x20\x20\x20\x20\x20\x20Approved','status','closed','wdqwB','qmphN','gHUJY','\x0a❌\x20Invalid\x20scenario\x20index:\x20','No\x20scenarios\x20found.','linkedSession','write','pipe','browserSessionId','15fNWflB','Zwxzk','utf-8','DGWbj','LjOIa','Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','DKAhd','smxwP'];_0x5ed3=function(){return _0x3e6483;};return _0x5ed3();}export async function featureRestore(_0x1b889b){const _0x388c5b=_0x315c8e,_0x1ea799={'NqBwg':function(_0x31acd0,_0xa8372e){return _0x31acd0(_0xa8372e);}};await restoreFeature(_0x1b889b);const _0x516277=await _0x1ea799[_0x388c5b(0x187)](getFeature,_0x1b889b);console['log'](_0x388c5b(0xf7)+_0x516277[_0x388c5b(0xeb)]+'\x20('+_0x1b889b+')'),displayFeature(_0x516277,_0x516277[_0x388c5b(0xd3)]);}
@@ -1 +1 @@
1
- (function(_0x321faa,_0xb29375){const _0x3cdbee=_0x57cd,_0x2704b5=_0x321faa();while(!![]){try{const _0x3119e3=parseInt(_0x3cdbee(0x7f))/0x1+-parseInt(_0x3cdbee(0x6f))/0x2+parseInt(_0x3cdbee(0x77))/0x3*(-parseInt(_0x3cdbee(0x76))/0x4)+parseInt(_0x3cdbee(0x72))/0x5+parseInt(_0x3cdbee(0x7a))/0x6*(-parseInt(_0x3cdbee(0x7c))/0x7)+-parseInt(_0x3cdbee(0x6e))/0x8*(parseInt(_0x3cdbee(0x7b))/0x9)+parseInt(_0x3cdbee(0x7d))/0xa*(parseInt(_0x3cdbee(0x79))/0xb);if(_0x3119e3===_0xb29375)break;else _0x2704b5['push'](_0x2704b5['shift']());}catch(_0x21861c){_0x2704b5['push'](_0x2704b5['shift']());}}}(_0x278d,0xc01f1));function _0x57cd(_0x2190d6,_0x5ebb1d){_0x2190d6=_0x2190d6-0x6e;const _0x278d68=_0x278d();let _0x57cdb3=_0x278d68[_0x2190d6];return _0x57cdb3;}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 _0xcc7f4f=_0x57cd,_0x377981={'pqCJO':'SIGTERM'};if(cancellationHandlersInstalled)return;const _0x99c3ed=()=>{process['exit'](0x0);};process[_0xcc7f4f(0x71)](_0xcc7f4f(0x74),_0x99c3ed),process[_0xcc7f4f(0x71)](_0x377981[_0xcc7f4f(0x70)],_0x99c3ed),process[_0xcc7f4f(0x71)](_0xcc7f4f(0x7e),_0x99c3ed),cancellationHandlersInstalled=!![];}function _0x278d(){const _0x34a6ee=['1932810uNDtiV','pqCJO','once','4146055CCGbnY','Valid\x20hooks:\x20','SIGINT','Unknown\x20hook:\x20','488eckXDA','36516fRntsy','psIMu','11jlosOn','18uqIvEw','9LTcMlR','2739303rPhkja','26516440EPHIMI','SIGHUP','1335113mkKWRF','join','3229304xYmiWg'];_0x278d=function(){return _0x34a6ee;};return _0x278d();}export async function hook(_0x4716ab,_0x4e0009){const _0x27c92f=_0x57cd,_0x238ad5={'psIMu':function(_0x2303db,_0x40002f){return _0x2303db(_0x40002f);}};installCancellationHandlers();const _0x4c66e2=HOOKS[_0x4716ab];if(!_0x4c66e2){const _0x4a3967=Object['keys'](HOOKS)[_0x27c92f(0x80)](',\x20');console['error'](_0x27c92f(0x75)+_0x4716ab),console['error'](_0x27c92f(0x73)+_0x4a3967),process['exit'](0x1);}await _0x238ad5[_0x27c92f(0x78)](_0x4c66e2,_0x4e0009);}
1
+ (function(_0x3ae847,_0x169e4a){const _0x56103e=_0x2050,_0x29d7cf=_0x3ae847();while(!![]){try{const _0x4558b1=parseInt(_0x56103e(0x11c))/0x1*(parseInt(_0x56103e(0x11e))/0x2)+-parseInt(_0x56103e(0x11f))/0x3+-parseInt(_0x56103e(0x122))/0x4*(-parseInt(_0x56103e(0x11b))/0x5)+parseInt(_0x56103e(0x11d))/0x6+-parseInt(_0x56103e(0x121))/0x7*(-parseInt(_0x56103e(0x113))/0x8)+-parseInt(_0x56103e(0x117))/0x9*(parseInt(_0x56103e(0x114))/0xa)+-parseInt(_0x56103e(0x116))/0xb;if(_0x4558b1===_0x169e4a)break;else _0x29d7cf['push'](_0x29d7cf['shift']());}catch(_0x488e8b){_0x29d7cf['push'](_0x29d7cf['shift']());}}}(_0x40e2,0x2fe25));import{sessionStart,sessionEnd,preCompact,postEdit,planStart,planReminder,exitPlanMode,stopHook,enable,disable,autoPrompt}from'./hooks/index.js';function _0x2050(_0x319aa4,_0x5a7572){_0x319aa4=_0x319aa4-0x112;const _0x40e209=_0x40e2();let _0x2050fc=_0x40e209[_0x319aa4];return _0x2050fc;}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 _0x59ff11=_0x2050,_0x333046={'odWWK':_0x59ff11(0x119)};if(cancellationHandlersInstalled)return;const _0x493eca=()=>{process['exit'](0x0);};process[_0x59ff11(0x120)](_0x59ff11(0x11a),_0x493eca),process['once'](_0x333046['odWWK'],_0x493eca),process[_0x59ff11(0x120)]('SIGHUP',_0x493eca),cancellationHandlersInstalled=!![];}function _0x40e2(){const _0x279a4f=['42410JEVXqs','error','4734213vzcDlM','63jSlxFB','join','SIGTERM','SIGINT','66860EawOnI','3VNfCuo','2230440yPmVtG','137044NRwVRf','778680WTcIgM','once','7UJuUfk','8IzNCVe','Valid\x20hooks:\x20','2493704EoUkTW'];_0x40e2=function(){return _0x279a4f;};return _0x40e2();}export async function hook(_0x8ed898,_0x2004eb){const _0x596190=_0x2050;installCancellationHandlers();const _0x19626b=HOOKS[_0x8ed898];if(!_0x19626b){const _0x553518=Object['keys'](HOOKS)[_0x596190(0x118)](',\x20');console['error']('Unknown\x20hook:\x20'+_0x8ed898),console[_0x596190(0x115)](_0x596190(0x112)+_0x553518),process['exit'](0x1);}await _0x19626b(_0x2004eb);}
@@ -1 +1 @@
1
- (function(_0x209ccf,_0x95c0be){const _0x51fcc2=_0x2934,_0x287e67=_0x209ccf();while(!![]){try{const _0x13cf82=-parseInt(_0x51fcc2(0x199))/0x1+-parseInt(_0x51fcc2(0x197))/0x2*(-parseInt(_0x51fcc2(0x19a))/0x3)+-parseInt(_0x51fcc2(0x190))/0x4*(-parseInt(_0x51fcc2(0x191))/0x5)+parseInt(_0x51fcc2(0x196))/0x6*(-parseInt(_0x51fcc2(0x18e))/0x7)+parseInt(_0x51fcc2(0x193))/0x8+-parseInt(_0x51fcc2(0x194))/0x9*(-parseInt(_0x51fcc2(0x18f))/0xa)+parseInt(_0x51fcc2(0x195))/0xb*(-parseInt(_0x51fcc2(0x192))/0xc);if(_0x13cf82===_0x95c0be)break;else _0x287e67['push'](_0x287e67['shift']());}catch(_0x3f2963){_0x287e67['push'](_0x287e67['shift']());}}}(_0x2e6d,0x6a01f));import{readHookInput}from'./output.js';import{isSessionEnabled,hasSessionBeenPrompted,markSessionPrompted}from'../utils/sessionCache.js';const AUTO_PROMPT_TEXT='\x0a🚨\x20🚨\x20[ACTION\x20REQUIRED]\x20🚨\x20🚨\x0aBefore\x20responding\x20to\x20the\x20user\x27s\x20message,\x20consider\x20whether\x20this\x20task\x20will\x20involve\x20ANY\x20frontend,\x20UI,\x20or\x20browser\x20work.\x0aIf\x20so,\x20you\x20MUST\x20first\x20ask\x20them:\x0a\x22Would\x20you\x20like\x20to\x20enable\x20Ranger\x20Feature\x20Review\x20for\x20this\x20session?\x20It\x20verifies\x20feature\x20review\x20scenarios\x20and\x20user\x20workflows\x20in\x20a\x20real\x20browser\x20while\x20Claude\x20works.\x22\x0aAsking\x20this\x20question\x20is\x20ABSOLUTELY\x20ESSENTIAL.\x20DO\x20NOT\x20SKIP\x20THIS\x20STEP.\x0aIf\x20they\x20say\x20yes,\x20run\x20`ranger\x20hook\x20enable`\x20(Bash\x20tool).\x0aIf\x20they\x20say\x20no,\x20say\x20\x22Sounds\x20good.\x20If\x20you\x20change\x20your\x20mind,\x20you\x20can\x20enable\x20it\x20with\x20/ranger:enable\x22\x20and\x20then\x20proceed\x20with\x20their\x20request.\x0aThis\x20is\x20mandatory\x20—\x20do\x20not\x20skip\x20this\x20step.';function _0x2934(_0x352da1,_0x4bf2cf){_0x352da1=_0x352da1-0x18e;const _0x2e6db3=_0x2e6d();let _0x293426=_0x2e6db3[_0x352da1];return _0x293426;}function _0x2e6d(){const _0x5cb7e7=['240IBHnwW','52ysPOKk','sxzNx','633395reVoVD','48795qBfRRS','1477IywCNP','110inzaHG','4iMMAyT','3210365RbAFEY','25140XWxETN','832168XGaNAs','347337PzxWMU','2717fFQSBK'];_0x2e6d=function(){return _0x5cb7e7;};return _0x2e6d();}export async function autoPrompt(){const _0x440908=_0x2934,_0x51f814={'sxzNx':function(_0x554615){return _0x554615();},'wOKMz':function(_0x5771b7,_0x283d9a){return _0x5771b7(_0x283d9a);}},_0xfc32df=await _0x51f814[_0x440908(0x198)](readHookInput),_0x2b983f=_0xfc32df?.['session_id'];if(!_0x2b983f)return;if(isSessionEnabled(_0x2b983f)||_0x51f814['wOKMz'](hasSessionBeenPrompted,_0x2b983f))return;markSessionPrompted(_0x2b983f),console['log'](AUTO_PROMPT_TEXT);}
1
+ (function(_0x1d7fc1,_0x281283){const _0x5edbf3=_0x4698,_0xdf004c=_0x1d7fc1();while(!![]){try{const _0x512183=-parseInt(_0x5edbf3(0xdc))/0x1*(parseInt(_0x5edbf3(0xd9))/0x2)+parseInt(_0x5edbf3(0xd3))/0x3*(parseInt(_0x5edbf3(0xd5))/0x4)+-parseInt(_0x5edbf3(0xd0))/0x5+-parseInt(_0x5edbf3(0xd1))/0x6*(-parseInt(_0x5edbf3(0xd8))/0x7)+-parseInt(_0x5edbf3(0xda))/0x8*(-parseInt(_0x5edbf3(0xd6))/0x9)+-parseInt(_0x5edbf3(0xd4))/0xa*(-parseInt(_0x5edbf3(0xdb))/0xb)+parseInt(_0x5edbf3(0xd7))/0xc*(-parseInt(_0x5edbf3(0xdd))/0xd);if(_0x512183===_0x281283)break;else _0xdf004c['push'](_0xdf004c['shift']());}catch(_0xb96fde){_0xdf004c['push'](_0xdf004c['shift']());}}}(_0x5db9,0x1907d));function _0x4698(_0x582514,_0x3d2e37){_0x582514=_0x582514-0xd0;const _0x5db934=_0x5db9();let _0x46989a=_0x5db934[_0x582514];return _0x46989a;}import{readHookInput}from'./output.js';import{isSessionEnabled,hasSessionBeenPrompted,markSessionPrompted}from'../utils/sessionCache.js';function _0x5db9(){const _0x185814=['session_id','448385roSCZN','564HfykGn','oMGUr','2199qrPvWc','1070iBrzkR','356pHAOTP','9TfqWgb','1598424cSRWLD','6881XulqHc','108olseGR','1063288YzhoDR','18326QPbZMJ','189nuVlCs','26UHSVGk','log'];_0x5db9=function(){return _0x185814;};return _0x5db9();}const AUTO_PROMPT_TEXT='\x0a🚨\x20🚨\x20[ACTION\x20REQUIRED]\x20🚨\x20🚨\x0aBefore\x20responding\x20to\x20the\x20user\x27s\x20message,\x20consider\x20whether\x20this\x20task\x20will\x20involve\x20ANY\x20frontend,\x20UI,\x20or\x20browser\x20work.\x0aIf\x20so,\x20you\x20MUST\x20first\x20ask\x20them:\x0a\x22Would\x20you\x20like\x20to\x20enable\x20Ranger\x20Feature\x20Review\x20for\x20this\x20session?\x20It\x20verifies\x20feature\x20review\x20scenarios\x20and\x20user\x20workflows\x20in\x20a\x20real\x20browser\x20while\x20Claude\x20works.\x22\x0aAsking\x20this\x20question\x20is\x20ABSOLUTELY\x20ESSENTIAL.\x20DO\x20NOT\x20SKIP\x20THIS\x20STEP.\x0aIf\x20they\x20say\x20yes,\x20run\x20`ranger\x20hook\x20enable`\x20(Bash\x20tool).\x0aIf\x20they\x20say\x20no,\x20say\x20\x22Sounds\x20good.\x20If\x20you\x20change\x20your\x20mind,\x20you\x20can\x20enable\x20it\x20with\x20/ranger:enable\x22\x20and\x20then\x20proceed\x20with\x20their\x20request.\x0aThis\x20is\x20mandatory\x20—\x20do\x20not\x20skip\x20this\x20step.';export async function autoPrompt(){const _0xdd0e50=_0x4698,_0x59910b={'jJDUa':function(_0x1a3808){return _0x1a3808();},'oMGUr':function(_0x145bdf,_0x34859c){return _0x145bdf(_0x34859c);}},_0x58c513=await _0x59910b['jJDUa'](readHookInput),_0x4622e3=_0x58c513?.[_0xdd0e50(0xdf)];if(!_0x4622e3)return;if(isSessionEnabled(_0x4622e3)||_0x59910b[_0xdd0e50(0xd2)](hasSessionBeenPrompted,_0x4622e3))return;_0x59910b[_0xdd0e50(0xd2)](markSessionPrompted,_0x4622e3),console[_0xdd0e50(0xde)](AUTO_PROMPT_TEXT);}
@@ -1 +1 @@
1
- (function(_0xf2db01,_0x2b4b9c){const _0x2df11c=_0x3e20,_0x3d26d7=_0xf2db01();while(!![]){try{const _0x4a3144=parseInt(_0x2df11c(0x151))/0x1*(-parseInt(_0x2df11c(0x146))/0x2)+-parseInt(_0x2df11c(0x14f))/0x3*(parseInt(_0x2df11c(0x143))/0x4)+-parseInt(_0x2df11c(0x145))/0x5*(parseInt(_0x2df11c(0x147))/0x6)+-parseInt(_0x2df11c(0x14d))/0x7+-parseInt(_0x2df11c(0x144))/0x8*(-parseInt(_0x2df11c(0x154))/0x9)+-parseInt(_0x2df11c(0x14a))/0xa*(parseInt(_0x2df11c(0x14c))/0xb)+parseInt(_0x2df11c(0x149))/0xc*(parseInt(_0x2df11c(0x14e))/0xd);if(_0x4a3144===_0x2b4b9c)break;else _0x3d26d7['push'](_0x3d26d7['shift']());}catch(_0x584958){_0x3d26d7['push'](_0x3d26d7['shift']());}}}(_0x177a,0x3ecc8));import{disableSession,disableBranch,getCurrentBranch}from'../utils/sessionCache.js';function _0x177a(){const _0x5df585=['AyBkF','4hKqhKK','1905576ZQhnxV','34285RAfaMs','2AqSAbE','30nhWpmf','env','12552612QRsrfF','10ButSZp','main','1476563tDanRl','3289783qBIvwu','13IvPhji','283941vpHvTM','.\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`.','293890qGXovH','master','CLAUDE_SESSION_ID','9kDllRP'];_0x177a=function(){return _0x5df585;};return _0x177a();}function _0x3e20(_0x5a7ff3,_0x4393ad){_0x5a7ff3=_0x5a7ff3-0x143;const _0x177aee=_0x177a();let _0x3e2089=_0x177aee[_0x5a7ff3];return _0x3e2089;}import{printBlock}from'./output.js';export async function disable(_0x3dbd42){const _0x36d3d6=_0x3e20,_0x5029f7={'AyBkF':function(_0x4a5e40,_0x2735ee){return _0x4a5e40(_0x2735ee);},'MBSIC':_0x36d3d6(0x14b)},_0x23f62a=_0x3dbd42||process[_0x36d3d6(0x148)][_0x36d3d6(0x153)]||'';_0x23f62a&&_0x5029f7[_0x36d3d6(0x155)](disableSession,_0x23f62a);const _0x4b36c0=getCurrentBranch();_0x4b36c0&&_0x4b36c0!=='main'&&_0x4b36c0!==_0x36d3d6(0x152)&&_0x5029f7[_0x36d3d6(0x155)](disableBranch,_0x4b36c0),printBlock('#\x20RANGER\x20DISABLED\x0a\x0aThe\x20user\x20has\x20expressly\x20disabled\x20Ranger\x20hooks\x20for\x20this\x20session'+(_0x4b36c0&&_0x4b36c0!==_0x5029f7['MBSIC']&&_0x4b36c0!=='master'?'\x20and\x20branch\x20\x27'+_0x4b36c0+'\x27':'')+_0x36d3d6(0x150));}
1
+ (function(_0x31b4a2,_0x169bc0){const _0x52fb01=_0x2c56,_0x5d9058=_0x31b4a2();while(!![]){try{const _0x168ec9=-parseInt(_0x52fb01(0xdd))/0x1*(parseInt(_0x52fb01(0xe5))/0x2)+-parseInt(_0x52fb01(0xde))/0x3*(parseInt(_0x52fb01(0xe1))/0x4)+parseInt(_0x52fb01(0xec))/0x5+parseInt(_0x52fb01(0xe4))/0x6+parseInt(_0x52fb01(0xe2))/0x7*(-parseInt(_0x52fb01(0xe7))/0x8)+-parseInt(_0x52fb01(0xea))/0x9*(-parseInt(_0x52fb01(0xe0))/0xa)+parseInt(_0x52fb01(0xda))/0xb*(parseInt(_0x52fb01(0xdc))/0xc);if(_0x168ec9===_0x169bc0)break;else _0x5d9058['push'](_0x5d9058['shift']());}catch(_0x4527c8){_0x5d9058['push'](_0x5d9058['shift']());}}}(_0x2537,0x91eb5));import{disableSession,disableBranch,getCurrentBranch}from'../utils/sessionCache.js';import{printBlock}from'./output.js';function _0x2537(){const _0x532e28=['422417AphzWI','30xBTqpy','PWasK','30bPqley','375704VITvhU','19117QGQzGt','main','3314970RBCvav','2TAxiet','CLAUDE_SESSION_ID','232dMltOg','master','#\x20RANGER\x20DISABLED\x0a\x0aThe\x20user\x20has\x20expressly\x20disabled\x20Ranger\x20hooks\x20for\x20this\x20session','2331081qjLODj','jUCrg','2939770iCziei','.\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`.','266387eTvBfm','env','60LRuNwB'];_0x2537=function(){return _0x532e28;};return _0x2537();}function _0x2c56(_0x2e0b16,_0x24565b){_0x2e0b16=_0x2e0b16-0xd9;const _0x2537da=_0x2537();let _0x2c56d2=_0x2537da[_0x2e0b16];return _0x2c56d2;}export async function disable(_0x70127f){const _0x9ffb31=_0x2c56,_0x38341d={'ZLHWK':function(_0x33c815){return _0x33c815();},'zSNeg':function(_0x3bfebe,_0x14eed1){return _0x3bfebe!==_0x14eed1;},'PWasK':function(_0x136a66,_0x4e4a76){return _0x136a66!==_0x4e4a76;},'jUCrg':function(_0x5836f0,_0x6dd235){return _0x5836f0(_0x6dd235);},'pNCDa':_0x9ffb31(0xe8)},_0x4133de=_0x70127f||process[_0x9ffb31(0xdb)][_0x9ffb31(0xe6)]||'';_0x4133de&&disableSession(_0x4133de);const _0x23d60b=_0x38341d['ZLHWK'](getCurrentBranch);_0x23d60b&&_0x38341d['zSNeg'](_0x23d60b,_0x9ffb31(0xe3))&&_0x38341d[_0x9ffb31(0xdf)](_0x23d60b,'master')&&disableBranch(_0x23d60b),_0x38341d[_0x9ffb31(0xeb)](printBlock,_0x9ffb31(0xe9)+(_0x23d60b&&_0x23d60b!==_0x9ffb31(0xe3)&&_0x23d60b!==_0x38341d['pNCDa']?'\x20and\x20branch\x20\x27'+_0x23d60b+'\x27':'')+_0x9ffb31(0xd9));}
@@ -1 +1 @@
1
- (function(_0x2d84a3,_0x2f3e20){const _0x553d8e=_0x3baa,_0x364c63=_0x2d84a3();while(!![]){try{const _0x3826a1=parseInt(_0x553d8e(0x190))/0x1+-parseInt(_0x553d8e(0x17d))/0x2+parseInt(_0x553d8e(0x17c))/0x3+parseInt(_0x553d8e(0x196))/0x4+parseInt(_0x553d8e(0x18b))/0x5*(parseInt(_0x553d8e(0x193))/0x6)+-parseInt(_0x553d8e(0x183))/0x7*(-parseInt(_0x553d8e(0x197))/0x8)+-parseInt(_0x553d8e(0x187))/0x9*(parseInt(_0x553d8e(0x18c))/0xa);if(_0x3826a1===_0x2f3e20)break;else _0x364c63['push'](_0x364c63['shift']());}catch(_0x4b49ee){_0x364c63['push'](_0x364c63['shift']());}}}(_0x4949,0x56444));import{enableSession,getCurrentBranch}from'../utils/sessionCache.js';function _0x3baa(_0x4804c9,_0xc5c5fe){_0x4804c9=_0x4804c9-0x17c;const _0x494907=_0x4949();let _0x3baa04=_0x494907[_0x4804c9];return _0x3baa04;}import{getToken}from'../utils/keychain.js';import{getRangerSkillContent}from'../utils/skillContent.js';import{printBlock}from'./output.js';import{update}from'../update.js';function _0x4949(){const _0x1043f6=['\x27\x20is\x20now\x20enabled**\x20-\x20Ranger\x20will\x20stay\x20active\x20on\x20this\x20branch\x20across\x20sessions.','468183UODooC','slCyC','main','126SIrGwS','LDFsi','LLRRg','332204LLdCla','4789208ypXbQm','859335WXGZJB','177374wOrjZj','\x0a\x0a**Branch\x20\x27','BuLrg','jpaHr','aiEim','rMCSY','7yXxiNg','\x0a\x0a**For\x20ANY\x20UI\x20work,\x20you\x20MUST\x20use\x20the\x20/ranger\x20skill.**\x0a\x0a','CLAUDE_SESSION_ID','ranger\x20setup\x20--opencode','13154094OShQYs','FwhQk','ranger\x20setup','#\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`','111255TuLTbP','10nEooPi','\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`.','Restart\x20your\x20Claude\x20Code\x20session\x20after\x20setup.'];_0x4949=function(){return _0x1043f6;};return _0x4949();}export async function enable(_0x4b7248){const _0x1a284a=_0x3baa,_0x411df7={'rMCSY':function(_0x2a8ab6,_0x3b8b87){return _0x2a8ab6(_0x3b8b87);},'slCyC':function(_0x75cfe1){return _0x75cfe1();},'LDFsi':_0x1a284a(0x186),'jpaHr':_0x1a284a(0x18e),'FwhQk':function(_0x818341){return _0x818341();},'BuLrg':function(_0x29f63d){return _0x29f63d();},'mwqGN':function(_0x104aa3,_0x4a7b6b){return _0x104aa3!==_0x4a7b6b;},'LLRRg':_0x1a284a(0x192),'aiEim':'master'},_0x43a04f=_0x4b7248||process['env'][_0x1a284a(0x185)]||'',_0x40c0d1=_0x411df7['rMCSY'](Boolean,_0x4b7248),_0x3bcb69=await _0x411df7['slCyC'](getToken);if(!_0x3bcb69){const _0x2c97fc=_0x40c0d1?_0x411df7[_0x1a284a(0x194)]:_0x1a284a(0x189),_0x550e3f=_0x40c0d1?'Restart\x20your\x20OpenCode\x20session\x20after\x20setup.':_0x411df7[_0x1a284a(0x180)];_0x411df7[_0x1a284a(0x182)](printBlock,_0x1a284a(0x18a)+_0x2c97fc+'`\x0a\x0aA\x20browser\x20will\x20open\x20for\x20authentication.\x20A\x20human\x20needs\x20to\x20complete\x20the\x20login.\x0a'+_0x550e3f);return;}try{await _0x411df7[_0x1a284a(0x188)](update);}catch{}_0x43a04f&&enableSession(_0x43a04f);const _0x2d0389=_0x411df7[_0x1a284a(0x17f)](getCurrentBranch),_0x36b969=_0x2d0389&&_0x411df7['mwqGN'](_0x2d0389,_0x411df7[_0x1a284a(0x195)])&&_0x2d0389!==_0x411df7[_0x1a284a(0x181)]?_0x1a284a(0x17e)+_0x2d0389+_0x1a284a(0x18f):'',_0x5cbee3=_0x411df7[_0x1a284a(0x191)](getRangerSkillContent);printBlock('#\x20RANGER\x20ENABLED'+_0x36b969+_0x1a284a(0x184)+_0x5cbee3+_0x1a284a(0x18d));}
1
+ function _0x2e42(){const _0xa8569b=['cPBFz','385852maUBGo','1403717BfqQUS','4tYoROu','Restart\x20your\x20Claude\x20Code\x20session\x20after\x20setup.','3410409wAEwAy','28706576cAxfOD','master','`\x0a\x0aA\x20browser\x20will\x20open\x20for\x20authentication.\x20A\x20human\x20needs\x20to\x20complete\x20the\x20login.\x0a','lJiVX','7993250mkdfes','UWkVb','ranger\x20setup','#\x20RANGER\x20ENABLED','WZtMu','mjGXe','Restart\x20your\x20OpenCode\x20session\x20after\x20setup.','3593748UjVgfe','main','5469380qooayI'];_0x2e42=function(){return _0xa8569b;};return _0x2e42();}(function(_0x1c0e15,_0x265ecb){const _0x105cce=_0x3494,_0x10708a=_0x1c0e15();while(!![]){try{const _0x16adc2=parseInt(_0x105cce(0x1a6))/0x1+parseInt(_0x105cce(0x1a5))/0x2+-parseInt(_0x105cce(0x1a9))/0x3*(-parseInt(_0x105cce(0x1a7))/0x4)+parseInt(_0x105cce(0x1ae))/0x5+-parseInt(_0x105cce(0x1a1))/0x6+parseInt(_0x105cce(0x1a3))/0x7+-parseInt(_0x105cce(0x1aa))/0x8;if(_0x16adc2===_0x265ecb)break;else _0x10708a['push'](_0x10708a['shift']());}catch(_0x55f23e){_0x10708a['push'](_0x10708a['shift']());}}}(_0x2e42,0xe21cc));import{enableSession,getCurrentBranch}from'../utils/sessionCache.js';import{getToken}from'../utils/keychain.js';import{getRangerSkillContent}from'../utils/skillContent.js';function _0x3494(_0x35756b,_0x393874){_0x35756b=_0x35756b-0x19d;const _0x2e4298=_0x2e42();let _0x349431=_0x2e4298[_0x35756b];return _0x349431;}import{printBlock}from'./output.js';import{update}from'../update.js';export async function enable(_0x285170){const _0x1ab072=_0x3494,_0x24378d={'UWkVb':function(_0x31b65b,_0x285322){return _0x31b65b(_0x285322);},'wOTfI':function(_0x52d828){return _0x52d828();},'FxqrX':_0x1ab072(0x1b0),'mjGXe':_0x1ab072(0x1a0),'bYkye':_0x1ab072(0x1a8),'cPBFz':function(_0x1b092d){return _0x1b092d();},'WZtMu':function(_0xce2041,_0x3788d8){return _0xce2041!==_0x3788d8;},'LLNwm':_0x1ab072(0x1a2),'lJiVX':function(_0x1a4c93){return _0x1a4c93();}},_0x1b629e=_0x285170||process['env']['CLAUDE_SESSION_ID']||'',_0x276c16=_0x24378d[_0x1ab072(0x1af)](Boolean,_0x285170),_0x4a4979=await _0x24378d['wOTfI'](getToken);if(!_0x4a4979){const _0x1c9f4c=_0x276c16?'ranger\x20setup\x20--opencode':_0x24378d['FxqrX'],_0x23a13f=_0x276c16?_0x24378d[_0x1ab072(0x19f)]:_0x24378d['bYkye'];_0x24378d[_0x1ab072(0x1af)](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`'+_0x1c9f4c+_0x1ab072(0x1ac)+_0x23a13f);return;}try{await update();}catch{}_0x1b629e&&_0x24378d[_0x1ab072(0x1af)](enableSession,_0x1b629e);const _0x154e37=_0x24378d[_0x1ab072(0x1a4)](getCurrentBranch),_0x3a3eed=_0x154e37&&_0x24378d[_0x1ab072(0x19e)](_0x154e37,_0x24378d['LLNwm'])&&_0x154e37!==_0x1ab072(0x1ab)?'\x0a\x0a**Branch\x20\x27'+_0x154e37+'\x27\x20is\x20now\x20enabled**\x20-\x20Ranger\x20will\x20stay\x20active\x20on\x20this\x20branch\x20across\x20sessions.':'',_0x2fb5e2=_0x24378d[_0x1ab072(0x1ad)](getRangerSkillContent);printBlock(_0x1ab072(0x19d)+_0x3a3eed+'\x0a\x0a**For\x20ANY\x20UI\x20work,\x20you\x20MUST\x20use\x20the\x20/ranger\x20skill.**\x0a\x0a'+_0x2fb5e2+'\x0a\x0a##\x20Quick\x20Reference\x0a\x0a**In\x20plan\x20mode:**\x20Include\x20Ranger\x20Feature\x20Review\x20Specification\x20at\x20end\x20of\x20plan.\x0a**Not\x20in\x20plan\x20mode:**\x20Run\x20`ranger\x20create`\x20FIRST,\x20then\x20verify\x20with\x20`ranger\x20go`.');}
@@ -1 +1 @@
1
- (function(_0x44677b,_0x72c1b9){const _0x2121c2=_0x402c,_0xb0a24d=_0x44677b();while(!![]){try{const _0x19d242=-parseInt(_0x2121c2(0xcb))/0x1+-parseInt(_0x2121c2(0xd3))/0x2+-parseInt(_0x2121c2(0xd0))/0x3+parseInt(_0x2121c2(0xd4))/0x4*(parseInt(_0x2121c2(0xd1))/0x5)+-parseInt(_0x2121c2(0xd2))/0x6+-parseInt(_0x2121c2(0xcd))/0x7+parseInt(_0x2121c2(0xcc))/0x8;if(_0x19d242===_0x72c1b9)break;else _0xb0a24d['push'](_0xb0a24d['shift']());}catch(_0x196386){_0xb0a24d['push'](_0xb0a24d['shift']());}}}(_0x3633,0x59fb9));import{printBlock,getEnabledSessionId}from'./output.js';function _0x402c(_0x420e0a,_0x27389e){_0x420e0a=_0x420e0a-0xcb;const _0x3633eb=_0x3633();let _0x402ce5=_0x3633eb[_0x420e0a];return _0x402ce5;}export async function exitPlanMode(_0x36c689){const _0x4405cc=_0x402c,_0x3dbe20={'coZwR':function(_0x4d30ad,_0x260ef0){return _0x4d30ad(_0x260ef0);}},_0x3db463=await getEnabledSessionId(_0x36c689);if(!_0x3db463)return;_0x3dbe20[_0x4405cc(0xce)](printBlock,_0x4405cc(0xcf));}function _0x3633(){const _0x47e76b=['coZwR','===\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===','219555ekJBNO','10zhYFNU','4380612mfuvuz','1002776UoeFSP','350044XyQwTE','174663tMeARR','14686088XCRrxY','1140132VzqCnE'];_0x3633=function(){return _0x47e76b;};return _0x3633();}
1
+ function _0x11ea(_0x42de8e,_0x440962){_0x42de8e=_0x42de8e-0xb1;const _0x4c954c=_0x4c95();let _0x11eab2=_0x4c954c[_0x42de8e];return _0x11eab2;}function _0x4c95(){const _0x377bfc=['===\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===','117XTsCds','14462HlwQmc','2nMOLdv','663307vrbYVG','396355oOAZiJ','748875erugsn','11hWsYFm','7453668swMrdO','60UYLIVE','415696lvZOfp','8518690OyTnZb','26fXbZZG','4050xJrpmb'];_0x4c95=function(){return _0x377bfc;};return _0x4c95();}(function(_0x2f9b94,_0x2fca45){const _0x3fa021=_0x11ea,_0x575614=_0x2f9b94();while(!![]){try{const _0x47dc44=parseInt(_0x3fa021(0xbc))/0x1*(-parseInt(_0x3fa021(0xbb))/0x2)+parseInt(_0x3fa021(0xbe))/0x3+-parseInt(_0x3fa021(0xb3))/0x4*(-parseInt(_0x3fa021(0xbd))/0x5)+parseInt(_0x3fa021(0xb7))/0x6*(parseInt(_0x3fa021(0xba))/0x7)+-parseInt(_0x3fa021(0xb4))/0x8*(-parseInt(_0x3fa021(0xb9))/0x9)+parseInt(_0x3fa021(0xb5))/0xa*(-parseInt(_0x3fa021(0xb1))/0xb)+-parseInt(_0x3fa021(0xb2))/0xc*(parseInt(_0x3fa021(0xb6))/0xd);if(_0x47dc44===_0x2fca45)break;else _0x575614['push'](_0x575614['shift']());}catch(_0x3a1583){_0x575614['push'](_0x575614['shift']());}}}(_0x4c95,0xb76bc));import{printBlock,getEnabledSessionId}from'./output.js';export async function exitPlanMode(_0x4b9531){const _0x58fba9=_0x11ea,_0x2f2393={'pDjod':function(_0x4a5c3a,_0x21e32f){return _0x4a5c3a(_0x21e32f);}},_0xb207f9=await _0x2f2393['pDjod'](getEnabledSessionId,_0x4b9531);if(!_0xb207f9)return;printBlock(_0x58fba9(0xb8));}
@@ -1 +1 @@
1
- (function(_0xebf34e,_0x10659f){var _0x4534ef=_0x143a,_0xdd155d=_0xebf34e();while(!![]){try{var _0x279a3d=parseInt(_0x4534ef(0x13b))/0x1*(-parseInt(_0x4534ef(0x139))/0x2)+-parseInt(_0x4534ef(0x13c))/0x3+-parseInt(_0x4534ef(0x13a))/0x4+-parseInt(_0x4534ef(0x138))/0x5+parseInt(_0x4534ef(0x137))/0x6*(parseInt(_0x4534ef(0x13d))/0x7)+-parseInt(_0x4534ef(0x13f))/0x8*(-parseInt(_0x4534ef(0x140))/0x9)+parseInt(_0x4534ef(0x13e))/0xa;if(_0x279a3d===_0x10659f)break;else _0xdd155d['push'](_0xdd155d['shift']());}catch(_0x3b8ecb){_0xdd155d['push'](_0xdd155d['shift']());}}}(_0x58fd,0x1a315));export{sessionStart}from'./sessionStart.js';export{sessionEnd}from'./sessionEnd.js';export{preCompact}from'./preCompact.js';export{postEdit}from'./postEdit.js';function _0x58fd(){var _0x1aa52b=['6189QEPLqp','203hKqQpH','2940800xcuLhf','16vBrrqn','137934cIwLsE','2910VnqvUN','211035Iijnar','61286FbZfkQ','626396FhTcuN','1EbTwUq'];_0x58fd=function(){return _0x1aa52b;};return _0x58fd();}export{planStart}from'./planStart.js';export{planReminder}from'./planReminder.js';export{exitPlanMode}from'./exitPlanMode.js';export{stopHook}from'./stopHook.js';export{enable}from'./enable.js';function _0x143a(_0x3c3261,_0x3094ba){_0x3c3261=_0x3c3261-0x137;var _0x58fd4a=_0x58fd();var _0x143aa5=_0x58fd4a[_0x3c3261];return _0x143aa5;}export{disable}from'./disable.js';export{autoPrompt}from'./autoPrompt.js';
1
+ (function(_0x38fe13,_0x1db658){var _0x31450c=_0x3aed,_0x193321=_0x38fe13();while(!![]){try{var _0x2b8790=-parseInt(_0x31450c(0x15f))/0x1+parseInt(_0x31450c(0x160))/0x2*(-parseInt(_0x31450c(0x167))/0x3)+-parseInt(_0x31450c(0x168))/0x4+-parseInt(_0x31450c(0x163))/0x5+-parseInt(_0x31450c(0x162))/0x6*(parseInt(_0x31450c(0x166))/0x7)+-parseInt(_0x31450c(0x161))/0x8+-parseInt(_0x31450c(0x164))/0x9*(-parseInt(_0x31450c(0x165))/0xa);if(_0x2b8790===_0x1db658)break;else _0x193321['push'](_0x193321['shift']());}catch(_0x3099e6){_0x193321['push'](_0x193321['shift']());}}}(_0x3c2a,0x4a42e));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';function _0x3aed(_0x54e23b,_0xe4dd4d){_0x54e23b=_0x54e23b-0x15f;var _0x3c2a21=_0x3c2a();var _0x3aedc2=_0x3c2a21[_0x54e23b];return _0x3aedc2;}function _0x3c2a(){var _0x1868db=['24gOzdjN','385835VYnNpT','153ctiPvk','939490ATFyzQ','368844IvfrdU','877623RtrVob','1646008aRZNuw','255355raLTkE','2UqfSeh','365008ANaZxQ'];_0x3c2a=function(){return _0x1868db;};return _0x3c2a();}
@@ -1 +1 @@
1
- (function(_0x8dffbd,_0x32dee2){const _0x569ef1=_0x32df,_0x58a277=_0x8dffbd();while(!![]){try{const _0x560095=-parseInt(_0x569ef1(0xed))/0x1*(parseInt(_0x569ef1(0xeb))/0x2)+parseInt(_0x569ef1(0xe3))/0x3+-parseInt(_0x569ef1(0xe7))/0x4+-parseInt(_0x569ef1(0xe5))/0x5*(-parseInt(_0x569ef1(0xee))/0x6)+parseInt(_0x569ef1(0xec))/0x7+parseInt(_0x569ef1(0xef))/0x8+-parseInt(_0x569ef1(0xe2))/0x9*(parseInt(_0x569ef1(0xe6))/0xa);if(_0x560095===_0x32dee2)break;else _0x58a277['push'](_0x58a277['shift']());}catch(_0x416ffe){_0x58a277['push'](_0x58a277['shift']());}}}(_0x497a,0x81f8d));import{isSessionEnabled}from'../utils/sessionCache.js';export function printBlock(_0xbe5a84){const _0x3403a3=_0x32df;console[_0x3403a3(0xea)](_0xbe5a84);}export async function readHookInput(){const _0x5bf208=_0x32df;let _0x47a988='';try{for await(const _0x307bd2 of process[_0x5bf208(0xe8)]){_0x47a988+=_0x307bd2;}}catch{return null;}if(!_0x47a988['trim']())return null;try{return JSON[_0x5bf208(0xe9)](_0x47a988);}catch{return null;}}export async function getEnabledSessionId(_0xa33fde){const _0x117a29=_0x32df,_0x358805={'kuJbl':function(_0x562c26){return _0x562c26();}};if(_0xa33fde)return isSessionEnabled(_0xa33fde)?_0xa33fde:null;const _0x393100=await _0x358805[_0x117a29(0xe4)](readHookInput),_0x13d2c8=_0x393100?.['session_id'];if(!_0x13d2c8||!isSessionEnabled(_0x13d2c8))return null;return _0x13d2c8;}function _0x32df(_0x2e52ad,_0x2c4558){_0x2e52ad=_0x2e52ad-0xe2;const _0x497a9f=_0x497a();let _0x32dff4=_0x497a9f[_0x2e52ad];return _0x32dff4;}function _0x497a(){const _0x111dec=['kuJbl','91805SHPVPt','14126730tLejAu','2237360TyMmEt','stdin','parse','log','2SlRfYT','6537664ozdpGY','488238UOHgIP','228RwNVkO','6749112soUBSf','9rhNAgo','1551921fefCAg'];_0x497a=function(){return _0x111dec;};return _0x497a();}export async function getEnabledHookContext(_0x184961){const _0x124a69={'eZJpl':function(_0x4c990a){return _0x4c990a();}};if(_0x184961){if(!isSessionEnabled(_0x184961))return null;return{'sessionId':_0x184961,'input':{'session_id':_0x184961}};}const _0x47a196=await _0x124a69['eZJpl'](readHookInput),_0x470e48=_0x47a196?.['session_id'];if(!_0x470e48||!isSessionEnabled(_0x470e48))return null;return{'sessionId':_0x470e48,'input':_0x47a196};}
1
+ (function(_0x140638,_0x3ac5aa){const _0x5c49b7=_0x2503,_0x783530=_0x140638();while(!![]){try{const _0x3a62ef=parseInt(_0x5c49b7(0x131))/0x1*(-parseInt(_0x5c49b7(0x127))/0x2)+parseInt(_0x5c49b7(0x12c))/0x3*(parseInt(_0x5c49b7(0x12a))/0x4)+-parseInt(_0x5c49b7(0x130))/0x5*(parseInt(_0x5c49b7(0x129))/0x6)+parseInt(_0x5c49b7(0x126))/0x7+parseInt(_0x5c49b7(0x12e))/0x8+parseInt(_0x5c49b7(0x132))/0x9+-parseInt(_0x5c49b7(0x125))/0xa*(parseInt(_0x5c49b7(0x12f))/0xb);if(_0x3a62ef===_0x3ac5aa)break;else _0x783530['push'](_0x783530['shift']());}catch(_0x40affa){_0x783530['push'](_0x783530['shift']());}}}(_0x4048,0x61ac7));import{isSessionEnabled}from'../utils/sessionCache.js';export function printBlock(_0x22de67){const _0x25389e=_0x2503;console[_0x25389e(0x128)](_0x22de67);}function _0x2503(_0x2e36a6,_0x2562ea){_0x2e36a6=_0x2e36a6-0x124;const _0x404880=_0x4048();let _0x250307=_0x404880[_0x2e36a6];return _0x250307;}export async function readHookInput(){const _0x1e5b5a=_0x2503;let _0x3da3c8='';try{for await(const _0x496f88 of process[_0x1e5b5a(0x12d)]){_0x3da3c8+=_0x496f88;}}catch{return null;}if(!_0x3da3c8['trim']())return null;try{return JSON['parse'](_0x3da3c8);}catch{return null;}}function _0x4048(){const _0x17d38d=['2862104pFLXbg','177412WblGBS','log','31866MPemFP','401780assMPG','HlZqI','6MszlKe','stdin','4369216tEgLYG','11vKXvoe','395zpFMgb','6OAvYvo','4047075fkcbSa','session_id','2537130IwbEWi'];_0x4048=function(){return _0x17d38d;};return _0x4048();}export async function getEnabledSessionId(_0x37381d){if(_0x37381d)return isSessionEnabled(_0x37381d)?_0x37381d:null;const _0x244067=await readHookInput(),_0xe6e9df=_0x244067?.['session_id'];if(!_0xe6e9df||!isSessionEnabled(_0xe6e9df))return null;return _0xe6e9df;}export async function getEnabledHookContext(_0x2f1b48){const _0x481d48=_0x2503,_0x51f65b={'HlZqI':function(_0x374fc5,_0x2516ef){return _0x374fc5(_0x2516ef);}};if(_0x2f1b48){if(!isSessionEnabled(_0x2f1b48))return null;return{'sessionId':_0x2f1b48,'input':{'session_id':_0x2f1b48}};}const _0x517a2e=await readHookInput(),_0x2097c0=_0x517a2e?.[_0x481d48(0x124)];if(!_0x2097c0||!_0x51f65b[_0x481d48(0x12b)](isSessionEnabled,_0x2097c0))return null;return{'sessionId':_0x2097c0,'input':_0x517a2e};}
@@ -1 +1 @@
1
- (function(_0x4c7630,_0x149d99){const _0x31572f=_0x2923,_0x51e2a6=_0x4c7630();while(!![]){try{const _0x1413ea=-parseInt(_0x31572f(0x11c))/0x1*(-parseInt(_0x31572f(0x124))/0x2)+-parseInt(_0x31572f(0x11d))/0x3*(-parseInt(_0x31572f(0x11f))/0x4)+-parseInt(_0x31572f(0x11e))/0x5*(-parseInt(_0x31572f(0x11a))/0x6)+-parseInt(_0x31572f(0x122))/0x7*(-parseInt(_0x31572f(0x118))/0x8)+-parseInt(_0x31572f(0x120))/0x9+parseInt(_0x31572f(0x125))/0xa*(parseInt(_0x31572f(0x123))/0xb)+-parseInt(_0x31572f(0x119))/0xc;if(_0x1413ea===_0x149d99)break;else _0x51e2a6['push'](_0x51e2a6['shift']());}catch(_0x31b3a3){_0x51e2a6['push'](_0x51e2a6['shift']());}}}(_0x4e88,0xb7277));import{printBlock,getEnabledHookContext}from'./output.js';function _0x2923(_0x5c108a,_0x1672c2){_0x5c108a=_0x5c108a-0x118;const _0x4e88db=_0x4e88();let _0x292331=_0x4e88db[_0x5c108a];return _0x292331;}import{shouldShowPlanReminder}from'../utils/sessionCache.js';export async function planReminder(_0x263634){const _0x2b48f7=_0x2923,_0x586e9e={'yQgjm':_0x2b48f7(0x11b)},_0x497ca7=await getEnabledHookContext(_0x263634);if(!_0x497ca7)return;if(_0x497ca7['input']['permission_mode']!==_0x586e9e[_0x2b48f7(0x121)])return;if(!shouldShowPlanReminder(_0x497ca7['sessionId']))return;printBlock('===\x20RANGER:\x20ACTION\x20REQUIRED\x20===\x0a\x0aIf\x20this\x20plan\x20involves\x20ANY\x20UI\x20changes,\x20you\x20MUST:\x0a\x0a1.\x20**READ\x20/ranger\x20skill\x20NOW**\x20-\x20specifically\x20the\x20create.md\x20instructions\x0a2.\x20**Add\x20a\x20Ranger\x20Feature\x20Review\x20Specification**\x20to\x20the\x20end\x20of\x20your\x20plan\x0a\x0aDO\x20NOT\x20write\x20scenarios\x20without\x20reading\x20create.md\x20first.\x0aScenarios\x20are\x20E2E\x20test\x20flows,\x20NOT\x20implementation\x20tasks.\x0a\x0aYour\x20plan\x20must\x20end\x20with:\x0a```\x0a###\x20Ranger\x20Feature\x20Review\x20Specification\x20(create\x20this\x20first\x20with\x20`ranger\x20create`)\x0aFeature\x20Review\x20Name:\x20<name>\x0aDescription:\x20<description>\x0aScenarios:\x0a1.\x20<E2E\x20user\x20flow\x20that\x20can\x20be\x20verified\x20in\x20browser>\x0a2.\x20<another\x20E2E\x20user\x20flow\x20if\x20needed>\x0a```\x0a\x0aThen\x20run:\x20`ranger\x20create\x20\x22<name>\x22\x20-d\x20\x22<desc>\x22\x20-c\x20\x22<scenario1>\x22\x20-c\x20\x22<scenario2>\x22`\x0a\x0a===\x20END\x20===');}function _0x4e88(){const _0x57715b=['plan','1434109nMToMW','3ptrXFx','25cGilKe','874040Cpfvkm','11119203FUUttC','yQgjm','54670RJqFLv','13597903hrTiQT','2kpYTQD','10sjzpNY','1296LCsLUC','38808132wfRHho','1278798lRHZrN'];_0x4e88=function(){return _0x57715b;};return _0x4e88();}
1
+ (function(_0x400bd5,_0x366cb5){const _0x2b65b7=_0x239d,_0x1452ce=_0x400bd5();while(!![]){try{const _0x1dbfec=parseInt(_0x2b65b7(0xf8))/0x1*(-parseInt(_0x2b65b7(0xfe))/0x2)+-parseInt(_0x2b65b7(0xfd))/0x3*(-parseInt(_0x2b65b7(0xf3))/0x4)+parseInt(_0x2b65b7(0xf9))/0x5*(parseInt(_0x2b65b7(0xf2))/0x6)+parseInt(_0x2b65b7(0xf5))/0x7+-parseInt(_0x2b65b7(0xfc))/0x8+-parseInt(_0x2b65b7(0xf6))/0x9+-parseInt(_0x2b65b7(0xf1))/0xa*(parseInt(_0x2b65b7(0xfb))/0xb);if(_0x1dbfec===_0x366cb5)break;else _0x1452ce['push'](_0x1452ce['shift']());}catch(_0x13f0d2){_0x1452ce['push'](_0x1452ce['shift']());}}}(_0x2436,0x5af2c));import{printBlock,getEnabledHookContext}from'./output.js';import{shouldShowPlanReminder}from'../utils/sessionCache.js';function _0x239d(_0x2b481b,_0x2c7dad){_0x2b481b=_0x2b481b-0xf1;const _0x2436b2=_0x2436();let _0x239dda=_0x2436b2[_0x2b481b];return _0x239dda;}export async function planReminder(_0x5a8405){const _0x2e9eb1=_0x239d,_0x207e23={'fzsFh':function(_0x17967f,_0x554111){return _0x17967f!==_0x554111;}},_0x595373=await getEnabledHookContext(_0x5a8405);if(!_0x595373)return;if(_0x207e23['fzsFh'](_0x595373[_0x2e9eb1(0xf4)][_0x2e9eb1(0xfa)],_0x2e9eb1(0xf7)))return;if(!shouldShowPlanReminder(_0x595373['sessionId']))return;printBlock('===\x20RANGER:\x20ACTION\x20REQUIRED\x20===\x0a\x0aIf\x20this\x20plan\x20involves\x20ANY\x20UI\x20changes,\x20you\x20MUST:\x0a\x0a1.\x20**READ\x20/ranger\x20skill\x20NOW**\x20-\x20specifically\x20the\x20create.md\x20instructions\x0a2.\x20**Add\x20a\x20Ranger\x20Feature\x20Review\x20Specification**\x20to\x20the\x20end\x20of\x20your\x20plan\x0a\x0aDO\x20NOT\x20write\x20scenarios\x20without\x20reading\x20create.md\x20first.\x0aScenarios\x20are\x20E2E\x20test\x20flows,\x20NOT\x20implementation\x20tasks.\x0a\x0aYour\x20plan\x20must\x20end\x20with:\x0a```\x0a###\x20Ranger\x20Feature\x20Review\x20Specification\x20(create\x20this\x20first\x20with\x20`ranger\x20create`)\x0aFeature\x20Review\x20Name:\x20<name>\x0aDescription:\x20<description>\x0aScenarios:\x0a1.\x20<E2E\x20user\x20flow\x20that\x20can\x20be\x20verified\x20in\x20browser>\x0a2.\x20<another\x20E2E\x20user\x20flow\x20if\x20needed>\x0a```\x0a\x0aThen\x20run:\x20`ranger\x20create\x20\x22<name>\x22\x20-d\x20\x22<desc>\x22\x20-c\x20\x22<scenario1>\x22\x20-c\x20\x22<scenario2>\x22`\x0a\x0a===\x20END\x20===');}function _0x2436(){const _0x3a70d4=['plan','4HGfDSZ','10ohIKIO','permission_mode','99561lkbjvt','268480hHSCUU','9vtxMuv','310054BnFHeg','580webJaL','2182794RPBgoi','735400AkezFA','input','3439485qjaXHN','1974177mxPOtR'];_0x2436=function(){return _0x3a70d4;};return _0x2436();}
@@ -1 +1 @@
1
- (function(_0x65c94,_0x452c8a){const _0x55f536=_0x1a35,_0x4d886c=_0x65c94();while(!![]){try{const _0x5d7dd9=parseInt(_0x55f536(0x1e6))/0x1*(-parseInt(_0x55f536(0x1e1))/0x2)+-parseInt(_0x55f536(0x1e9))/0x3*(-parseInt(_0x55f536(0x1eb))/0x4)+-parseInt(_0x55f536(0x1e4))/0x5*(parseInt(_0x55f536(0x1ec))/0x6)+-parseInt(_0x55f536(0x1ea))/0x7*(parseInt(_0x55f536(0x1de))/0x8)+-parseInt(_0x55f536(0x1df))/0x9*(parseInt(_0x55f536(0x1e3))/0xa)+-parseInt(_0x55f536(0x1e2))/0xb+-parseInt(_0x55f536(0x1e7))/0xc*(-parseInt(_0x55f536(0x1e5))/0xd);if(_0x5d7dd9===_0x452c8a)break;else _0x4d886c['push'](_0x4d886c['shift']());}catch(_0x501eb4){_0x4d886c['push'](_0x4d886c['shift']());}}}(_0x4983,0x73316));import{printBlock,getEnabledSessionId}from'./output.js';export async function planStart(_0x28e7b5){const _0x1c4d57=_0x1a35,_0x5b0a59={'AzuGC':function(_0x289e28,_0x37cf0c){return _0x289e28(_0x37cf0c);},'lzYoK':function(_0x448276,_0x111b6f){return _0x448276(_0x111b6f);}},_0xaf0a8=await _0x5b0a59[_0x1c4d57(0x1e0)](getEnabledSessionId,_0x28e7b5);if(!_0xaf0a8)return;_0x5b0a59['lzYoK'](printBlock,_0x1c4d57(0x1e8));}function _0x1a35(_0x1634a3,_0x5dcbde){_0x1634a3=_0x1634a3-0x1de;const _0x498328=_0x4983();let _0x1a3515=_0x498328[_0x1634a3];return _0x1a3515;}function _0x4983(){const _0x1bbaa9=['38260UHTmkA','25WjkVBQ','2800941gkbkoG','6LSELhI','156xKqZlC','===\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===','1106763fhoYxi','2480324WDdHcU','8lugWXA','862878QECLSJ','16GXyhvk','1494tDFXZo','AzuGC','83344nTstqv','8294836IBiVIH'];_0x4983=function(){return _0x1bbaa9;};return _0x4983();}
1
+ function _0x160a(){const _0x370433=['===\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===','6096896wOECof','25UwunqF','2227980YtGDOV','401850gERWqN','1428996AVFNlP','1694660yclbAp','KbNHK','1907934MsgGtC','4IovqhO','1017133xQgYSA'];_0x160a=function(){return _0x370433;};return _0x160a();}(function(_0x984dfc,_0x3c1f53){const _0x3b55d8=_0x3dc2,_0x2439fc=_0x984dfc();while(!![]){try{const _0x438ba7=parseInt(_0x3b55d8(0x94))/0x1+-parseInt(_0x3b55d8(0x9b))/0x2+parseInt(_0x3b55d8(0x98))/0x3*(parseInt(_0x3b55d8(0x93))/0x4)+-parseInt(_0x3b55d8(0x97))/0x5*(parseInt(_0x3b55d8(0x9a))/0x6)+parseInt(_0x3b55d8(0x9d))/0x7+parseInt(_0x3b55d8(0x96))/0x8+-parseInt(_0x3b55d8(0x99))/0x9;if(_0x438ba7===_0x3c1f53)break;else _0x2439fc['push'](_0x2439fc['shift']());}catch(_0x524b72){_0x2439fc['push'](_0x2439fc['shift']());}}}(_0x160a,0xadbe9));import{printBlock,getEnabledSessionId}from'./output.js';function _0x3dc2(_0x166bf4,_0x3140e5){_0x166bf4=_0x166bf4-0x93;const _0x160a8e=_0x160a();let _0x3dc280=_0x160a8e[_0x166bf4];return _0x3dc280;}export async function planStart(_0x3499fb){const _0x343e93=_0x3dc2,_0x42b215={'KbNHK':function(_0x5b2099,_0x3c7c37){return _0x5b2099(_0x3c7c37);}},_0x570f6c=await _0x42b215[_0x343e93(0x9c)](getEnabledSessionId,_0x3499fb);if(!_0x570f6c)return;printBlock(_0x343e93(0x95));}
@@ -1 +1 @@
1
- (function(_0x5ae0c9,_0x39e955){const _0x5cbea8=_0x24d8,_0x3ce2f0=_0x5ae0c9();while(!![]){try{const _0x57b846=parseInt(_0x5cbea8(0x14e))/0x1*(parseInt(_0x5cbea8(0x144))/0x2)+-parseInt(_0x5cbea8(0x147))/0x3*(parseInt(_0x5cbea8(0x145))/0x4)+-parseInt(_0x5cbea8(0x14d))/0x5*(parseInt(_0x5cbea8(0x149))/0x6)+parseInt(_0x5cbea8(0x148))/0x7+-parseInt(_0x5cbea8(0x143))/0x8*(-parseInt(_0x5cbea8(0x14c))/0x9)+parseInt(_0x5cbea8(0x14a))/0xa+-parseInt(_0x5cbea8(0x14f))/0xb;if(_0x57b846===_0x39e955)break;else _0x3ce2f0['push'](_0x3ce2f0['shift']());}catch(_0x3b1816){_0x3ce2f0['push'](_0x3ce2f0['shift']());}}}(_0x110c,0xaca8b));import{getSessionEntry,updateBranchTracking}from'../utils/sessionCache.js';function _0x24d8(_0x53c477,_0x1fffd1){_0x53c477=_0x53c477-0x142;const _0x110c9f=_0x110c();let _0x24d8a2=_0x110c9f[_0x53c477];return _0x24d8a2;}import{getToken}from'../utils/keychain.js';import{getEnabledSessionId}from'./output.js';function _0x110c(){const _0x57f849=['702755YxjKjj','1460nwUIjX','21140075WYzBuH','VOyYK','8377568wDVQSX','1644FQyvhM','8lBRAVb','log','964395tJfFZt','9015223URXcvN','12vhBWRc','178630xAfCBl','bsrpo','9cOOLLb'];_0x110c=function(){return _0x57f849;};return _0x110c();}export async function postEdit(_0xf9fc87){const _0x2bdeec=_0x24d8,_0x1b5679={'bsrpo':function(_0x3957eb,_0x54036c){return _0x3957eb(_0x54036c);},'VOyYK':'PostToolUse'},_0x38da8c=await _0x1b5679[_0x2bdeec(0x14b)](getEnabledSessionId,_0xf9fc87);if(!_0x38da8c)return;updateBranchTracking(_0x38da8c);const _0x2f63f0=await getToken();if(!_0x2f63f0)return;const _0x196bbc=_0x1b5679['bsrpo'](getSessionEntry,_0x38da8c);if(_0x196bbc){const _0x47f4ee={'hookSpecificOutput':{'hookEventName':_0x1b5679[_0x2bdeec(0x142)],'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[_0x2bdeec(0x146)](JSON['stringify'](_0x47f4ee));return;}const _0x292e9f={'hookSpecificOutput':{'hookEventName':_0x1b5679[_0x2bdeec(0x142)],'additionalContext':'RANGER:\x20If\x20this\x20is\x20for\x20a\x20UI\x20feature,\x20you\x20MUST\x20use\x20/ranger\x20to\x20either\x20create\x20a\x20new\x20feature\x20review\x20or\x20resume\x20an\x20existing\x20one.'}};console['log'](JSON['stringify'](_0x292e9f));}
1
+ function _0x4b19(){const _0x8b7541=['TSQKK','7351623XrvMYe','8pZPqpS','8jkXEhg','4711SPEKsx','7005510YwLmPm','606oMnLOs','log','HxFZf','450783WoogNZ','1209940dXZzbH','4500475txsTAm','2OMBpme','7504640FGbQLI'];_0x4b19=function(){return _0x8b7541;};return _0x4b19();}function _0x1b45(_0x35424c,_0x5ed570){_0x35424c=_0x35424c-0x12f;const _0x4b19f7=_0x4b19();let _0x1b45f6=_0x4b19f7[_0x35424c];return _0x1b45f6;}(function(_0x39d8d2,_0x30d4f4){const _0x2b0afa=_0x1b45,_0x1c5263=_0x39d8d2();while(!![]){try{const _0x31edf6=-parseInt(_0x2b0afa(0x13c))/0x1*(-parseInt(_0x2b0afa(0x130))/0x2)+parseInt(_0x2b0afa(0x13b))/0x3*(-parseInt(_0x2b0afa(0x135))/0x4)+-parseInt(_0x2b0afa(0x12f))/0x5+parseInt(_0x2b0afa(0x138))/0x6*(-parseInt(_0x2b0afa(0x136))/0x7)+parseInt(_0x2b0afa(0x134))/0x8*(parseInt(_0x2b0afa(0x133))/0x9)+-parseInt(_0x2b0afa(0x137))/0xa+parseInt(_0x2b0afa(0x131))/0xb;if(_0x31edf6===_0x30d4f4)break;else _0x1c5263['push'](_0x1c5263['shift']());}catch(_0x3f2971){_0x1c5263['push'](_0x1c5263['shift']());}}}(_0x4b19,0xb4a2e));import{getSessionEntry,updateBranchTracking}from'../utils/sessionCache.js';import{getToken}from'../utils/keychain.js';import{getEnabledSessionId}from'./output.js';export async function postEdit(_0x279892){const _0x5c2885=_0x1b45,_0x4dbd31={'HxFZf':function(_0x20b443,_0x17afb5){return _0x20b443(_0x17afb5);},'nJEOY':function(_0x1a9bbd){return _0x1a9bbd();},'TSQKK':'PostToolUse'},_0x1f31d1=await _0x4dbd31[_0x5c2885(0x13a)](getEnabledSessionId,_0x279892);if(!_0x1f31d1)return;updateBranchTracking(_0x1f31d1);const _0x5e4c52=await _0x4dbd31['nJEOY'](getToken);if(!_0x5e4c52)return;const _0x3e81df=getSessionEntry(_0x1f31d1);if(_0x3e81df){const _0x50fff7={'hookSpecificOutput':{'hookEventName':_0x4dbd31[_0x5c2885(0x132)],'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[_0x5c2885(0x139)](JSON['stringify'](_0x50fff7));return;}const _0x307a98={'hookSpecificOutput':{'hookEventName':'PostToolUse','additionalContext':'RANGER:\x20If\x20this\x20is\x20for\x20a\x20UI\x20feature,\x20you\x20MUST\x20use\x20/ranger\x20to\x20either\x20create\x20a\x20new\x20feature\x20review\x20or\x20resume\x20an\x20existing\x20one.'}};console['log'](JSON['stringify'](_0x307a98));}
@@ -1 +1 @@
1
- (function(_0x34d585,_0x36b6e3){const _0x31f580=_0x7d74,_0x184d31=_0x34d585();while(!![]){try{const _0x58328b=parseInt(_0x31f580(0x151))/0x1*(-parseInt(_0x31f580(0x154))/0x2)+parseInt(_0x31f580(0x150))/0x3+parseInt(_0x31f580(0x15a))/0x4*(-parseInt(_0x31f580(0x157))/0x5)+parseInt(_0x31f580(0x153))/0x6+-parseInt(_0x31f580(0x156))/0x7+parseInt(_0x31f580(0x152))/0x8*(parseInt(_0x31f580(0x158))/0x9)+-parseInt(_0x31f580(0x155))/0xa;if(_0x58328b===_0x36b6e3)break;else _0x184d31['push'](_0x184d31['shift']());}catch(_0x984501){_0x184d31['push'](_0x184d31['shift']());}}}(_0x5871,0xa5767));import{getToken}from'../utils/keychain.js';function _0x7d74(_0x197724,_0x5e07aa){_0x197724=_0x197724-0x150;const _0x5871ea=_0x5871();let _0x7d7451=_0x5871ea[_0x197724];return _0x7d7451;}import{printBlock,getEnabledSessionId}from'./output.js';export async function preCompact(_0x3aadcf){const _0x3e9c48=_0x7d74,_0x54a04f={'RGvAr':function(_0x586163,_0x4e27c5){return _0x586163(_0x4e27c5);},'KuSEv':function(_0x27a41f){return _0x27a41f();}},_0x2f718e=await _0x54a04f[_0x3e9c48(0x159)](getEnabledSessionId,_0x3aadcf);if(!_0x2f718e)return;try{const _0x32fe95=await _0x54a04f['KuSEv'](getToken);if(!_0x32fe95)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 _0x5871(){const _0x5d5f84=['384535ELDFlI','207891LEghtY','RGvAr','12jLeVSg','3274440laWDql','362XtYwJS','344BirUNl','3547128FkOWmz','856KwVnoo','5233570ELjFQh','7624232Bbgigi'];_0x5871=function(){return _0x5d5f84;};return _0x5871();}
1
+ function _0x4c44(_0xab9890,_0x475c16){_0xab9890=_0xab9890-0xd8;const _0x5463f3=_0x5463();let _0x4c441e=_0x5463f3[_0xab9890];return _0x4c441e;}(function(_0x88e42b,_0x9a3507){const _0x2898db=_0x4c44,_0x2fb274=_0x88e42b();while(!![]){try{const _0x58e71a=parseInt(_0x2898db(0xdf))/0x1+-parseInt(_0x2898db(0xdb))/0x2*(-parseInt(_0x2898db(0xe1))/0x3)+-parseInt(_0x2898db(0xe0))/0x4+-parseInt(_0x2898db(0xdc))/0x5+-parseInt(_0x2898db(0xde))/0x6+-parseInt(_0x2898db(0xd8))/0x7*(-parseInt(_0x2898db(0xda))/0x8)+parseInt(_0x2898db(0xdd))/0x9*(parseInt(_0x2898db(0xd9))/0xa);if(_0x58e71a===_0x9a3507)break;else _0x2fb274['push'](_0x2fb274['shift']());}catch(_0x24b018){_0x2fb274['push'](_0x2fb274['shift']());}}}(_0x5463,0x39e27));import{getToken}from'../utils/keychain.js';function _0x5463(){const _0x4c3a65=['4605WptNPo','1311205EPyuJi','14990uxGxLp','16INhSRW','602meqntk','2367590cWEORM','2277NJkUjw','2529636taFpev','70245uPIgAf','615752lQNkdN'];_0x5463=function(){return _0x4c3a65;};return _0x5463();}import{printBlock,getEnabledSessionId}from'./output.js';export async function preCompact(_0x2b7135){const _0x2ce9fb={'RivSt':function(_0x35ce0f){return _0x35ce0f();}},_0x4d08a7=await getEnabledSessionId(_0x2b7135);if(!_0x4d08a7)return;try{const _0x51b9f7=await _0x2ce9fb['RivSt'](getToken);if(!_0x51b9f7)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(_0xd23f9b,_0x2ef909){const _0x14a508=_0x1a59,_0x477fdb=_0xd23f9b();while(!![]){try{const _0x5ce3c8=parseInt(_0x14a508(0xa0))/0x1*(parseInt(_0x14a508(0x97))/0x2)+parseInt(_0x14a508(0x98))/0x3*(parseInt(_0x14a508(0x99))/0x4)+parseInt(_0x14a508(0x9b))/0x5+parseInt(_0x14a508(0x9f))/0x6*(-parseInt(_0x14a508(0xa3))/0x7)+parseInt(_0x14a508(0xa2))/0x8+-parseInt(_0x14a508(0xa1))/0x9+-parseInt(_0x14a508(0x9c))/0xa;if(_0x5ce3c8===_0x2ef909)break;else _0x477fdb['push'](_0x477fdb['shift']());}catch(_0x161767){_0x477fdb['push'](_0x477fdb['shift']());}}}(_0x16fc,0xf1132));import{isSessionEnabled,recordEnabledSessionCleared}from'../utils/sessionCache.js';import{readHookInput}from'./output.js';export async function sessionEnd(_0x3704f3){const _0x183759=_0x1a59,_0x12183c={'BkVRu':function(_0x1b099c,_0x27de66){return _0x1b099c(_0x27de66);}},_0x4acf85=process[_0x183759(0x9e)]['CLAUDE_SESSION_ID'];let _0x138933=_0x3704f3,_0x135cb0;if(!_0x3704f3){if(_0x4acf85&&!isSessionEnabled(_0x4acf85))return;const _0x2d3d0f=await readHookInput();_0x138933=_0x2d3d0f?.[_0x183759(0x9a)]||_0x4acf85,_0x135cb0=_0x2d3d0f?.['reason'];}if(!_0x138933)return;_0x135cb0==='clear'&&_0x12183c[_0x183759(0x9d)](recordEnabledSessionCleared,_0x138933);}function _0x1a59(_0xe50312,_0x385970){_0xe50312=_0xe50312-0x97;const _0x16fcde=_0x16fc();let _0x1a5954=_0x16fcde[_0xe50312];return _0x1a5954;}function _0x16fc(){const _0x3f3fbd=['96ARRwae','47297eXRhWw','8788059YNLRCC','11162872pdrAED','18382uIPZFy','2lAstoM','4782903VljNZO','4YaLLYG','session_id','4197200heJXIA','18704880oitXFL','BkVRu','env'];_0x16fc=function(){return _0x3f3fbd;};return _0x16fc();}
1
+ function _0x3e06(_0x18121b,_0x3ce4e4){_0x18121b=_0x18121b-0xf3;const _0x2aaafc=_0x2aaa();let _0x3e06bc=_0x2aaafc[_0x18121b];return _0x3e06bc;}(function(_0x4704a4,_0x46623a){const _0x184293=_0x3e06,_0x54d964=_0x4704a4();while(!![]){try{const _0x4571d7=-parseInt(_0x184293(0xfd))/0x1*(-parseInt(_0x184293(0xf3))/0x2)+-parseInt(_0x184293(0xfe))/0x3+-parseInt(_0x184293(0xf5))/0x4+-parseInt(_0x184293(0xf9))/0x5*(parseInt(_0x184293(0xff))/0x6)+-parseInt(_0x184293(0xfc))/0x7+parseInt(_0x184293(0xfa))/0x8*(parseInt(_0x184293(0xf6))/0x9)+parseInt(_0x184293(0xfb))/0xa;if(_0x4571d7===_0x46623a)break;else _0x54d964['push'](_0x54d964['shift']());}catch(_0x1a5b50){_0x54d964['push'](_0x54d964['shift']());}}}(_0x2aaa,0xcaa40));import{isSessionEnabled,recordEnabledSessionCleared}from'../utils/sessionCache.js';function _0x2aaa(){const _0x1b5d55=['325MeNhmu','40WeLORK','26205380TRklWB','5173819BnGjBH','11TYTpPH','4233996abDAla','84570hEaPnr','261278RMXNdf','CLAUDE_SESSION_ID','5164848Srawqh','2034513rPLeFg','gvCDj','reason'];_0x2aaa=function(){return _0x1b5d55;};return _0x2aaa();}import{readHookInput}from'./output.js';export async function sessionEnd(_0x39f40d){const _0x2d51bd=_0x3e06,_0x589095={'gvCDj':function(_0x2364df){return _0x2364df();},'QqvjT':function(_0x83cbd3,_0xa6e480){return _0x83cbd3(_0xa6e480);}},_0xe62bda=process['env'][_0x2d51bd(0xf4)];let _0xccdbf5=_0x39f40d,_0x1c9501;if(!_0x39f40d){if(_0xe62bda&&!isSessionEnabled(_0xe62bda))return;const _0x44ad29=await _0x589095[_0x2d51bd(0xf7)](readHookInput);_0xccdbf5=_0x44ad29?.['session_id']||_0xe62bda,_0x1c9501=_0x44ad29?.[_0x2d51bd(0xf8)];}if(!_0xccdbf5)return;_0x1c9501==='clear'&&_0x589095['QqvjT'](recordEnabledSessionCleared,_0xccdbf5);}
@@ -1 +1 @@
1
- (function(_0x371ef8,_0x5d0188){const _0xaa1b2e=_0x279e,_0x352b89=_0x371ef8();while(!![]){try{const _0x16dca9=parseInt(_0xaa1b2e(0x130))/0x1*(-parseInt(_0xaa1b2e(0x138))/0x2)+parseInt(_0xaa1b2e(0x12d))/0x3+parseInt(_0xaa1b2e(0x12f))/0x4*(-parseInt(_0xaa1b2e(0x13a))/0x5)+parseInt(_0xaa1b2e(0x133))/0x6*(parseInt(_0xaa1b2e(0x131))/0x7)+-parseInt(_0xaa1b2e(0x143))/0x8+parseInt(_0xaa1b2e(0x13e))/0x9*(parseInt(_0xaa1b2e(0x132))/0xa)+parseInt(_0xaa1b2e(0x13d))/0xb*(-parseInt(_0xaa1b2e(0x13f))/0xc);if(_0x16dca9===_0x5d0188)break;else _0x352b89['push'](_0x352b89['shift']());}catch(_0x415db4){_0x352b89['push'](_0x352b89['shift']());}}}(_0x3836,0xabc9b));function _0x279e(_0x27ff74,_0x1160a0){_0x27ff74=_0x27ff74-0x12d;const _0x383684=_0x3836();let _0x279e88=_0x383684[_0x27ff74];return _0x279e88;}import{appendFile}from'fs/promises';import{initBranchTracking,shouldAutoEnableAfterClear,autoEnableAfterClear,isSessionEnabled,getCurrentBranch}from'../utils/sessionCache.js';import{createTelemetryCollector}from'../utils/telemetry.js';import{getToken}from'../utils/keychain.js';function _0x3836(){const _0x3c4297=['LoocZ','5ltpaYI','stdin','export\x20CLAUDE_SESSION_ID=\x22','3267VPUAdT','18vFiLOE','2460ADZgVv','\x20(Branch:\x20','master','parse','2081832UipLLb','source','2475273CRVxnu','XRhWT','62644IeYkrE','2vjdcvx','49OSSAlC','803450rRKBuf','1128558dgpQut','SessionStart','Ubhgj','mXbfO','hook:session-start','1262014ViKBGm'];_0x3836=function(){return _0x3c4297;};return _0x3836();}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(_0x14c8e4){const _0x21f4f7=_0x279e,_0x2c093e={'ADYdU':function(_0x5bb972,_0x18cab2){return _0x5bb972||_0x18cab2;},'FNaMP':'session_id','cDlWy':_0x21f4f7(0x144),'mXbfO':function(_0x5bb881,_0x8ee537){return _0x5bb881&&_0x8ee537;},'ozixZ':function(_0x186687){return _0x186687();},'LoocZ':function(_0x22f124,_0x3e634b){return _0x22f124(_0x3e634b);},'jfKAE':function(_0x5536ea,_0x24eb65){return _0x5536ea(_0x24eb65);},'XRhWT':_0x21f4f7(0x137),'Ubhgj':function(_0x175d80,_0x4f7f11){return _0x175d80!==_0x4f7f11;}};let _0x4076dd=_0x2c093e['ADYdU'](_0x14c8e4,''),_0x31d1cf;if(!_0x14c8e4){let _0x529dd5='';for await(const _0x443862 of process[_0x21f4f7(0x13b)]){_0x529dd5+=_0x443862;}try{const _0x348b4c=JSON[_0x21f4f7(0x142)](_0x529dd5);_0x4076dd=_0x348b4c[_0x2c093e['FNaMP']]||'',_0x31d1cf=_0x348b4c[_0x2c093e['cDlWy']];}catch{}const _0x5e40ab=process['env']['CLAUDE_ENV_FILE'];if(_0x2c093e[_0x21f4f7(0x136)](_0x5e40ab,_0x4076dd))try{await appendFile(_0x5e40ab,_0x21f4f7(0x13c)+_0x4076dd+'\x22\x0a');}catch{}}try{await _0x2c093e['ozixZ'](getToken);}catch{}if(_0x4076dd){_0x2c093e[_0x21f4f7(0x139)](shouldAutoEnableAfterClear,_0x31d1cf)&&_0x2c093e[_0x21f4f7(0x139)](autoEnableAfterClear,_0x4076dd);_0x2c093e['jfKAE'](initBranchTracking,_0x4076dd);const _0x5d93c0=isSessionEnabled(_0x4076dd);try{const _0x21e6fa=createTelemetryCollector(_0x2c093e[_0x21f4f7(0x12e)]);await _0x21e6fa['trackCommandStart']({'sessionId':_0x4076dd,'hooksEnabled':_0x5d93c0}),await _0x21e6fa['trackCommandEnd']('success');}catch{}if(_0x5d93c0){const _0x1ad002=_0x2c093e['ozixZ'](getCurrentBranch),_0x54d3a2=_0x1ad002&&_0x2c093e['Ubhgj'](_0x1ad002,'main')&&_0x2c093e[_0x21f4f7(0x135)](_0x1ad002,_0x21f4f7(0x141))?_0x21f4f7(0x140)+_0x1ad002+')':'',_0x5182cf={'hookSpecificOutput':{'hookEventName':_0x21f4f7(0x134),'additionalContext':RANGER_AUTO_ENABLED_PROMPT+_0x54d3a2}};console['log'](JSON['stringify'](_0x5182cf));}}}
1
+ const _0x354602=_0x9a3a;(function(_0x27f330,_0x261336){const _0x88b692=_0x9a3a,_0x5d2635=_0x27f330();while(!![]){try{const _0x198229=parseInt(_0x88b692(0x7d))/0x1+-parseInt(_0x88b692(0x7b))/0x2*(parseInt(_0x88b692(0x7a))/0x3)+-parseInt(_0x88b692(0x7c))/0x4+parseInt(_0x88b692(0x74))/0x5+parseInt(_0x88b692(0x77))/0x6+parseInt(_0x88b692(0x73))/0x7+parseInt(_0x88b692(0x85))/0x8*(-parseInt(_0x88b692(0x7e))/0x9);if(_0x198229===_0x261336)break;else _0x5d2635['push'](_0x5d2635['shift']());}catch(_0x294e16){_0x5d2635['push'](_0x5d2635['shift']());}}}(_0x1341,0x7aaa9));import{appendFile}from'fs/promises';function _0x1341(){const _0x144712=['16UhvnlD','lmyPD','CLAUDE_ENV_FILE','session_id','export\x20CLAUDE_SESSION_ID=\x22','log','master','env','6530440tAQDtK','1509325bTXofE','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=================================================================','5329842JYfOBj','BCLge','success','1962663HFtsud','2cleBUT','1430192gqlHLe','69764YQChge','3053907BCJlQN','AEzpL','kIWrB','MJFOC','AXyol','FUUwl','\x20(Branch:\x20'];_0x1341=function(){return _0x144712;};return _0x1341();}import{initBranchTracking,shouldAutoEnableAfterClear,autoEnableAfterClear,isSessionEnabled,getCurrentBranch}from'../utils/sessionCache.js';import{createTelemetryCollector}from'../utils/telemetry.js';import{getToken}from'../utils/keychain.js';const RANGER_AUTO_ENABLED_PROMPT=_0x354602(0x76);function _0x9a3a(_0x935225,_0x412f01){_0x935225=_0x935225-0x6d;const _0x13419f=_0x1341();let _0x9a3abd=_0x13419f[_0x935225];return _0x9a3abd;}export async function sessionStart(_0x383091){const _0x56841b=_0x354602,_0x3a7293={'JgToy':_0x56841b(0x6e),'AEzpL':'source','kWxli':function(_0x5ae6f5,_0x479436){return _0x5ae6f5&&_0x479436;},'kIWrB':function(_0x162281,_0xa3d3fc,_0x3cac81){return _0x162281(_0xa3d3fc,_0x3cac81);},'lmyPD':function(_0x259124,_0xdc5b72){return _0x259124(_0xdc5b72);},'MJFOC':function(_0x574bd1,_0x336a83){return _0x574bd1(_0x336a83);},'BcfLt':'hook:session-start','BCLge':function(_0x112324,_0x1e614d){return _0x112324!==_0x1e614d;},'FUUwl':_0x56841b(0x71),'AXyol':'SessionStart'};let _0xc5c9ae=_0x383091||'',_0x462c3e;if(!_0x383091){let _0x22689c='';for await(const _0x213d07 of process['stdin']){_0x22689c+=_0x213d07;}try{const _0x3b4c8d=JSON['parse'](_0x22689c);_0xc5c9ae=_0x3b4c8d[_0x3a7293['JgToy']]||'',_0x462c3e=_0x3b4c8d[_0x3a7293[_0x56841b(0x7f)]];}catch{}const _0x28949d=process[_0x56841b(0x72)][_0x56841b(0x6d)];if(_0x3a7293['kWxli'](_0x28949d,_0xc5c9ae))try{await _0x3a7293[_0x56841b(0x80)](appendFile,_0x28949d,_0x56841b(0x6f)+_0xc5c9ae+'\x22\x0a');}catch{}}try{await getToken();}catch{}if(_0xc5c9ae){_0x3a7293[_0x56841b(0x86)](shouldAutoEnableAfterClear,_0x462c3e)&&autoEnableAfterClear(_0xc5c9ae);initBranchTracking(_0xc5c9ae);const _0x77d7ad=_0x3a7293[_0x56841b(0x81)](isSessionEnabled,_0xc5c9ae);try{const _0x1d3013=_0x3a7293['MJFOC'](createTelemetryCollector,_0x3a7293['BcfLt']);await _0x1d3013[_0x56841b(0x75)]({'sessionId':_0xc5c9ae,'hooksEnabled':_0x77d7ad}),await _0x1d3013['trackCommandEnd'](_0x56841b(0x79));}catch{}if(_0x77d7ad){const _0x14cc94=getCurrentBranch(),_0x204503=_0x14cc94&&_0x3a7293[_0x56841b(0x78)](_0x14cc94,'main')&&_0x3a7293[_0x56841b(0x78)](_0x14cc94,_0x3a7293[_0x56841b(0x83)])?_0x56841b(0x84)+_0x14cc94+')':'',_0x1df9ba={'hookSpecificOutput':{'hookEventName':_0x3a7293[_0x56841b(0x82)],'additionalContext':RANGER_AUTO_ENABLED_PROMPT+_0x204503}};console[_0x56841b(0x70)](JSON['stringify'](_0x1df9ba));}}}
@@ -1 +1 @@
1
- (function(_0x1e1aa2,_0x553f49){const _0x1652cc=_0x439d,_0x3693c0=_0x1e1aa2();while(!![]){try{const _0x12dab6=parseInt(_0x1652cc(0x1b2))/0x1*(parseInt(_0x1652cc(0x1b9))/0x2)+-parseInt(_0x1652cc(0x1b3))/0x3+parseInt(_0x1652cc(0x1ad))/0x4*(parseInt(_0x1652cc(0x1ae))/0x5)+-parseInt(_0x1652cc(0x1aa))/0x6+parseInt(_0x1652cc(0x1b5))/0x7*(parseInt(_0x1652cc(0x1be))/0x8)+-parseInt(_0x1652cc(0x1b7))/0x9+parseInt(_0x1652cc(0x1af))/0xa*(parseInt(_0x1652cc(0x1bd))/0xb);if(_0x12dab6===_0x553f49)break;else _0x3693c0['push'](_0x3693c0['shift']());}catch(_0x883d95){_0x3693c0['push'](_0x3693c0['shift']());}}}(_0x6dd9,0xf3b25));function _0x439d(_0x44d0ae,_0x23758c){_0x44d0ae=_0x44d0ae-0x1a3;const _0x6dd921=_0x6dd9();let _0x439db6=_0x6dd921[_0x44d0ae];return _0x439db6;}function _0x6dd9(){const _0xa08919=['stringify','7nMZIRf','VHQFn','3989232NuQtZt','trackCommandStart','4tXZPWz','status','cdqox','KXLyr','5734619hcXiBw','968536wClmds','some','featureId','success','cVTsO','blocked','closed','sessionId','https://dashboard.ranger.net/features/','10534278KKassb','trackCommandEnd','AYzBs','84yYbvzf','30955WPOgAI','30EGSTNF','lZTwz','checklistItems','994870UzcOZD','1822989HBfpXf'];_0x6dd9=function(){return _0xa08919;};return _0x6dd9();}import{getToken}from'../utils/keychain.js';import{getFeature,concludeSession}from'../utils/featureApi.js';import{getSessionEntry,shouldShowStopReminder}from'../utils/sessionCache.js';import{getEnabledHookContext}from'./output.js';import{createTelemetryCollector}from'../utils/telemetry.js';export async function stopHook(_0x5c5b5d){const _0x1c2d71=_0x439d,_0x42f1bc={'AYzBs':function(_0xcbe22e,_0x1ee0a6){return _0xcbe22e(_0x1ee0a6);},'KXLyr':function(_0x5219f2,_0x19d52d){return _0x5219f2(_0x19d52d);},'SMPCA':function(_0x182d92,_0x5bb6f9,_0x547a25,_0x59f0f1){return _0x182d92(_0x5bb6f9,_0x547a25,_0x59f0f1);},'jGjNg':function(_0x183c9f,_0x675616){return _0x183c9f(_0x675616);},'cVTsO':function(_0x2b87ca,_0x168033){return _0x2b87ca&&_0x168033;},'cdqox':function(_0x2d2dc8,_0x3b1e73,_0x49f63b){return _0x2d2dc8(_0x3b1e73,_0x49f63b);},'lZTwz':function(_0x45c9a9,_0x45c6ae,_0x1b0a99,_0x2ab9b7){return _0x45c9a9(_0x45c6ae,_0x1b0a99,_0x2ab9b7);}},_0x536aaa=await _0x42f1bc[_0x1c2d71(0x1ac)](getEnabledHookContext,_0x5c5b5d),_0x5558b9=_0x536aaa?.['sessionId']??null;let _0x1a7363=!![];if(!_0x5558b9){await trackStop(_0x5558b9,![],_0x1a7363);return;}try{const _0x48cb9d=_0x42f1bc[_0x1c2d71(0x1bc)](getSessionEntry,_0x5558b9);if(!_0x48cb9d){await _0x42f1bc['SMPCA'](trackStop,_0x5558b9,!![],_0x1a7363);return;}const _0x296078=await getToken(),_0x48d0db=_0x1c2d71(0x1a9)+_0x48cb9d[_0x1c2d71(0x1a3)];let _0x41e8c9=null,_0x32ac1c=![],_0x5e2016=![];if(_0x296078)try{const _0x2ee1d6=await _0x42f1bc['jGjNg'](getFeature,_0x48cb9d[_0x1c2d71(0x1a3)]);_0x41e8c9=_0x2ee1d6['currentSessionId']??null;const _0xeadc07=_0x2ee1d6[_0x1c2d71(0x1b1)]['filter'](_0x3ea0ac=>_0x3ea0ac[_0x1c2d71(0x1a8)]===_0x41e8c9);_0x32ac1c=_0xeadc07[_0x1c2d71(0x1bf)](_0x3b0fc2=>_0x3b0fc2[_0x1c2d71(0x1ba)]!=='verified'&&_0x3b0fc2['status']!==_0x1c2d71(0x1a6)&&_0x3b0fc2[_0x1c2d71(0x1ba)]!==_0x1c2d71(0x1a7)&&_0x3b0fc2['status']!=='incomplete'),_0x5e2016=_0xeadc07[_0x1c2d71(0x1bf)](_0x2e6a69=>_0x2e6a69[_0x1c2d71(0x1ba)]==='verification_in_progress');}catch{}if(_0x296078&&_0x41e8c9&&_0x32ac1c){if(!_0x5e2016&&shouldShowStopReminder(_0x5558b9)){const _0x43cf2d={'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'+_0x48d0db}};console['log'](JSON[_0x1c2d71(0x1b4)](_0x43cf2d));}}if(_0x42f1bc[_0x1c2d71(0x1a5)](_0x296078,_0x41e8c9)&&!_0x32ac1c)try{await _0x42f1bc[_0x1c2d71(0x1bb)](concludeSession,_0x48cb9d['featureId'],_0x41e8c9);}catch{}await _0x42f1bc[_0x1c2d71(0x1b0)](trackStop,_0x5558b9,!![],_0x1a7363);return;}catch{await trackStop(_0x5558b9,!![],_0x1a7363);return;}}async function trackStop(_0x3123bf,_0x32695a,_0x116bea){const _0x29d287=_0x439d,_0x1029a9={'VHQFn':'hook:stop'};try{const _0x2c605a=createTelemetryCollector(_0x1029a9[_0x29d287(0x1b6)]);await _0x2c605a[_0x29d287(0x1b8)]({'sessionId':_0x3123bf??undefined,'hooksEnabled':_0x32695a,'stopAllowed':_0x116bea}),await _0x2c605a[_0x29d287(0x1ab)](_0x29d287(0x1a4));}catch{}}
1
+ (function(_0x26522f,_0x429f86){const _0x2fa88a=_0xd63f,_0x358101=_0x26522f();while(!![]){try{const _0x495e71=parseInt(_0x2fa88a(0x89))/0x1*(parseInt(_0x2fa88a(0x8c))/0x2)+parseInt(_0x2fa88a(0x8d))/0x3*(-parseInt(_0x2fa88a(0x8f))/0x4)+parseInt(_0x2fa88a(0x95))/0x5*(-parseInt(_0x2fa88a(0x87))/0x6)+parseInt(_0x2fa88a(0x8b))/0x7*(-parseInt(_0x2fa88a(0x85))/0x8)+parseInt(_0x2fa88a(0x86))/0x9*(-parseInt(_0x2fa88a(0x8e))/0xa)+-parseInt(_0x2fa88a(0x84))/0xb+parseInt(_0x2fa88a(0x88))/0xc;if(_0x495e71===_0x429f86)break;else _0x358101['push'](_0x358101['shift']());}catch(_0x33f1d7){_0x358101['push'](_0x358101['shift']());}}}(_0x5859,0x41164));import{getToken}from'../utils/keychain.js';import{getFeature,concludeSession}from'../utils/featureApi.js';import{getSessionEntry,shouldShowStopReminder}from'../utils/sessionCache.js';function _0x5859(){const _0xa04b96=['hook:stop','5IqZbUL','status','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','currentSessionId','trackCommandStart','some','KbHcw','verification_in_progress','3306061fLxkqx','448RMYcAq','18WUkPGC','1820472PciffJ','21260640yeTNeg','311197FxlfPX','MDqHm','47159ZLdHVQ','2OjvprG','1041936hMXsAW','2438870AeyQBx','4VCfNBF','sessionId','trackCommandEnd','featureId','log'];_0x5859=function(){return _0xa04b96;};return _0x5859();}function _0xd63f(_0x5ef4d3,_0x28624c){_0x5ef4d3=_0x5ef4d3-0x81;const _0x58592a=_0x5859();let _0xd63f4d=_0x58592a[_0x5ef4d3];return _0xd63f4d;}import{getEnabledHookContext}from'./output.js';import{createTelemetryCollector}from'../utils/telemetry.js';export async function stopHook(_0x57d250){const _0x551e61=_0xd63f,_0x256e07={'UUOsW':function(_0x3911db,_0x237910,_0x3c418e,_0x1f29fe){return _0x3911db(_0x237910,_0x3c418e,_0x1f29fe);},'RNnji':function(_0x5dccd4,_0x358ac7){return _0x5dccd4(_0x358ac7);},'MDqHm':function(_0x3b6290,_0x14e263,_0x5cfc80,_0x30f6cd){return _0x3b6290(_0x14e263,_0x5cfc80,_0x30f6cd);}},_0x3b9bbd=await getEnabledHookContext(_0x57d250),_0x13f2cd=_0x3b9bbd?.[_0x551e61(0x90)]??null;let _0x4fbd81=!![];if(!_0x13f2cd){await _0x256e07['UUOsW'](trackStop,_0x13f2cd,![],_0x4fbd81);return;}try{const _0x497f9e=_0x256e07['RNnji'](getSessionEntry,_0x13f2cd);if(!_0x497f9e){await trackStop(_0x13f2cd,!![],_0x4fbd81);return;}const _0x40d5f0=await getToken(),_0x1e17b1='https://dashboard.ranger.net/features/'+_0x497f9e[_0x551e61(0x92)];let _0x56d5a1=null,_0x5e1761=![],_0x846f81=![];if(_0x40d5f0)try{const _0x401e58=await getFeature(_0x497f9e[_0x551e61(0x92)]);_0x56d5a1=_0x401e58[_0x551e61(0x98)]??null;const _0x39791=_0x401e58['checklistItems']['filter'](_0x75c296=>_0x75c296[_0x551e61(0x90)]===_0x56d5a1);_0x5e1761=_0x39791[_0x551e61(0x81)](_0x461d98=>_0x461d98['status']!=='verified'&&_0x461d98['status']!=='blocked'&&_0x461d98[_0x551e61(0x96)]!=='closed'&&_0x461d98[_0x551e61(0x96)]!=='incomplete'),_0x846f81=_0x39791[_0x551e61(0x81)](_0x3c2299=>_0x3c2299[_0x551e61(0x96)]===_0x551e61(0x83));}catch{}if(_0x40d5f0&&_0x56d5a1&&_0x5e1761){if(!_0x846f81&&shouldShowStopReminder(_0x13f2cd)){const _0x3b5216={'hookSpecificOutput':{'hookEventName':'Stop','additionalContext':_0x551e61(0x97)+_0x1e17b1}};console[_0x551e61(0x93)](JSON['stringify'](_0x3b5216));}}if(_0x40d5f0&&_0x56d5a1&&!_0x5e1761)try{await concludeSession(_0x497f9e['featureId'],_0x56d5a1);}catch{}await _0x256e07[_0x551e61(0x8a)](trackStop,_0x13f2cd,!![],_0x4fbd81);return;}catch{await trackStop(_0x13f2cd,!![],_0x4fbd81);return;}}async function trackStop(_0x300343,_0x469b3a,_0x26add9){const _0xf69bb1=_0xd63f,_0x252567={'BDAKN':_0xf69bb1(0x94),'KbHcw':function(_0x4d3fcd,_0x14be23){return _0x4d3fcd??_0x14be23;}};try{const _0xe18769=createTelemetryCollector(_0x252567['BDAKN']);await _0xe18769[_0xf69bb1(0x99)]({'sessionId':_0x252567[_0xf69bb1(0x82)](_0x300343,undefined),'hooksEnabled':_0x469b3a,'stopAllowed':_0x26add9}),await _0xe18769[_0xf69bb1(0x91)]('success');}catch{}}
@@ -1 +1 @@
1
- (function(_0x3e45e9,_0x3f577f){var _0x35c7=_0x559d,_0x34be64=_0x3e45e9();while(!![]){try{var _0x3ec669=parseInt(_0x35c7(0x68))/0x1*(-parseInt(_0x35c7(0x71))/0x2)+parseInt(_0x35c7(0x6c))/0x3+-parseInt(_0x35c7(0x70))/0x4*(-parseInt(_0x35c7(0x72))/0x5)+-parseInt(_0x35c7(0x6e))/0x6*(parseInt(_0x35c7(0x69))/0x7)+parseInt(_0x35c7(0x66))/0x8*(parseInt(_0x35c7(0x6d))/0x9)+-parseInt(_0x35c7(0x67))/0xa*(parseInt(_0x35c7(0x6b))/0xb)+-parseInt(_0x35c7(0x6f))/0xc*(-parseInt(_0x35c7(0x6a))/0xd);if(_0x3ec669===_0x3f577f)break;else _0x34be64['push'](_0x34be64['shift']());}catch(_0x52030e){_0x34be64['push'](_0x34be64['shift']());}}}(_0x5e6f,0xd4c74));export{addEnv}from'./addEnv.js';export{clean}from'./clean.js';export{login}from'./login.js';export{start,ensureLocalEnv,ensureChromium,authenticate}from'./start.js';export{useEnv}from'./useEnv.js';export{updateEnv}from'./updateEnv.js';function _0x559d(_0x1c2b2f,_0x5614e6){_0x1c2b2f=_0x1c2b2f-0x66;var _0x5e6f8a=_0x5e6f();var _0x559dcc=_0x5e6f8a[_0x1c2b2f];return _0x559dcc;}export{update}from'./update.js';export{skillup}from'./skillup.js';export{envList}from'./env.js';function _0x5e6f(){var _0x54b74c=['4416269ZtLyOR','925991krjiVL','300480hYKlTy','12544353oEWdZm','6bBmppe','24ixayqD','1124VbYaLU','1699442UvmhAr','8685ElbuBL','8IDBsYL','10aCLwha','2SpxWix','44359eKVtAb'];_0x5e6f=function(){return _0x54b74c;};return _0x5e6f();}export{hook}from'./hook.js';export{setupCi}from'./setupCi.js';export{migrateProfile}from'./migrateProfile.js';
1
+ function _0x3745(_0x5c68ba,_0x5ede38){_0x5c68ba=_0x5c68ba-0x1e4;var _0x38e363=_0x38e3();var _0x374503=_0x38e363[_0x5c68ba];return _0x374503;}(function(_0xe26d7d,_0x12b73f){var _0x3b9f9d=_0x3745,_0xa5b6a8=_0xe26d7d();while(!![]){try{var _0x331b0b=parseInt(_0x3b9f9d(0x1ea))/0x1*(parseInt(_0x3b9f9d(0x1e5))/0x2)+parseInt(_0x3b9f9d(0x1e9))/0x3+-parseInt(_0x3b9f9d(0x1e7))/0x4*(parseInt(_0x3b9f9d(0x1e8))/0x5)+-parseInt(_0x3b9f9d(0x1ed))/0x6+parseInt(_0x3b9f9d(0x1e4))/0x7+parseInt(_0x3b9f9d(0x1e6))/0x8+parseInt(_0x3b9f9d(0x1ec))/0x9*(-parseInt(_0x3b9f9d(0x1eb))/0xa);if(_0x331b0b===_0x12b73f)break;else _0xa5b6a8['push'](_0xa5b6a8['shift']());}catch(_0x47294e){_0xa5b6a8['push'](_0xa5b6a8['shift']());}}}(_0x38e3,0xa6fef));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';function _0x38e3(){var _0xcb24b0=['4YDcfoS','417265wmkFwE','2055336TEvgdQ','221qnlcdL','9769590CspObB','27ZcvYfO','14460DNSyBH','7238364pCRBEc','8822UBbjnF','8054080eragBc'];_0x38e3=function(){return _0xcb24b0;};return _0x38e3();}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';