@ranger-testing/ranger-cli 2.5.4-alpha.8c24bb2-15 → 2.5.4-alpha.9360c2a-16
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.
- package/build/cli.js +1 -1
- package/build/commands/addEnv.js +1 -1
- package/build/commands/authEncrypt.js +1 -1
- package/build/commands/clean.js +1 -1
- package/build/commands/config.js +1 -1
- package/build/commands/env.js +1 -1
- package/build/commands/feature.js +1 -1
- package/build/commands/hook.js +1 -1
- package/build/commands/hooks/autoPrompt.js +1 -1
- package/build/commands/hooks/disable.js +1 -1
- package/build/commands/hooks/enable.js +1 -1
- package/build/commands/hooks/exitPlanMode.js +1 -1
- package/build/commands/hooks/index.js +1 -1
- package/build/commands/hooks/output.js +1 -1
- package/build/commands/hooks/planReminder.js +1 -1
- package/build/commands/hooks/planStart.js +1 -1
- package/build/commands/hooks/postEdit.js +1 -1
- package/build/commands/hooks/preCompact.js +1 -1
- package/build/commands/hooks/sessionEnd.js +1 -1
- package/build/commands/hooks/sessionStart.js +1 -1
- package/build/commands/hooks/stopHook.js +1 -1
- package/build/commands/index.js +1 -1
- package/build/commands/login.js +1 -1
- package/build/commands/mcpBootstrap.js +1 -1
- package/build/commands/migrateProfile.js +1 -1
- package/build/commands/setup/claude.js +1 -1
- package/build/commands/setup/opencode.js +1 -1
- package/build/commands/setupCi.js +1 -1
- package/build/commands/skillup.js +1 -1
- package/build/commands/start.js +1 -1
- package/build/commands/status.js +1 -1
- package/build/commands/update.js +1 -1
- package/build/commands/updateEnv.js +1 -1
- package/build/commands/useEnv.js +1 -1
- package/build/commands/utils/activeProfile.js +1 -1
- package/build/commands/utils/agentEnv.js +1 -1
- package/build/commands/utils/browserSessionsApi.js +1 -1
- package/build/commands/utils/claudeConfig.js +1 -1
- package/build/commands/utils/claudeOverrideSettings.js +1 -1
- package/build/commands/utils/claudePlugin.js +1 -1
- package/build/commands/utils/cloudProfile.js +1 -1
- package/build/commands/utils/cloudProfileSession.js +1 -1
- package/build/commands/utils/crypto.js +1 -1
- package/build/commands/utils/desirePathLog.js +1 -1
- package/build/commands/utils/deviceAuth.js +1 -1
- package/build/commands/utils/environment.js +1 -1
- package/build/commands/utils/featureApi.js +1 -1
- package/build/commands/utils/fixWebmDuration.js +1 -1
- package/build/commands/utils/gitTracked.js +1 -1
- package/build/commands/utils/keychain.js +1 -1
- package/build/commands/utils/legacyWarning.js +1 -1
- package/build/commands/utils/localAgentInstallationsApi.js +1 -1
- package/build/commands/utils/matchAuthEnvironment.js +1 -1
- package/build/commands/utils/mcpImageBase64.js +1 -1
- package/build/commands/utils/model.js +1 -1
- package/build/commands/utils/opencodeConfig.js +1 -1
- package/build/commands/utils/playwrightCli.js +1 -1
- package/build/commands/utils/profileMessages.js +1 -1
- package/build/commands/utils/profileSetupBanner.js +1 -1
- package/build/commands/utils/projectsConfig.js +1 -1
- package/build/commands/utils/rangerConfig.js +1 -1
- package/build/commands/utils/rangerRoot.js +1 -1
- package/build/commands/utils/resolveProfileContext.js +1 -1
- package/build/commands/utils/resolveProfileUrl.js +1 -1
- package/build/commands/utils/retry.js +1 -1
- package/build/commands/utils/sessionCache.js +1 -1
- package/build/commands/utils/settings.js +1 -1
- package/build/commands/utils/skillContent.js +1 -1
- package/build/commands/utils/skills.js +1 -1
- package/build/commands/utils/stitchWebmFiles.js +1 -1
- package/build/commands/utils/telemetry.js +1 -1
- package/build/commands/utils/tokenRefresh.js +1 -1
- package/build/commands/utils/traceSnapshotMapper.js +1 -1
- package/build/commands/utils/userApi.js +1 -1
- package/build/commands/utils/version.js +1 -1
- package/build/commands/verifyFeature.js +1 -1
- package/build/commands/verifyFeatureCli.js +1 -1
- package/package.json +3 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
const _0x1aa91e=_0x24b2;(function(_0x5e6c4c,_0x54634b){const _0x49d35d=_0x24b2,_0x2b3ca4=_0x5e6c4c();while(!![]){try{const _0x2ce4eb=parseInt(_0x49d35d(0x1c9))/0x1*(-parseInt(_0x49d35d(0x189))/0x2)+parseInt(_0x49d35d(0x1df))/0x3*(-parseInt(_0x49d35d(0x239))/0x4)+parseInt(_0x49d35d(0x1d5))/0x5+-parseInt(_0x49d35d(0x1a4))/0x6+-parseInt(_0x49d35d(0x207))/0x7*(-parseInt(_0x49d35d(0x1e7))/0x8)+-parseInt(_0x49d35d(0x21d))/0x9+-parseInt(_0x49d35d(0x1a2))/0xa*(-parseInt(_0x49d35d(0x1dd))/0xb);if(_0x2ce4eb===_0x54634b)break;else _0x2b3ca4['push'](_0x2b3ca4['shift']());}catch(_0x283c05){_0x2b3ca4['push'](_0x2b3ca4['shift']());}}}(_0xf350,0x4b27f));import{readFile,writeFile,mkdir}from'fs/promises';import{join}from'path';import{existsSync}from'fs';function _0x24b2(_0x2214dd,_0x453f7a){_0x2214dd=_0x2214dd-0x167;const _0xf35032=_0xf350();let _0x24b2ad=_0xf35032[_0x2214dd];return _0x24b2ad;}import{execSync}from'child_process';import _0x24e748 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=_0x1aa91e(0x1ed),bold=_0x3de9ed=>_0x1aa91e(0x208)+_0x3de9ed+_0x1aa91e(0x1a0);function getGitRepoUrl(){const _0x430611=_0x1aa91e,_0x2f01b0={'bHnDy':_0x430611(0x20a),'HDkld':'github.com/'};try{const _0x71f620=execSync('git\x20remote\x20get-url\x20origin',{'encoding':_0x430611(0x22f),'stdio':[_0x430611(0x20a),_0x2f01b0[_0x430611(0x1b8)],_0x430611(0x20a)]})[_0x430611(0x1f7)]();return _0x71f620['replace'](/\.git$/,'')['replace'](/^git@github\.com:/,_0x2f01b0[_0x430611(0x1fd)])['replace'](/^https?:\/\//,'');}catch{return undefined;}}function getGitBranch(){const _0x90f49d=_0x1aa91e,_0x579111={'LYsZb':function(_0x80740f,_0x221901,_0x2d9f03){return _0x80740f(_0x221901,_0x2d9f03);},'uejtM':_0x90f49d(0x20a)};try{return _0x579111['LYsZb'](execSync,'git\x20rev-parse\x20--abbrev-ref\x20HEAD',{'encoding':'utf-8','stdio':['pipe',_0x579111['uejtM'],_0x579111[_0x90f49d(0x20b)]]})['trim']();}catch{return undefined;}}export async function getActiveFeatureId(){const _0x5c7003=_0x1aa91e,_0x579e99={'wLRPp':function(_0x52849e,_0xf0a7a,_0x5d4483){return _0x52849e(_0xf0a7a,_0x5d4483);},'ofeXo':function(_0x4e802a){return _0x4e802a();},'yReqC':function(_0x51c3cd,_0x210fa4){return _0x51c3cd(_0x210fa4);},'fsXrZ':'utf-8'},_0x552515=_0x579e99[_0x5c7003(0x1d8)](join,_0x579e99[_0x5c7003(0x174)](getRangerDir),ACTIVE_FEATURE_FILE);if(!_0x579e99['yReqC'](existsSync,_0x552515))return null;try{const _0x57ac70=await readFile(_0x552515,_0x579e99['fsXrZ']);return _0x57ac70['trim']()||null;}catch{return null;}}async function setActiveFeatureId(_0x23caf3){const _0x489de9=_0x1aa91e,_0x286de8={'hqIAu':function(_0x26ee8d){return _0x26ee8d();},'pPnvV':function(_0x3d9c61,_0x19af4b,_0x1380eb){return _0x3d9c61(_0x19af4b,_0x1380eb);},'OZINg':function(_0x43f31f,_0x557ecf){return _0x43f31f(_0x557ecf);},'zdsEm':function(_0x4c10e2,_0x18b1ec,_0x567a3c,_0x34bea4){return _0x4c10e2(_0x18b1ec,_0x567a3c,_0x34bea4);}},_0x232c1b=_0x286de8['hqIAu'](getRangerDir),_0x7a7cba=_0x286de8['pPnvV'](join,_0x232c1b,ACTIVE_FEATURE_FILE);!_0x286de8[_0x489de9(0x1c5)](existsSync,_0x232c1b)&&await mkdir(_0x232c1b,{'recursive':!![]}),await _0x286de8[_0x489de9(0x1db)](writeFile,_0x7a7cba,_0x23caf3,_0x489de9(0x22f));}function getProgressDisplay(_0x44c618){const _0x36166e=_0x1aa91e,_0x29c226={'ZllUr':function(_0x7cf22f,_0x5114f4){return _0x7cf22f+_0x5114f4;},'LSbMe':function(_0x1c5a22,_0x3e13e1){return _0x1c5a22/_0x3e13e1;},'GOcbl':function(_0x326267,_0x33625c){return _0x326267-_0x33625c;},'sblSy':function(_0x5750de,_0x54f454){return _0x5750de>_0x54f454;}},_0x396ec3=_0x44c618['verifiedItems']||0x0,_0x50d773=_0x44c618['verificationInProgressItems']||0x0,_0x4f515a=_0x44c618['blockedItems']||0x0,_0x4e3e67=_0x44c618['incompleteItems']||0x0,_0x2a95d6=_0x44c618[_0x36166e(0x22a)]||0x0,_0x3ed735=_0x29c226['ZllUr'](_0x29c226[_0x36166e(0x223)](_0x396ec3+_0x50d773+_0x4f515a,_0x4e3e67),_0x2a95d6);if(_0x3ed735===0x0)return'-';const _0x2844f7=0xa,_0x4602ea=Math['round'](_0x29c226[_0x36166e(0x1d6)](_0x396ec3,_0x3ed735)*_0x2844f7),_0x4315b0=_0x29c226[_0x36166e(0x223)]('█'['repeat'](_0x4602ea),'░'['repeat'](_0x29c226['GOcbl'](_0x2844f7,_0x4602ea))),_0x70c647=[];if(_0x4f515a>0x0)_0x70c647[_0x36166e(0x219)](_0x4f515a+'\x20blocked');if(_0x29c226[_0x36166e(0x241)](_0x4e3e67,0x0))_0x70c647[_0x36166e(0x219)](_0x4e3e67+_0x36166e(0x1b9));if(_0x29c226['sblSy'](_0x50d773,0x0))_0x70c647[_0x36166e(0x219)](_0x50d773+_0x36166e(0x18d));const _0x252f0c=_0x70c647[_0x36166e(0x18b)]>0x0?'\x20('+_0x70c647[_0x36166e(0x180)](',\x20')+')':'';return _0x4315b0+'\x20'+_0x396ec3+'/'+_0x3ed735+'\x20verified'+_0x252f0c;}function getCurrentSessionItems(_0x431cbc,_0x51bdf2){const _0x1b6686=_0x1aa91e;if(!_0x431cbc['currentSessionId'])return _0x51bdf2['filter'](_0x3adba9=>!_0x3adba9[_0x1b6686(0x235)]);return _0x51bdf2['filter'](_0x4f2951=>_0x4f2951['sessionId']===_0x431cbc[_0x1b6686(0x210)]||!_0x4f2951[_0x1b6686(0x235)]);}function displayFeature(_0x1f3b60,_0x553e2c){const _0x49ed70=_0x1aa91e,_0x40286d={'zUIFh':function(_0x5046b8,_0x134549){return _0x5046b8(_0x134549);},'zlgca':function(_0x1f5f74,_0x2c8faa){return _0x1f5f74>_0x2c8faa;},'nYVjK':_0x49ed70(0x226),'LMrXO':function(_0x4ec29b,_0x70f58e){return _0x4ec29b===_0x70f58e;},'DClDe':'verified','UAaGn':function(_0x4e6934,_0x291dea){return _0x4e6934===_0x291dea;},'rBtDk':'verification_in_progress','iRZiQ':function(_0x4ba1d2,_0x376e9f){return _0x4ba1d2>_0x376e9f;},'wyaZe':function(_0x37f1bc,_0x505c9c){return _0x37f1bc!==_0x505c9c;},'ZVnCS':'incomplete','dcxpU':function(_0x2212fb,_0x48c2f1){return _0x2212fb===_0x48c2f1;}};console['log']('\x0a'+_0x1f3b60['name']+'\x20('+_0x1f3b60['dashboardUrl']+')');_0x1f3b60[_0x49ed70(0x1f6)]&&console['log'](_0x49ed70(0x1b3)+_0x40286d[_0x49ed70(0x188)](getProgressDisplay,_0x1f3b60[_0x49ed70(0x1f6)]));_0x1f3b60['description']&&console[_0x49ed70(0x168)](_0x49ed70(0x1ee)+_0x1f3b60['description']);_0x1f3b60[_0x49ed70(0x222)]&&console[_0x49ed70(0x168)]('\x20\x20\x20Repository:\x20'+_0x1f3b60[_0x49ed70(0x222)]);_0x1f3b60[_0x49ed70(0x1ca)]&&console[_0x49ed70(0x168)]('\x20\x20\x20Branch:\x20'+_0x1f3b60['gitBranch']);console[_0x49ed70(0x168)](_0x49ed70(0x22b)+new Date(_0x1f3b60['createdAt'])[_0x49ed70(0x1ff)]());_0x1f3b60['completedAt']&&console['log'](_0x49ed70(0x1d1)+new Date(_0x1f3b60['completedAt'])[_0x49ed70(0x1ff)]());if(_0x553e2c&&_0x40286d[_0x49ed70(0x1e1)](_0x553e2c['length'],0x0)){console[_0x49ed70(0x168)]('\x0a\x20\x20\x20Scenarios:');for(let _0x236b27=0x0;_0x236b27<_0x553e2c[_0x49ed70(0x18b)];_0x236b27++){const _0x3cb160=_0x553e2c[_0x236b27];let _0x5be76f;if(_0x3cb160['status']===_0x40286d['nYVjK']&&_0x40286d['LMrXO'](_0x3cb160['terminalReason'],_0x49ed70(0x243)))_0x5be76f='✅';else{if(_0x3cb160['status']===_0x40286d[_0x49ed70(0x19f)])_0x5be76f='🟢';else{if(_0x3cb160[_0x49ed70(0x1f4)]==='incomplete')_0x5be76f='🟠';else{if(_0x3cb160['status']==='blocked')_0x5be76f='🛑';else{if(_0x3cb160['status']===_0x40286d['nYVjK'])_0x5be76f='⛔';else _0x40286d['UAaGn'](_0x3cb160[_0x49ed70(0x1f4)],_0x40286d[_0x49ed70(0x1a7)])?_0x5be76f='⏳':_0x5be76f='⬜';}}}}const _0x59a090=_0x3cb160['version']>0x1?_0x49ed70(0x21c)+_0x3cb160[_0x49ed70(0x178)]+')':'',_0x13c146=_0x40286d[_0x49ed70(0x1f0)](_0x3cb160['version'],0x1)&&_0x3cb160['parentItemId']&&_0x40286d[_0x49ed70(0x21a)](_0x3cb160[_0x49ed70(0x1f4)],_0x40286d['nYVjK'])&&_0x3cb160[_0x49ed70(0x1f4)]!==_0x40286d['DClDe']?_0x49ed70(0x17a):'';console['log'](_0x49ed70(0x191)+(_0x236b27+0x1)+'.\x20'+_0x5be76f+'\x20'+_0x3cb160[_0x49ed70(0x1b6)]+_0x59a090+_0x13c146);_0x40286d[_0x49ed70(0x247)](_0x3cb160[_0x49ed70(0x1f4)],_0x49ed70(0x23c))&&_0x3cb160[_0x49ed70(0x1ef)]&&console[_0x49ed70(0x168)]('\x20\x20\x20\x20\x20\x20Blocked:\x20'+_0x3cb160['blockedReason']);_0x3cb160[_0x49ed70(0x1f4)]===_0x40286d[_0x49ed70(0x196)]&&_0x3cb160['incompleteReason']&&console['log'](_0x49ed70(0x216)+_0x3cb160[_0x49ed70(0x186)]);if(_0x3cb160['status']===_0x40286d['nYVjK']&&_0x40286d[_0x49ed70(0x247)](_0x3cb160[_0x49ed70(0x22c)],'approved'))console['log'](_0x49ed70(0x173));else _0x40286d['dcxpU'](_0x3cb160['status'],_0x40286d[_0x49ed70(0x16d)])&&_0x3cb160[_0x49ed70(0x1fe)]&&console[_0x49ed70(0x168)](_0x49ed70(0x1e9)+_0x3cb160[_0x49ed70(0x1fe)]);}}}export async function featureCreate(_0x5f38ca,_0x5b336a){const _0x366734=_0x1aa91e,_0x1e7706={'iyhYp':function(_0x3f7312,_0x527318){return _0x3f7312===_0x527318;},'DcfWv':function(_0x9a413a){return _0x9a413a();},'icPdA':function(_0x35eb16,_0xa62170){return _0x35eb16(_0xa62170);},'yWKgD':function(_0x563f21){return _0x563f21();},'pTjxf':'\x0aCreating\x20feature\x20review...','utlvS':function(_0x34b96b,_0xb86320){return _0x34b96b(_0xb86320);}},{envNames:_0x2c8fb2}=await getEnvNames();if(_0x1e7706[_0x366734(0x224)](_0x2c8fb2['length'],0x0)&&!process[_0x366734(0x1c3)]['RANGER_TEST_USERNAME']){let _0x313bba=0x0;try{_0x313bba=(await _0x1e7706[_0x366734(0x17b)](listCloudProfiles))[_0x366734(0x18b)];}catch{_0x313bba=0x1;}_0x313bba===0x0&&console['warn']('\x0a'+_0x1e7706['icPdA'](formatProfileRequiredMessage,_0xcdafeb=>bold(_0xcdafeb)));}const _0xcc14ab=_0x5b336a[_0x366734(0x242)]?_0x5b336a['scenarios'][_0x366734(0x17c)](_0x16c87a=>_0x16c87a['trim']()):[],_0x2cd7ed=_0x1e7706['yWKgD'](getGitRepoUrl),_0x14047f=getGitBranch();console[_0x366734(0x168)](_0x1e7706[_0x366734(0x23a)]);const _0x518538=await _0x1e7706['utlvS'](createFeature,{'name':_0x5f38ca,'description':_0x5b336a[_0x366734(0x1b6)],'checklist':_0xcc14ab,'gitRepoUrl':_0x2cd7ed,'gitBranch':_0x14047f});await _0x1e7706[_0x366734(0x1cc)](setActiveFeatureId,_0x518538['id']),await tryStartCurrentSession(_0x518538['id']);const _0x1c7652=process[_0x366734(0x1c3)]['CLAUDE_SESSION_ID'];_0x1c7652&®isterSession(_0x1c7652,_0x518538['id']),console[_0x366734(0x168)](_0x366734(0x193)+_0x518538['id']),displayFeature(_0x518538,_0x518538[_0x366734(0x1cd)]),console[_0x366734(0x168)]('\x0a➡️\x20\x20Set\x20as\x20active\x20feature\x20review');}export async function featureList(_0xa7938f){const _0x571b3b=_0x1aa91e,_0x197a21={'MIFil':function(_0x454914){return _0x454914();},'aHLSa':function(_0x274b9b,_0x4bca2b){return _0x274b9b>_0x4bca2b;},'BShHS':_0x571b3b(0x20f),'gHxxZ':function(_0x4e1eb1,_0x3bce3a){return _0x4e1eb1(_0x3bce3a);},'czmFr':function(_0x49af90,_0x34fb41){return _0x49af90+_0x34fb41;}},_0x31194b={'limit':_0xa7938f['limit']??0xa,'offset':_0xa7938f[_0x571b3b(0x1be)]??0x0,'includeDeleted':_0xa7938f['includeDeleted']};_0xa7938f['currentBranch']&&(_0x31194b[_0x571b3b(0x222)]=_0x197a21['MIFil'](getGitRepoUrl),_0x31194b['gitBranch']=getGitBranch());const _0xb1ca2a=await listFeatures(_0x31194b);if(_0xb1ca2a['items'][_0x571b3b(0x18b)]===0x0){console[_0x571b3b(0x168)]('\x0aNo\x20feature\x20reviews\x20found.');return;}const _0x20ffa4=_0x197a21['aHLSa'](_0xb1ca2a['totalCount'],_0xb1ca2a[_0x571b3b(0x214)][_0x571b3b(0x18b)])?_0x571b3b(0x1f8)+_0xb1ca2a[_0x571b3b(0x214)][_0x571b3b(0x18b)]+_0x571b3b(0x225)+_0xb1ca2a['totalCount']:_0xb1ca2a['totalCount']+'\x20feature\x20review(s)\x20found';console[_0x571b3b(0x168)]('\x0a'+_0x20ffa4+':\x0a');for(const _0xb0ed7b of _0xb1ca2a['items']){const _0x1e9954=_0x197a21['BShHS'][_0x571b3b(0x1bb)]('|');let _0x2eb248=0x0;while(!![]){switch(_0x1e9954[_0x2eb248++]){case'0':console[_0x571b3b(0x168)]('');continue;case'1':console[_0x571b3b(0x168)](_0x571b3b(0x22b)+new Date(_0xb0ed7b[_0x571b3b(0x240)])[_0x571b3b(0x1c6)]());continue;case'2':_0xb0ed7b['gitBranch']&&console['log']('\x20\x20\x20Branch:\x20'+_0xb0ed7b['gitBranch']);continue;case'3':console['log']('\x20\x20\x20ID:\x20'+_0xb0ed7b['id']);continue;case'4':_0xb0ed7b['stats']&&console['log'](_0x571b3b(0x1b3)+_0x197a21[_0x571b3b(0x169)](getProgressDisplay,_0xb0ed7b[_0x571b3b(0x1f6)]));continue;case'5':console[_0x571b3b(0x168)](''+_0xb0ed7b[_0x571b3b(0x16a)]);continue;}break;}}const _0x4396ce=_0x31194b[_0x571b3b(0x17d)]??0xa,_0x36549b=_0x197a21['czmFr'](_0x31194b[_0x571b3b(0x1be)]??0x0,_0xb1ca2a['items'][_0x571b3b(0x18b)]);if(_0x36549b<_0xb1ca2a[_0x571b3b(0x229)]){const _0x1b5ffe=_0x4396ce!==0xa?_0x571b3b(0x1e6)+_0x4396ce:'',_0x5acc42=_0xa7938f[_0x571b3b(0x215)]?'\x20--current-branch':'',_0x11005e=_0xa7938f['includeDeleted']?_0x571b3b(0x1ea):'';console['log']('Next\x20page:\x20ranger\x20list\x20--offset\x20'+_0x36549b+_0x1b5ffe+_0x5acc42+_0x11005e);}}export async function featureShow(_0xad52e4){const _0x1aa6a3=_0x1aa91e,_0x2ada67={'Yadqi':_0x1aa6a3(0x1e2),'OUqBU':function(_0x2e0c1,_0x16374a,_0x7b4c0a){return _0x2e0c1(_0x16374a,_0x7b4c0a);}},_0x4b655c=_0xad52e4||await getActiveFeatureId();if(!_0x4b655c)throw new Error(_0x2ada67['Yadqi']);const _0x467577=await getFeature(_0x4b655c);_0x2ada67['OUqBU'](displayFeature,_0x467577,_0x467577[_0x1aa6a3(0x1cd)]);}export async function featureResume(_0x2db0b3){const _0x18f469=_0x1aa91e,_0x29273f={'MZRXO':function(_0x3c804d,_0x1fcab3){return _0x3c804d(_0x1fcab3);},'CPrDl':function(_0x29bde5,_0x4811d7,_0x20e677){return _0x29bde5(_0x4811d7,_0x20e677);},'LvLWl':function(_0x5f33e3,_0x42d3d8){return _0x5f33e3(_0x42d3d8);},'SFvZd':'Not\x20in\x20a\x20git\x20repository.','XjHSK':function(_0x1f8267,_0x379f74){return _0x1f8267===_0x379f74;},'adjAC':'Please\x20specify\x20the\x20feature\x20review\x20ID:\x20ranger\x20resume\x20<id>','hRKII':'Multiple\x20feature\x20reviews\x20found.\x20Select\x20one:','ayqlv':function(_0x31f3d1,_0x2ffe2b,_0xfc8a9a){return _0x31f3d1(_0x2ffe2b,_0xfc8a9a);},'UVivx':function(_0x1c6620,_0x199aa8,_0x508b66){return _0x1c6620(_0x199aa8,_0x508b66);}};if(_0x2db0b3){const _0x16ed32=await _0x29273f[_0x18f469(0x167)](getFeature,_0x2db0b3);await setActiveFeatureId(_0x16ed32['id']);const _0xd1d561=getGitBranch();_0xd1d561&&_0xd1d561!==_0x16ed32['gitBranch']&&(await updateFeature(_0x16ed32['id'],{'gitBranch':_0xd1d561}),console['log']('\x20\x20\x20Updated\x20branch\x20to:\x20'+_0xd1d561));console['log']('\x0a✅\x20Resumed\x20feature\x20review:\x20'+_0x16ed32[_0x18f469(0x16a)]+'\x20('+_0x16ed32['id']+')'),await _0x29273f['MZRXO'](tryStartCurrentSession,_0x16ed32['id']);const _0xb6e0d2=process['env']['CLAUDE_SESSION_ID'];_0xb6e0d2&®isterSession(_0xb6e0d2,_0x16ed32['id']);_0x29273f[_0x18f469(0x232)](displayFeature,_0x16ed32,_0x16ed32[_0x18f469(0x1cd)]),await _0x29273f['LvLWl'](printFeedbackNudge,_0x16ed32['id']);return;}const _0x249fa0=getGitRepoUrl(),_0x511c7d=getGitBranch();if(!_0x249fa0&&!_0x511c7d)throw new Error(_0x29273f['SFvZd']);console[_0x18f469(0x168)]('\x0aSearching\x20for\x20feature\x20reviews\x20matching:\x20'+(_0x249fa0||_0x18f469(0x1e8))+_0x18f469(0x181)+(_0x511c7d||_0x18f469(0x1e8))+_0x18f469(0x1cf));const _0x507cae=await listFeatures({'gitRepoUrl':_0x249fa0,'gitBranch':_0x511c7d}),_0x5dcf37=_0x507cae[_0x18f469(0x214)][_0x18f469(0x1eb)](_0x74c376=>_0x74c376['status']?_0x74c376['status']!=='verified':!_0x74c376['completedAt']);if(_0x29273f[_0x18f469(0x183)](_0x5dcf37['length'],0x0)){console[_0x18f469(0x168)](_0x18f469(0x205)),console[_0x18f469(0x168)]('Run:\x20ranger\x20create\x20\x22<name>\x22\x20to\x20create\x20a\x20new\x20feature\x20review');return;}let _0x479864;if(_0x5dcf37['length']===0x1)_0x479864=_0x5dcf37[0x0];else{const _0x512474=process['stdin'][_0x18f469(0x1e5)]&&process['stdout'][_0x18f469(0x1e5)];if(!_0x512474){console[_0x18f469(0x168)](_0x18f469(0x182));for(const _0x2604d7 of _0x5dcf37){console[_0x18f469(0x168)]('\x20\x20'+_0x2604d7[_0x18f469(0x16a)]),console['log'](_0x18f469(0x1c8)+_0x2604d7['id']),_0x2604d7[_0x18f469(0x1f6)]&&console[_0x18f469(0x168)]('\x20\x20\x20\x20\x20Progress:\x20'+_0x29273f['MZRXO'](getProgressDisplay,_0x2604d7[_0x18f469(0x1f6)])),_0x2604d7[_0x18f469(0x1ca)]&&console['log']('\x20\x20\x20\x20\x20Branch:\x20'+_0x2604d7[_0x18f469(0x1ca)]);}throw new Error(_0x29273f['adjAC']);}const {selected:_0x1447ae}=await _0x24e748['prompt']([{'type':'list','name':_0x18f469(0x203),'message':_0x29273f['hRKII'],'choices':_0x5dcf37['map'](_0x2ae297=>({'name':_0x2ae297[_0x18f469(0x16a)]+'\x20('+_0x2ae297['id']+')','value':_0x2ae297['id']}))}]);_0x479864=_0x5dcf37['find'](_0x5ee6e3=>_0x5ee6e3['id']===_0x1447ae);}await setActiveFeatureId(_0x479864['id']);_0x511c7d&&_0x511c7d!==_0x479864[_0x18f469(0x1ca)]&&(await _0x29273f[_0x18f469(0x217)](updateFeature,_0x479864['id'],{'gitBranch':_0x511c7d}),console['log'](_0x18f469(0x1bd)+_0x511c7d));console['log'](_0x18f469(0x17e)+_0x479864['name']+'\x20('+_0x479864['id']+')'),await _0x29273f[_0x18f469(0x167)](tryStartCurrentSession,_0x479864['id']);const _0x404815=await getFeature(_0x479864['id']),_0x13658b=process[_0x18f469(0x1c3)]['CLAUDE_SESSION_ID'];_0x13658b&&_0x29273f['UVivx'](registerSession,_0x13658b,_0x404815['id']),_0x29273f['ayqlv'](displayFeature,_0x404815,_0x404815['checklistItems']),await printFeedbackNudge(_0x404815['id']);}async function printFeedbackNudge(_0x18577b){const _0x166a12=_0x1aa91e,_0x15d1a9={'xVSUO':function(_0x6536b9,_0x22237c){return _0x6536b9(_0x22237c);},'ZWNez':function(_0xd5982b,_0x5f0924){return _0xd5982b>_0x5f0924;},'TPCja':'\x20\x20\x20Run\x20`ranger\x20get-review`\x20to\x20see\x20what\x20needs\x20to\x20be\x20fixed.'};try{const {items:_0x7927d9}=await _0x15d1a9['xVSUO'](getActionItems,_0x18577b);let _0x5075c4=0x0,_0x146c32=0x0;for(const _0x3bf83a of _0x7927d9){const _0x1cda16=await getItemFeedback(_0x18577b,_0x3bf83a['id']);_0x15d1a9[_0x166a12(0x1dc)](_0x1cda16['unaddressedComments']['length'],0x0)&&(_0x5075c4+=_0x1cda16['unaddressedComments']['length'],_0x146c32++);}_0x15d1a9['ZWNez'](_0x5075c4,0x0)&&(console[_0x166a12(0x168)]('\x0a⚠️\x20\x20'+_0x5075c4+'\x20unaddressed\x20reviewer\x20comment(s)\x20across\x20'+_0x146c32+'\x20scenario(s).'),console['log'](_0x15d1a9[_0x166a12(0x194)]));}catch{}}function _0xf350(){const _0x2a31fa=['ZllUr','iyhYp','\x20of\x20','closed','riXqq','IpESt','totalCount','pendingItems','\x20\x20\x20Created:\x20','terminalReason','stdout','DBdWR','utf-8','IvJRP','\x0a❌\x20Cannot\x20edit\x20scenario:\x20feature\x20review\x20has\x20an\x20active\x20review.','CPrDl','lgUCs','xWPMl','sessionId','get','upvIh','/api/v1/mcp/browser-sessions/','4CgGejy','pTjxf','toFixed','blocked','completed','output','JeIeD','createdAt','sblSy','scenarios','approved','type','.md','write','UAaGn','stepName','MZRXO','log','gHxxZ','name','screenshotUrls','bVQjX','nYVjK','iteration','slice','\x0aGenerating\x20report...','Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','exit','\x20\x20\x20\x20\x20\x20Approved','ofeXo','assets','OGwgS','submittedAt','version','feedback-images','\x20[has\x20reviewer\x20feedback]','DcfWv','map','limit','\x0a✅\x20Resumed\x20feature\x20review:\x20','TVAMl','join','\x20/\x20','\x0aNon-interactive\x20mode\x20detected.\x20Multiple\x20feature\x20reviews\x20found:','XjHSK','CysfI','after','incompleteReason','find','zUIFh','22uiTDlb','No\x20scenarios\x20found.','length','\x0a✅\x20Scenario\x20updated','\x20in\x20progress','YOZGc','\x0aConcluding\x20session...','scenario','\x20\x20\x20','usoTq','\x0a✅\x20Feature\x20review\x20created:\x20','TPCja','json','ZVnCS','browserSessionId','\x20\x20\x20\x20','DtMXN','.\x20Feature\x20review\x20has\x20','\x20unaddressed\x20comment(s)','content','\x0a❌\x20No\x20scenario\x20number\x20provided.\x20Use\x20--scenario\x20<number>.','domRef','DClDe','\x1b[0m','zjfuj','582790zUSOUm','dYTYP','1364718TbvmNc','rJbLv','all','rBtDk','numeric','RWOPL','yNsyq','.png','from','short','completedAt','replace','cGWHD','textContent','pywZP','\x20\x20\x20Progress:\x20','KYdqb','\x20Session\x20','description','VVceJ','bHnDy','\x20incomplete','reports','split','\x20at\x20[','\x20\x20\x20Updated\x20branch\x20to:\x20','offset','error','TlWwT','blrpV','pop','env','\x0aAvailable\x20scenarios:','OZINg','toLocaleDateString','lXnGK','\x20\x20\x20\x20\x20ID:\x20','21739KDimxh','gitBranch','\x0a❌\x20No\x20scenarios\x20found\x20to\x20edit.','icPdA','checklistItems','Unknown','...','Scenario\x20','\x20\x20\x20Completed:\x20','/artifacts/','\x0a❌\x20Invalid\x20scenario\x20number(s):\x20','\x0a❌\x20Invalid\x20scenario\x20index:\x20','1774625lXmqOo','LSbMe','Please\x20finish\x20your\x20review\x20first:','wLRPp','dashboardUrl','VAdDS','zdsEm','ZWNez','143iKqUAd','vprdP','1152939wqCmEo','coordinates','zlgca','No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','SCIYi','kJMvP','isTTY','\x20--limit\x20','8JCavER','any','\x20\x20\x20\x20\x20\x20Cancelled:\x20','\x20--include-deleted','filter','linkedSession','active-feature.txt','\x20\x20\x20Description:\x20','blockedReason','iRZiQ','QbQyT','has','assetType','status','selector','stats','trim','Showing\x20','rRWvi','notes','\x0a❌\x20No\x20scenarios\x20found\x20to\x20include.','amjGB','HDkld','canceledReason','toLocaleString','Step\x20','storage','FKaYu','selected','No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.','\x0aNo\x20matching\x20active\x20feature\x20reviews\x20found.','wzTmM','1045597YUKbnh','\x1b[1m','\x20concluded.','pipe','uejtM','Current\x20session\x20not\x20found.','\x20\x20\x20\x20\x20🎯\x20Element:\x20<','spatial','5|3|4|2|1|0','currentSessionId','in_progress','mxKaK','SgCim','items','currentBranch','\x20\x20\x20\x20\x20\x20Incomplete:\x20','ayqlv','\x20\x20✅\x20No\x20feedback\x20to\x20address','push','wyaZe','npVKH','\x20(v','928701tvxJQC','agentResponse','\x20\x20\x20To\x20restore\x20it,\x20run:\x20ranger\x20restore\x20','authorName','unaddressedComments','gitRepoUrl'];_0xf350=function(){return _0x2a31fa;};return _0xf350();}async function tryStartCurrentSession(_0xc634bc){const _0x1fddd9=_0x1aa91e,_0x1f2464={'rJbLv':function(_0x45a577,_0x4e8dc8){return _0x45a577(_0x4e8dc8);}};try{const {sessions:_0x5921ca}=await _0x1f2464[_0x1fddd9(0x1a5)](listFeatureSessions,_0xc634bc),_0x2f7d6c=_0x5921ca[_0x1fddd9(0x187)](_0x102b84=>_0x102b84['status']==='ready');_0x2f7d6c&&(await startSession(_0xc634bc,_0x2f7d6c['id']),console['log']('\x20\x20\x20▶️\x20Started\x20session\x20'+_0x2f7d6c['iteration']));}catch{}}export async function featureReport(_0x23ba56,_0x2ec276){const _0x2e4160=_0x1aa91e,_0xf59c2f={'QbQyT':function(_0x2c3ab3){return _0x2c3ab3();},'JeIeD':'No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.','nXnES':_0x2e4160(0x170),'amjGB':_0x2e4160(0x1ba),'dYTYP':function(_0x20b2b0,_0x40edf5,_0x59e101){return _0x20b2b0(_0x40edf5,_0x59e101);},'uttOJ':function(_0x2b00c0,_0x5636d5){return _0x2b00c0(_0x5636d5);},'WzWvg':function(_0x348820,_0x5033a4,_0x2948db){return _0x348820(_0x5033a4,_0x2948db);},'upvIh':function(_0x583b7e,_0x89b69b,_0x3319de,_0x2bb03f){return _0x583b7e(_0x89b69b,_0x3319de,_0x2bb03f);}},_0x1f4fa9=_0x23ba56||await _0xf59c2f[_0x2e4160(0x1f1)](getActiveFeatureId);if(!_0x1f4fa9)throw new Error(_0xf59c2f[_0x2e4160(0x23f)]);console[_0x2e4160(0x168)](_0xf59c2f['nXnES']);const _0x278b3b=await getFeatureReportMarkdown(_0x1f4fa9,{'style':_0x2ec276['style']}),_0x5ae248=_0x2ec276[_0x2e4160(0x23e)]||join(getRangerDir(),_0xf59c2f[_0x2e4160(0x1fc)],_0x1f4fa9+_0x2e4160(0x245)),_0x1f9a0c=_0xf59c2f[_0x2e4160(0x1a3)](join,_0x5ae248,'..');!_0xf59c2f['uttOJ'](existsSync,_0x1f9a0c)&&await _0xf59c2f['WzWvg'](mkdir,_0x1f9a0c,{'recursive':!![]}),await _0xf59c2f[_0x2e4160(0x237)](writeFile,_0x5ae248,_0x278b3b,'utf-8'),console[_0x2e4160(0x168)]('\x0a✅\x20Report\x20generated:\x20'+_0x5ae248);}function getScenarioResult(_0x1c5ff7){const _0x2cb734=_0x1aa91e,_0x49a874={'Eflgv':function(_0xfce401,_0x3b6984){return _0xfce401===_0x3b6984;},'Nfypz':'closed','ukPbp':'verification_in_progress'};if(_0x49a874['Eflgv'](_0x1c5ff7['status'],_0x49a874['Nfypz']))return _0x1c5ff7[_0x2cb734(0x22c)]??_0x2cb734(0x226);if(_0x1c5ff7[_0x2cb734(0x1f4)]===_0x49a874['ukPbp'])return'in_progress';return _0x1c5ff7[_0x2cb734(0x1f4)];}function getScenarioRationale(_0x2ee7bf,_0x2c1e9a){const _0x53f9e1=_0x1aa91e;if(_0x2c1e9a)return _0x2c1e9a;if(_0x2ee7bf[_0x53f9e1(0x1ef)])return _0x2ee7bf['blockedReason'];if(_0x2ee7bf[_0x53f9e1(0x186)])return _0x2ee7bf['incompleteReason'];if(_0x2ee7bf['canceledReason'])return _0x2ee7bf['canceledReason'];if(_0x2ee7bf[_0x53f9e1(0x1fa)])return _0x2ee7bf['notes'];return null;}export async function featureReportPrDescription(_0x5dd64b,_0x3100f5){const _0x5bacb6=_0x1aa91e,_0x42eef8={'rRWvi':function(_0x19c0ac){return _0x19c0ac();},'yFFsg':'No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.','CysfI':function(_0x480a96,_0x1ed622){return _0x480a96(_0x1ed622);},'TlWwT':function(_0x4142a6,_0xbe4763,_0x215473){return _0x4142a6(_0xbe4763,_0x215473);},'pywZP':function(_0x5c7ed8,_0x1cbe9f){return _0x5c7ed8===_0x1cbe9f;},'sygGX':function(_0x1c797f,_0x349153){return _0x1c797f>_0x349153;},'mxKaK':'\x0aAvailable\x20scenarios:','IvJRP':function(_0x249fae,_0x187d32){return _0x249fae<_0x187d32;},'npVKH':function(_0x4cc5f2,_0x1b8e65,_0x1547bc,_0x4480ce){return _0x4cc5f2(_0x1b8e65,_0x1547bc,_0x4480ce);}},_0x1ed268=_0x5dd64b||await _0x42eef8[_0x5bacb6(0x1f9)](getActiveFeatureId);if(!_0x1ed268)throw new Error(_0x42eef8['yFFsg']);const _0x1012d1=await _0x42eef8[_0x5bacb6(0x184)](getFeature,_0x1ed268),_0x162fec=_0x1012d1['checklistItems']||[],_0x25ec5e=_0x42eef8[_0x5bacb6(0x1c0)](getCurrentSessionItems,_0x1012d1,_0x162fec);_0x42eef8[_0x5bacb6(0x1b2)](_0x25ec5e['length'],0x0)&&(console[_0x5bacb6(0x1bf)](_0x5bacb6(0x1fb)),process['exit'](0x1));const _0x32c479=_0x3100f5['excludeScenarios']??[],_0x5c25c1=_0x32c479[_0x5bacb6(0x1eb)](_0x2cd1ee=>!Number['isInteger'](_0x2cd1ee)||_0x2cd1ee<0x1||_0x2cd1ee>_0x25ec5e[_0x5bacb6(0x18b)]);if(_0x42eef8['sygGX'](_0x5c25c1['length'],0x0)){console['error'](_0x5bacb6(0x1d3)+_0x5c25c1[_0x5bacb6(0x180)](',\x20')),console['log'](_0x42eef8[_0x5bacb6(0x212)]);for(let _0xb56252=0x0;_0x42eef8[_0x5bacb6(0x230)](_0xb56252,_0x25ec5e[_0x5bacb6(0x18b)]);_0xb56252++){console['log']('\x20\x20'+(_0xb56252+0x1)+'.\x20'+_0x25ec5e[_0xb56252]['description']);}process['exit'](0x1);}const _0x280228=new Set(_0x32c479['map'](_0x2a2e27=>_0x2a2e27-0x1)),_0x307367=_0x25ec5e['filter']((_0x18778a,_0x5e5756)=>!_0x280228[_0x5bacb6(0x1f2)](_0x5e5756));_0x307367['length']===0x0&&(console[_0x5bacb6(0x1bf)]('\x0a❌\x20All\x20scenarios\x20were\x20excluded.'),process['exit'](0x1));if(_0x3100f5[_0x5bacb6(0x195)])await _0x42eef8[_0x5bacb6(0x21b)](outputJsonReport,_0x1ed268,_0x1012d1,_0x307367);else{const _0x5c7f47=await getFeatureReportMarkdown(_0x1ed268,{'itemIds':_0x307367[_0x5bacb6(0x17c)](_0x5114c0=>_0x5114c0['id'])});process['stdout'][_0x5bacb6(0x246)](_0x5c7f47['trimEnd']()+'\x0a');}}async function outputJsonReport(_0x44af4c,_0x1aeda8,_0x5541e5){const _0x6b50=_0x1aa91e,_0x13cba6={'RWOPL':function(_0x25014c,_0x5c7cad){return _0x25014c===_0x5c7cad;},'IpESt':function(_0x363c80,_0x304ab1){return _0x363c80(_0x304ab1);},'dlUqa':function(_0x5f4f57,_0x371840,_0xc668a8){return _0x5f4f57(_0x371840,_0xc668a8);},'zjfuj':function(_0x5a3caa){return _0x5a3caa();},'TVAMl':function(_0x30e560,_0x4f51ef){return _0x30e560(_0x4f51ef);},'vprdP':function(_0x195319,_0x338768){return _0x195319+_0x338768;}},_0xb22b16=_0x13cba6[_0x6b50(0x1a1)](getApiBaseUrl),_0x58e928=await _0x13cba6[_0x6b50(0x17f)](getFeatureReport,_0x44af4c),_0x4760aa=new Map(_0x58e928[_0x6b50(0x1cd)][_0x6b50(0x17c)](_0x52d3e7=>[_0x52d3e7['id'],_0x52d3e7])),_0x5dce13=await Promise[_0x6b50(0x1a6)](_0x5541e5[_0x6b50(0x17c)](async _0x105ae6=>{const _0x3cdac1=_0x6b50,_0x20e9d6=_0x4760aa[_0x3cdac1(0x236)](_0x105ae6['id']),_0x545666=_0x20e9d6?.[_0x3cdac1(0x1ec)]??null;let _0x223380=[];if(_0x105ae6[_0x3cdac1(0x197)])try{const {steps:_0x6575f5}=await getBrowserSessionSteps(_0x105ae6['browserSessionId']);_0x6575f5['length']>0x0&&(_0x223380=_0x6575f5[_0x3cdac1(0x17c)](_0x29e367=>{const _0x2702bc=_0x3cdac1,_0x3eca98=_0x29e367[_0x2702bc(0x175)][_0x2702bc(0x187)](_0x29140b=>_0x29140b['assetType']==='screenshot'&&_0x29140b['timing']===_0x2702bc(0x185))??_0x29e367['assets']['find'](_0x427a8e=>_0x427a8e[_0x2702bc(0x1f3)]==='screenshot');let _0x43cd80=null,_0x274d67=null;if(_0x3eca98){const _0x1d1f6f=_0x3eca98[_0x2702bc(0x201)]['location']['split']('/')[_0x2702bc(0x1c2)]();_0x43cd80=_0xb22b16+_0x2702bc(0x238)+_0x105ae6[_0x2702bc(0x197)]+_0x2702bc(0x1d2)+_0x1d1f6f,_0x1d1f6f&&(_0x274d67=_0x1d1f6f[_0x2702bc(0x1af)](/\.\w+$/,'')[_0x2702bc(0x1af)](/^(key_)?\d+_/,'')['replace'](/[-_]/g,'\x20'));}return{'description':_0x274d67||_0x29e367[_0x2702bc(0x1b6)]||_0x29e367[_0x2702bc(0x248)]||_0x2702bc(0x200)+_0x29e367['position'],'screenshot':_0x43cd80,'is_key_step':_0x29e367['isKeyStep']};}));}catch{}return _0x13cba6[_0x3cdac1(0x1a9)](_0x223380['length'],0x0)&&_0x545666?.[_0x3cdac1(0x16b)]&&(_0x223380=_0x545666['screenshotUrls'][_0x3cdac1(0x17c)]((_0x3f0e80,_0x36eaa1)=>({'description':'Screenshot\x20'+(_0x36eaa1+0x1),'screenshot':_0x3f0e80,'is_key_step':![]}))),{'description':_0x105ae6['description'],'result':_0x13cba6[_0x3cdac1(0x228)](getScenarioResult,_0x105ae6),'rationale':_0x13cba6['dlUqa'](getScenarioRationale,_0x105ae6,_0x545666?.[_0x3cdac1(0x21e)]),'steps':_0x223380};})),_0x2ca5bc={'url':_0x1aeda8[_0x6b50(0x1d9)],'scenarios':_0x5dce13};process[_0x6b50(0x22d)][_0x6b50(0x246)](_0x13cba6[_0x6b50(0x1de)](JSON['stringify'](_0x2ca5bc,null,0x2),'\x0a'));}export async function featureConcludeSession(_0x3787f8){const _0x5b21c0=_0x1aa91e,_0x20ce67={'ZNamf':function(_0x2586aa){return _0x2586aa();},'VAdDS':function(_0x4eab77,_0x2b23da){return _0x4eab77(_0x2b23da);},'yNsyq':function(_0x457161,_0x5fd331){return _0x457161!==_0x5fd331;},'riXqq':'in_progress','PnXNC':function(_0xc6d73f,_0x452986,_0x51d6e2){return _0xc6d73f(_0x452986,_0x51d6e2);}},_0x275009=_0x3787f8||await _0x20ce67['ZNamf'](getActiveFeatureId);if(!_0x275009)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 _0x18a2d9=await getFeature(_0x275009);if(!_0x18a2d9[_0x5b21c0(0x210)])throw new Error('No\x20active\x20session\x20for\x20this\x20feature\x20review.');const {sessions:_0x4d6ed3}=await _0x20ce67[_0x5b21c0(0x1da)](listFeatureSessions,_0x275009),_0xae3fc8=_0x4d6ed3['find'](_0xf46a78=>_0xf46a78['id']===_0x18a2d9['currentSessionId']);if(!_0xae3fc8)throw new Error(_0x5b21c0(0x20c));if(_0xae3fc8[_0x5b21c0(0x1f4)]===_0x5b21c0(0x23d)){console[_0x5b21c0(0x168)]('\x0a✅\x20Session\x20is\x20already\x20completed.');return;}if(_0x20ce67[_0x5b21c0(0x1aa)](_0xae3fc8[_0x5b21c0(0x1f4)],_0x20ce67[_0x5b21c0(0x227)]))throw new Error('Cannot\x20conclude\x20session\x20with\x20status:\x20'+_0xae3fc8['status']);console[_0x5b21c0(0x168)](_0x5b21c0(0x18f)),await _0x20ce67['PnXNC'](concludeSession,_0x275009,_0x18a2d9[_0x5b21c0(0x210)]),console['log']('\x0a✅\x20Session\x20'+_0xae3fc8[_0x5b21c0(0x16e)]+_0x5b21c0(0x209)),console[_0x5b21c0(0x168)]('\x20\x20\x20The\x20feature\x20review\x20is\x20now\x20ready\x20for\x20human\x20review\x20on\x20the\x20Ranger\x20dashboard.');}export async function featureSessions(_0x479a91){const _0x345e55=_0x1aa91e,_0x5ee9ca={'kEJGy':function(_0x2eec89){return _0x2eec89();},'kJMvP':function(_0x10e518,_0x2cab35){return _0x10e518===_0x2cab35;},'mRCfA':function(_0x69e306,_0x4cd479){return _0x69e306===_0x4cd479;}},_0x58071c=_0x479a91||await _0x5ee9ca['kEJGy'](getActiveFeatureId);if(!_0x58071c)throw new Error(_0x345e55(0x204));const _0x5a5fcd=await getFeature(_0x58071c);console['log']('\x0a📁\x20Sessions\x20for\x20feature\x20review:\x20'+_0x5a5fcd[_0x345e55(0x16a)]+'\x0a');const {sessions:_0x4ba8b0}=await listFeatureSessions(_0x58071c);if(_0x5ee9ca[_0x345e55(0x1e4)](_0x4ba8b0['length'],0x0)){console['log']('No\x20sessions\x20found.');return;}for(const _0x4260ee of _0x4ba8b0){const _0x1af65d=_0x5ee9ca['kJMvP'](_0x4260ee['status'],'completed')?'✅':_0x5ee9ca['mRCfA'](_0x4260ee[_0x345e55(0x1f4)],_0x345e55(0x211))?'🔄':'▶️';console['log'](_0x1af65d+_0x345e55(0x1b5)+_0x4260ee['iteration']+'\x20('+_0x4260ee['id']+')'),console['log']('\x20\x20\x20Status:\x20'+_0x4260ee['status']),console[_0x345e55(0x168)](_0x345e55(0x22b)+new Date(_0x4260ee[_0x345e55(0x240)])['toLocaleString']()),_0x4260ee[_0x345e55(0x1ae)]&&console[_0x345e55(0x168)]('\x20\x20\x20Completed:\x20'+new Date(_0x4260ee[_0x345e55(0x1ae)])['toLocaleString']()),console[_0x345e55(0x168)]('');}}export async function featureAddScenario(_0x2aad7b,_0x15955c){const _0x491e91=_0x1aa91e,_0x477e94=_0x15955c||await getActiveFeatureId();if(!_0x477e94)throw new Error(_0x491e91(0x1e2));const _0x1d781c=await getFeature(_0x477e94);if(_0x1d781c['latestReview']&&!_0x1d781c['latestReview'][_0x491e91(0x177)])throw new Error('Cannot\x20add\x20scenario:\x20feature\x20review\x20has\x20an\x20active\x20review.\x20Please\x20finish\x20your\x20review\x20first:\x20'+_0x1d781c['dashboardUrl']);await createChecklistItem(_0x477e94,_0x2aad7b);const _0x3a21fc=await getFeature(_0x477e94);console[_0x491e91(0x168)]('\x0a✅\x20Scenario\x20added'),displayFeature(_0x3a21fc,_0x3a21fc['checklistItems']);}export async function featureEditScenario(_0x20d2e6,_0x46a165){const _0x25c062=_0x1aa91e,_0x2466ac={'YOZGc':function(_0x5b7681){return _0x5b7681();},'XkQLf':'\x0a❌\x20No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.','KYdqb':function(_0x2a40f8,_0x329f62){return _0x2a40f8(_0x329f62);},'OxgpP':_0x25c062(0x231),'rZZhQ':_0x25c062(0x1d7),'lXnGK':_0x25c062(0x1cb),'qgBiD':function(_0x228c3f,_0x3f8138){return _0x228c3f===_0x3f8138;},'blrpV':_0x25c062(0x19d),'FKaYu':function(_0x4c5aae,_0x1b4905){return _0x4c5aae<_0x1b4905;},'VVceJ':function(_0x1f7bb3,_0x58a6a3){return _0x1f7bb3-_0x58a6a3;},'SCIYi':function(_0x586f9b,_0x2a2c01){return _0x586f9b<_0x2a2c01;},'cGWHD':function(_0x49fb6d,_0x11a639){return _0x49fb6d>=_0x11a639;},'lgUCs':function(_0x365d51,_0x52b589){return _0x365d51<_0x52b589;},'wzTmM':function(_0x426be2,_0x55981f){return _0x426be2+_0x55981f;},'FiqCY':function(_0x14ba57,_0x108631,_0x4a416d,_0x520455){return _0x14ba57(_0x108631,_0x4a416d,_0x520455);}},_0xf60330=_0x46a165['id']||await _0x2466ac[_0x25c062(0x18e)](getActiveFeatureId);!_0xf60330&&(console['error'](_0x2466ac['XkQLf']),console[_0x25c062(0x1bf)](_0x25c062(0x171)),process['exit'](0x1));const _0xea0a23=await _0x2466ac[_0x25c062(0x1b4)](getFeature,_0xf60330);_0xea0a23['latestReview']&&!_0xea0a23['latestReview'][_0x25c062(0x177)]&&(console[_0x25c062(0x1bf)](_0x2466ac['OxgpP']),console['error'](_0x2466ac['rZZhQ']),console[_0x25c062(0x1bf)]('\x20\x20'+_0xea0a23['dashboardUrl']),process[_0x25c062(0x172)](0x1));const _0xb71db5=_0xea0a23['checklistItems']||[];_0xb71db5[_0x25c062(0x18b)]===0x0&&(console['error'](_0x2466ac[_0x25c062(0x1c7)]),process[_0x25c062(0x172)](0x1));if(_0x2466ac['qgBiD'](_0x46a165['scenario'],undefined)){console[_0x25c062(0x1bf)](_0x2466ac[_0x25c062(0x1c1)]),console[_0x25c062(0x168)](_0x25c062(0x1c4));for(let _0x53adaf=0x0;_0x2466ac[_0x25c062(0x202)](_0x53adaf,_0xb71db5[_0x25c062(0x18b)]);_0x53adaf++){console['log']('\x20\x20'+(_0x53adaf+0x1)+'.\x20'+_0xb71db5[_0x53adaf]['description']);}process[_0x25c062(0x172)](0x1);}const _0x56f846=_0x2466ac[_0x25c062(0x1b7)](_0x46a165[_0x25c062(0x190)],0x1);if(_0x2466ac[_0x25c062(0x1e3)](_0x56f846,0x0)||_0x2466ac[_0x25c062(0x1b0)](_0x56f846,_0xb71db5['length'])){console['error'](_0x25c062(0x1d4)+_0x46a165['scenario']+_0x25c062(0x19a)+_0xb71db5[_0x25c062(0x18b)]+'\x20scenarios.'),console[_0x25c062(0x168)](_0x25c062(0x1c4));for(let _0xa47149=0x0;_0x2466ac[_0x25c062(0x233)](_0xa47149,_0xb71db5[_0x25c062(0x18b)]);_0xa47149++){console[_0x25c062(0x168)]('\x20\x20'+_0x2466ac[_0x25c062(0x206)](_0xa47149,0x1)+'.\x20'+_0xb71db5[_0xa47149]['description']);}process['exit'](0x1);}const _0x36dbec=_0xb71db5[_0x56f846];await _0x2466ac['FiqCY'](updateChecklistItem,_0xf60330,_0x36dbec['id'],{'description':_0x20d2e6});const _0xa1a18d=await getFeature(_0xf60330);console[_0x25c062(0x168)](_0x25c062(0x18c)),displayFeature(_0xa1a18d,_0xa1a18d['checklistItems']);}async function downloadFeedbackImage(_0x5851b7,_0x301dbc){const _0x120f76=_0x1aa91e,_0x596820={'bVQjX':function(_0xd0788){return _0xd0788();},'nQDNn':_0x120f76(0x179),'OGwgS':function(_0x4f040d,_0x7e21c3,_0x3e26c9){return _0x4f040d(_0x7e21c3,_0x3e26c9);},'rVDYf':function(_0x2cc3c0,_0x35c940){return _0x2cc3c0(_0x35c940);}};try{const _0x6c5c41=join(_0x596820[_0x120f76(0x16c)](getRangerDir),_0x596820['nQDNn']);await mkdir(_0x6c5c41,{'recursive':!![]});const _0x2c6da3=_0x596820[_0x120f76(0x176)](join,_0x6c5c41,'comment_'+_0x301dbc+_0x120f76(0x1ab)),_0x4b4155=await _0x596820['rVDYf'](fetch,_0x5851b7);if(!_0x4b4155['ok'])return null;const _0x37ac05=Buffer[_0x120f76(0x1ac)](await _0x4b4155['arrayBuffer']());return await writeFile(_0x2c6da3,_0x37ac05),_0x2c6da3;}catch{return null;}}export async function featureGetReview(_0x5ea486){const _0x222dfb=_0x1aa91e,_0x154223={'PpFJZ':function(_0x4d2c2d){return _0x4d2c2d();},'DtMXN':function(_0x490e4d,_0x3b5e08){return _0x490e4d(_0x3b5e08);},'OIGvP':function(_0x4f3966,_0x45c43a){return _0x4f3966===_0x45c43a;},'oeWsK':_0x222dfb(0x18a),'usoTq':function(_0x4e0263,_0x1a5da7){return _0x4e0263>_0x1a5da7;},'CLXMT':function(_0x5792d7,_0x2b4c57){return _0x5792d7+_0x2b4c57;},'xWPMl':_0x222dfb(0x1ad),'SgCim':_0x222dfb(0x1a8),'DBdWR':_0x222dfb(0x1ce),'AIyzK':'\x20>\x20'},_0x3a1a7e=_0x5ea486||await _0x154223['PpFJZ'](getActiveFeatureId);if(!_0x3a1a7e)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 _0x4240b8=await _0x154223[_0x222dfb(0x199)](getFeature,_0x3a1a7e),{items:_0x348eb5}=await getActionItems(_0x3a1a7e);console[_0x222dfb(0x168)]('\x0a📋\x20Feedback\x20for:\x20'+_0x4240b8['name']+'\x20('+_0x4240b8['id']+')\x0a');if(_0x154223['OIGvP'](_0x348eb5[_0x222dfb(0x18b)],0x0)){console['log'](_0x154223['oeWsK']);return;}for(let _0x3e9caf=0x0;_0x3e9caf<_0x348eb5[_0x222dfb(0x18b)];_0x3e9caf++){const _0x2d0b47=_0x348eb5[_0x3e9caf],_0xd31d2b=_0x2d0b47[_0x222dfb(0x178)]>0x1?_0x222dfb(0x21c)+_0x2d0b47[_0x222dfb(0x178)]+')':'',_0x20b84e=await getItemFeedback(_0x3a1a7e,_0x2d0b47['id']);if(_0x154223[_0x222dfb(0x192)](_0x20b84e[_0x222dfb(0x221)][_0x222dfb(0x18b)],0x0)){console[_0x222dfb(0x168)](_0x222dfb(0x1d0)+_0x154223['CLXMT'](_0x3e9caf,0x1)+':\x20\x22'+_0x2d0b47[_0x222dfb(0x1b6)]+'\x22'+_0xd31d2b+'\x20—\x20'+_0x20b84e[_0x222dfb(0x221)]['length']+_0x222dfb(0x19b));for(const _0x2bbfe2 of _0x20b84e['unaddressedComments']){const _0x26f2b4=new Date(_0x2bbfe2[_0x222dfb(0x240)])['toLocaleDateString']('en-US',{'month':_0x154223[_0x222dfb(0x234)],'day':_0x154223[_0x222dfb(0x213)]}),_0x404042=_0x2bbfe2[_0x222dfb(0x220)]||_0x2bbfe2['authorEmail']||_0x154223[_0x222dfb(0x22e)];console['log']('\x20\x20💬\x20'+_0x404042+'\x20('+_0x26f2b4+'):\x20\x22'+_0x2bbfe2[_0x222dfb(0x19c)]+'\x22');if(_0x2bbfe2['assetUrl']){const _0x5d2171=await downloadFeedbackImage(_0x2bbfe2['assetUrl'],_0x2bbfe2['id']);_0x5d2171&&console['log']('\x20\x20\x20\x20\x20📷\x20Screenshot:\x20'+_0x5d2171);}if(_0x2bbfe2[_0x222dfb(0x19e)]){const _0x293eb9=_0x2bbfe2['domRef'][_0x222dfb(0x1f5)][_0x222dfb(0x1bb)](_0x154223['AIyzK'])['pop']()?.[_0x222dfb(0x1bb)](':')[0x0]||'element',_0x3e2601=_0x2bbfe2[_0x222dfb(0x19e)][_0x222dfb(0x1b1)]?'\x20\x22'+_0x2bbfe2['domRef'][_0x222dfb(0x1b1)][_0x222dfb(0x16f)](0x0,0x3c)+'\x22':'';console[_0x222dfb(0x168)](_0x222dfb(0x20d)+_0x293eb9+'>'+_0x3e2601),console['log']('\x20\x20\x20\x20\x20📋\x20Selector:\x20'+_0x2bbfe2['domRef']['selector']);}else{if(_0x2bbfe2[_0x222dfb(0x20e)]){const _0x295024=_0x2bbfe2[_0x222dfb(0x20e)][_0x222dfb(0x1e0)];_0x2bbfe2['spatial']['type']==='point'&&_0x295024['length']>=0x2?console['log']('\x20\x20\x20\x20\x20📍\x20Annotation:\x20point\x20at\x20('+_0x295024[0x0]['toFixed'](0x2)+',\x20'+_0x295024[0x1][_0x222dfb(0x23b)](0x2)+')'):console[_0x222dfb(0x168)]('\x20\x20\x20\x20\x20📍\x20Annotation:\x20'+_0x2bbfe2[_0x222dfb(0x20e)][_0x222dfb(0x244)]+_0x222dfb(0x1bc)+_0x295024['map'](_0x3fcec9=>_0x3fcec9['toFixed'](0x2))[_0x222dfb(0x180)](',\x20')+']');}}}if(_0x20b84e['canonicalFlow']){console[_0x222dfb(0x168)]('\x20\x20Expected\x20flow:');for(const _0x17b339 of _0x20b84e['canonicalFlow']['split']('\x0a')){console['log'](_0x222dfb(0x198)+_0x17b339);}}}else console['log']('Scenario\x20'+(_0x3e9caf+0x1)+':\x20\x22'+_0x2d0b47[_0x222dfb(0x1b6)]+'\x22'+_0xd31d2b+'\x20—\x20no\x20comments'),console[_0x222dfb(0x168)](_0x222dfb(0x218));console[_0x222dfb(0x168)]('');}}export async function featureDelete(_0x251a9e){const _0x1dde4e=_0x1aa91e,_0x2dc16f={'gqzuk':'No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','njqpQ':function(_0x4e63f7,_0x49c7c6){return _0x4e63f7+_0x49c7c6;},'QBDMp':_0x1dde4e(0x21f)},_0x3bf86f=_0x251a9e||await getActiveFeatureId();if(!_0x3bf86f)throw new Error(_0x2dc16f['gqzuk']);const _0x47ffd2=await getFeature(_0x3bf86f);await softDeleteFeature(_0x3bf86f),console['log']('\x0a🗑️\x20\x20Deleted\x20feature\x20review:\x20'+_0x47ffd2['name']+'\x20('+_0x3bf86f+')'),console['log'](_0x2dc16f['njqpQ'](_0x2dc16f['QBDMp'],_0x3bf86f));}export async function featureRestore(_0x55f4a0){const _0x91aef8=_0x1aa91e;await restoreFeature(_0x55f4a0);const _0x1ae81b=await getFeature(_0x55f4a0);console['log']('\x0a✅\x20Restored\x20feature\x20review:\x20'+_0x1ae81b[_0x91aef8(0x16a)]+'\x20('+_0x55f4a0+')'),displayFeature(_0x1ae81b,_0x1ae81b[_0x91aef8(0x1cd)]);}
|
|
1
|
+
const _0x3ab7db=_0x2f19;(function(_0x58c77d,_0x3e9638){const _0x4510f2=_0x2f19,_0x37a455=_0x58c77d();while(!![]){try{const _0x27980e=-parseInt(_0x4510f2(0x104))/0x1+parseInt(_0x4510f2(0x1a2))/0x2+parseInt(_0x4510f2(0x145))/0x3+-parseInt(_0x4510f2(0x118))/0x4*(parseInt(_0x4510f2(0xd2))/0x5)+-parseInt(_0x4510f2(0xfd))/0x6*(-parseInt(_0x4510f2(0x15a))/0x7)+parseInt(_0x4510f2(0x126))/0x8*(-parseInt(_0x4510f2(0x131))/0x9)+parseInt(_0x4510f2(0x19d))/0xa*(parseInt(_0x4510f2(0xcc))/0xb);if(_0x27980e===_0x3e9638)break;else _0x37a455['push'](_0x37a455['shift']());}catch(_0x4ec751){_0x37a455['push'](_0x37a455['shift']());}}}(_0x40ec,0x3dad6));import{readFile,writeFile,mkdir}from'fs/promises';import{join}from'path';import{existsSync}from'fs';import{execSync}from'child_process';import _0xfadd76 from'inquirer';import{createFeature,listFeatures,getFeature,updateFeature,getFeatureReport,getFeatureReportMarkdown,listFeatureSessions,startSession,concludeSession,createChecklistItem,getActionItems,getItemFeedback,softDeleteFeature,restoreFeature,updateChecklistItem}from'./utils/featureApi.js';import{getBrowserSessionSteps}from'./utils/browserSessionsApi.js';import{getApiBaseUrl}from'./utils/environment.js';import{getRangerDir}from'./utils/rangerRoot.js';import{registerSession}from'./utils/sessionCache.js';import{getEnvNames}from'./env.js';import{formatProfileRequiredMessage}from'./utils/profileMessages.js';import{listCloudProfiles}from'./utils/cloudProfile.js';const ACTIVE_FEATURE_FILE='active-feature.txt',bold=_0xa1a478=>_0x3ab7db(0x119)+_0xa1a478+_0x3ab7db(0x12b);function _0x2f19(_0x3ddf10,_0x23bb1e){_0x3ddf10=_0x3ddf10-0xc9;const _0x40ecef=_0x40ec();let _0x2f19c3=_0x40ecef[_0x3ddf10];return _0x2f19c3;}function getGitRepoUrl(){const _0x273658=_0x3ab7db,_0x4a6feb={'iQQwv':function(_0x4b473f,_0x28f9dc,_0xa81c96){return _0x4b473f(_0x28f9dc,_0xa81c96);},'yFYtL':_0x273658(0xcd),'mTFxQ':'utf-8','QTFUy':'pipe'};try{const _0xfd0e15=_0x4a6feb[_0x273658(0xf1)](execSync,_0x4a6feb[_0x273658(0x112)],{'encoding':_0x4a6feb[_0x273658(0xea)],'stdio':[_0x273658(0x1a5),_0x4a6feb[_0x273658(0x184)],_0x273658(0x1a5)]})['trim']();return _0xfd0e15['replace'](/\.git$/,'')['replace'](/^git@github\.com:/,'github.com/')['replace'](/^https?:\/\//,'');}catch{return undefined;}}function getGitBranch(){const _0x3bb0ff=_0x3ab7db,_0x524330={'QBqyT':'git\x20rev-parse\x20--abbrev-ref\x20HEAD','qatBK':'pipe'};try{return execSync(_0x524330[_0x3bb0ff(0x15b)],{'encoding':'utf-8','stdio':[_0x524330['qatBK'],_0x524330['qatBK'],_0x3bb0ff(0x1a5)]})['trim']();}catch{return undefined;}}export async function getActiveFeatureId(){const _0x1267e2=_0x3ab7db,_0x16f172={'wfDNh':function(_0xbff0c6,_0x35228a,_0x5d1adc){return _0xbff0c6(_0x35228a,_0x5d1adc);},'IpKfg':_0x1267e2(0xde)},_0x8d03c=_0x16f172['wfDNh'](join,getRangerDir(),ACTIVE_FEATURE_FILE);if(!existsSync(_0x8d03c))return null;try{const _0x1d96e8=await readFile(_0x8d03c,_0x16f172[_0x1267e2(0x141)]);return _0x1d96e8['trim']()||null;}catch{return null;}}async function setActiveFeatureId(_0x40c603){const _0x514caa=_0x3ab7db,_0x1fbd18={'ZmOVe':'utf-8'},_0x5bb647=getRangerDir(),_0x46365b=join(_0x5bb647,ACTIVE_FEATURE_FILE);!existsSync(_0x5bb647)&&await mkdir(_0x5bb647,{'recursive':!![]}),await writeFile(_0x46365b,_0x40c603,_0x1fbd18[_0x514caa(0x114)]);}function getProgressDisplay(_0x1ddb02){const _0x3781b1=_0x3ab7db,_0x2cca28={'Jzwnp':function(_0x96c739,_0x12d4c5){return _0x96c739+_0x12d4c5;},'XmQhg':function(_0x596420,_0x23dac7){return _0x596420*_0x23dac7;},'mFjPw':function(_0x4990be,_0x3bad10){return _0x4990be/_0x3bad10;},'BdPAu':function(_0x128f56,_0x359dc4){return _0x128f56>_0x359dc4;},'iYbAO':function(_0x263363,_0xb85ba4){return _0x263363>_0xb85ba4;}},_0x2a16bd=_0x1ddb02[_0x3781b1(0x133)]||0x0,_0x3f037f=_0x1ddb02['verificationInProgressItems']||0x0,_0x573e25=_0x1ddb02[_0x3781b1(0x163)]||0x0,_0x4f2808=_0x1ddb02[_0x3781b1(0x171)]||0x0,_0x571683=_0x1ddb02[_0x3781b1(0x183)]||0x0,_0x3e2f14=_0x2cca28['Jzwnp'](_0x2a16bd,_0x3f037f)+_0x573e25+_0x4f2808+_0x571683;if(_0x3e2f14===0x0)return'-';const _0x443ebc=0xa,_0x382d5f=Math[_0x3781b1(0x17c)](_0x2cca28['XmQhg'](_0x2cca28['mFjPw'](_0x2a16bd,_0x3e2f14),_0x443ebc)),_0x4250f0='█'[_0x3781b1(0x13d)](_0x382d5f)+'░'['repeat'](_0x443ebc-_0x382d5f),_0xc3b705=[];if(_0x573e25>0x0)_0xc3b705['push'](_0x573e25+_0x3781b1(0x103));if(_0x2cca28['BdPAu'](_0x4f2808,0x0))_0xc3b705[_0x3781b1(0xf2)](_0x4f2808+_0x3781b1(0x189));if(_0x2cca28[_0x3781b1(0x13c)](_0x3f037f,0x0))_0xc3b705[_0x3781b1(0xf2)](_0x3f037f+_0x3781b1(0xf8));const _0x29c5a3=_0xc3b705[_0x3781b1(0x157)]>0x0?'\x20('+_0xc3b705['join'](',\x20')+')':'';return _0x4250f0+'\x20'+_0x2a16bd+'/'+_0x3e2f14+_0x3781b1(0x149)+_0x29c5a3;}function getCurrentSessionItems(_0x26951a,_0x9a6e14){const _0x563643=_0x3ab7db;if(!_0x26951a['currentSessionId'])return _0x9a6e14['filter'](_0x345e71=>!_0x345e71[_0x563643(0xcb)]);return _0x9a6e14[_0x563643(0x16b)](_0x5357b2=>_0x5357b2[_0x563643(0xcb)]===_0x26951a['currentSessionId']||!_0x5357b2[_0x563643(0xcb)]);}function displayFeature(_0x28139a,_0x547d9f){const _0x34e5c6=_0x3ab7db,_0x3f5596={'kYVAx':function(_0x167594,_0x45ec20){return _0x167594(_0x45ec20);},'XFPGg':function(_0x588c19,_0x2d65ff){return _0x588c19===_0x2d65ff;},'hoiYm':_0x34e5c6(0x15c),'YecIy':function(_0x5e9bfc,_0x57e6eb){return _0x5e9bfc>_0x57e6eb;},'TBgjQ':function(_0x213c74,_0x4e76b3){return _0x213c74>_0x4e76b3;},'qmAQk':function(_0x2eb5d1,_0x32ad05){return _0x2eb5d1+_0x32ad05;},'jhcxN':_0x34e5c6(0x11f),'bTsna':_0x34e5c6(0xe3),'DcBZD':function(_0x4e8d6f,_0xf6a47e){return _0x4e8d6f===_0xf6a47e;},'ynztw':'closed'};console['log']('\x0a'+_0x28139a[_0x34e5c6(0x160)]+'\x20('+_0x28139a[_0x34e5c6(0x12a)]+')');_0x28139a['stats']&&console[_0x34e5c6(0xed)]('\x20\x20\x20Progress:\x20'+_0x3f5596['kYVAx'](getProgressDisplay,_0x28139a['stats']));_0x28139a['description']&&console[_0x34e5c6(0xed)]('\x20\x20\x20Description:\x20'+_0x28139a['description']);_0x28139a[_0x34e5c6(0xdc)]&&console['log']('\x20\x20\x20Repository:\x20'+_0x28139a['gitRepoUrl']);_0x28139a[_0x34e5c6(0x123)]&&console['log'](_0x34e5c6(0xf5)+_0x28139a[_0x34e5c6(0x123)]);console[_0x34e5c6(0xed)]('\x20\x20\x20Created:\x20'+new Date(_0x28139a['createdAt'])[_0x34e5c6(0x13e)]());_0x28139a['completedAt']&&console[_0x34e5c6(0xed)]('\x20\x20\x20Completed:\x20'+new Date(_0x28139a['completedAt'])['toLocaleString']());if(_0x547d9f&&_0x547d9f[_0x34e5c6(0x157)]>0x0){console['log']('\x0a\x20\x20\x20Scenarios:');for(let _0x398f83=0x0;_0x398f83<_0x547d9f['length'];_0x398f83++){const _0x25ec94=_0x547d9f[_0x398f83];let _0x369c86;if(_0x25ec94['status']===_0x34e5c6(0x19f)&&_0x3f5596['XFPGg'](_0x25ec94[_0x34e5c6(0x177)],'approved'))_0x369c86='✅';else{if(_0x3f5596['XFPGg'](_0x25ec94['status'],_0x3f5596[_0x34e5c6(0x100)]))_0x369c86='🟢';else{if(_0x3f5596[_0x34e5c6(0x106)](_0x25ec94[_0x34e5c6(0x16e)],'incomplete'))_0x369c86='🟠';else{if(_0x25ec94[_0x34e5c6(0x16e)]==='blocked')_0x369c86='🛑';else{if(_0x25ec94['status']===_0x34e5c6(0x19f))_0x369c86='⛔';else _0x25ec94[_0x34e5c6(0x16e)]===_0x34e5c6(0x18e)?_0x369c86='⏳':_0x369c86='⬜';}}}}const _0x387056=_0x3f5596[_0x34e5c6(0xe1)](_0x25ec94[_0x34e5c6(0x14e)],0x1)?'\x20(v'+_0x25ec94[_0x34e5c6(0x14e)]+')':'',_0x2d78a6=_0x3f5596['TBgjQ'](_0x25ec94['version'],0x1)&&_0x25ec94[_0x34e5c6(0xfe)]&&_0x25ec94['status']!=='closed'&&_0x25ec94['status']!==_0x34e5c6(0x15c)?_0x34e5c6(0x105):'';console['log']('\x20\x20\x20'+_0x3f5596['qmAQk'](_0x398f83,0x1)+'.\x20'+_0x369c86+'\x20'+_0x25ec94['description']+_0x387056+_0x2d78a6);_0x25ec94[_0x34e5c6(0x16e)]===_0x3f5596[_0x34e5c6(0x166)]&&_0x25ec94['blockedReason']&&console['log']('\x20\x20\x20\x20\x20\x20Blocked:\x20'+_0x25ec94[_0x34e5c6(0x128)]);_0x25ec94[_0x34e5c6(0x16e)]===_0x34e5c6(0x127)&&_0x25ec94[_0x34e5c6(0x109)]&&console[_0x34e5c6(0xed)](_0x34e5c6(0xe6)+_0x25ec94[_0x34e5c6(0x109)]);if(_0x25ec94[_0x34e5c6(0x16e)]==='closed'&&_0x25ec94[_0x34e5c6(0x177)]===_0x3f5596['bTsna'])console['log']('\x20\x20\x20\x20\x20\x20Approved');else _0x3f5596['DcBZD'](_0x25ec94[_0x34e5c6(0x16e)],_0x3f5596[_0x34e5c6(0x176)])&&_0x25ec94[_0x34e5c6(0xe5)]&&console[_0x34e5c6(0xed)](_0x34e5c6(0x139)+_0x25ec94['canceledReason']);}}}export async function featureCreate(_0x5672f3,_0x1756e9){const _0x311504=_0x3ab7db,_0x56ded2={'nyrTD':function(_0x4098e9){return _0x4098e9();},'RjQOp':function(_0x4a242e,_0x1919ef){return _0x4a242e===_0x1919ef;},'dcBMS':function(_0x1fef5a,_0x4edb93){return _0x1fef5a(_0x4edb93);},'rQZaj':function(_0x31d9f2,_0x21406e){return _0x31d9f2(_0x21406e);},'TGMhd':function(_0x575ebc,_0x32a04b){return _0x575ebc(_0x32a04b);},'IcIeV':function(_0xb4c76a,_0x4884e8,_0x467492){return _0xb4c76a(_0x4884e8,_0x467492);}},{envNames:_0x2453c9}=await _0x56ded2[_0x311504(0x158)](getEnvNames);if(_0x56ded2[_0x311504(0x174)](_0x2453c9['length'],0x0)&&!process['env'][_0x311504(0x10c)]){let _0x4327ee=0x0;try{_0x4327ee=(await listCloudProfiles())[_0x311504(0x157)];}catch{_0x4327ee=0x1;}_0x4327ee===0x0&&console[_0x311504(0x10a)]('\x0a'+_0x56ded2[_0x311504(0xf7)](formatProfileRequiredMessage,_0xcfbf99=>bold(_0xcfbf99)));}const _0x279ec8=_0x1756e9['scenarios']?_0x1756e9[_0x311504(0x12c)][_0x311504(0x187)](_0x18d22a=>_0x18d22a[_0x311504(0x108)]()):[],_0x5edbc3=getGitRepoUrl(),_0x7b1c3f=getGitBranch();console[_0x311504(0xed)](_0x311504(0xf3));const _0x52b868=await _0x56ded2[_0x311504(0xcf)](createFeature,{'name':_0x5672f3,'description':_0x1756e9[_0x311504(0x19b)],'checklist':_0x279ec8,'gitRepoUrl':_0x5edbc3,'gitBranch':_0x7b1c3f});await _0x56ded2['TGMhd'](setActiveFeatureId,_0x52b868['id']),await _0x56ded2['dcBMS'](tryStartCurrentSession,_0x52b868['id']);const _0x5a14c2=process['env'][_0x311504(0xd3)];_0x5a14c2&®isterSession(_0x5a14c2,_0x52b868['id']),console['log']('\x0a✅\x20Feature\x20review\x20created:\x20'+_0x52b868['id']),_0x56ded2['IcIeV'](displayFeature,_0x52b868,_0x52b868['checklistItems']),console['log']('\x0a➡️\x20\x20Set\x20as\x20active\x20feature\x20review');}export async function featureList(_0x48f80e){const _0x2e9ed0=_0x3ab7db,_0x1a9f97={'xfWpS':function(_0x486e01){return _0x486e01();},'OZoZJ':function(_0x994d79,_0xbf84dc){return _0x994d79(_0xbf84dc);},'sbdiD':'\x0aNo\x20feature\x20reviews\x20found.','FQXKk':_0x2e9ed0(0xdd)},_0x6dc93b={'limit':_0x48f80e[_0x2e9ed0(0x161)]??0xa,'offset':_0x48f80e[_0x2e9ed0(0xee)]??0x0,'includeDeleted':_0x48f80e['includeDeleted']};_0x48f80e[_0x2e9ed0(0x14a)]&&(_0x6dc93b['gitRepoUrl']=getGitRepoUrl(),_0x6dc93b[_0x2e9ed0(0x123)]=_0x1a9f97['xfWpS'](getGitBranch));const _0x1a21a1=await _0x1a9f97[_0x2e9ed0(0x17e)](listFeatures,_0x6dc93b);if(_0x1a21a1['items'][_0x2e9ed0(0x157)]===0x0){console['log'](_0x1a9f97['sbdiD']);return;}const _0x5e010c=_0x1a21a1['totalCount']>_0x1a21a1[_0x2e9ed0(0x159)][_0x2e9ed0(0x157)]?'Showing\x20'+_0x1a21a1[_0x2e9ed0(0x159)]['length']+_0x2e9ed0(0xe9)+_0x1a21a1[_0x2e9ed0(0x197)]:_0x1a21a1['totalCount']+_0x2e9ed0(0x170);console[_0x2e9ed0(0xed)]('\x0a'+_0x5e010c+':\x0a');for(const _0x28148c of _0x1a21a1[_0x2e9ed0(0x159)]){console[_0x2e9ed0(0xed)](''+_0x28148c[_0x2e9ed0(0x160)]),console[_0x2e9ed0(0xed)]('\x20\x20\x20ID:\x20'+_0x28148c['id']),_0x28148c[_0x2e9ed0(0x17a)]&&console['log']('\x20\x20\x20Progress:\x20'+getProgressDisplay(_0x28148c['stats'])),_0x28148c['gitBranch']&&console[_0x2e9ed0(0xed)]('\x20\x20\x20Branch:\x20'+_0x28148c[_0x2e9ed0(0x123)]),console[_0x2e9ed0(0xed)](_0x2e9ed0(0x125)+new Date(_0x28148c['createdAt'])[_0x2e9ed0(0xd0)]()),console['log']('');}const _0x14ddb6=_0x6dc93b[_0x2e9ed0(0x161)]??0xa,_0x592cc8=(_0x6dc93b[_0x2e9ed0(0xee)]??0x0)+_0x1a21a1[_0x2e9ed0(0x159)]['length'];if(_0x592cc8<_0x1a21a1[_0x2e9ed0(0x197)]){const _0x33d335=_0x14ddb6!==0xa?'\x20--limit\x20'+_0x14ddb6:'',_0x235551=_0x48f80e['currentBranch']?'\x20--current-branch':'',_0x468cd2=_0x48f80e['includeDeleted']?_0x1a9f97['FQXKk']:'';console['log'](_0x2e9ed0(0x11e)+_0x592cc8+_0x33d335+_0x235551+_0x468cd2);}}export async function featureShow(_0x80c080){const _0x286f61=_0x3ab7db,_0x1e5066={'VrDLr':'No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','bdERV':function(_0x29cbf0,_0xff837,_0x4a7ccb){return _0x29cbf0(_0xff837,_0x4a7ccb);}},_0x329aad=_0x80c080||await getActiveFeatureId();if(!_0x329aad)throw new Error(_0x1e5066['VrDLr']);const _0x39e7b2=await getFeature(_0x329aad);_0x1e5066[_0x286f61(0x162)](displayFeature,_0x39e7b2,_0x39e7b2[_0x286f61(0xd7)]);}export async function featureResume(_0x1160b7){const _0x51b308=_0x3ab7db,_0x230cb3={'SlzmR':function(_0x198648,_0x610047,_0x294a8b){return _0x198648(_0x610047,_0x294a8b);},'yGKWp':function(_0x205b2b){return _0x205b2b();},'wxbJn':function(_0x56facf){return _0x56facf();},'ViCRS':_0x51b308(0x135),'Fbmbq':function(_0x1d1aaf,_0x561bb2){return _0x1d1aaf||_0x561bb2;},'ZDGhi':_0x51b308(0x16a),'DEptU':function(_0x1bb54f,_0x437da2){return _0x1bb54f(_0x437da2);},'EZQDW':_0x51b308(0x14d),'ZwRjm':_0x51b308(0x19c),'bJLkG':_0x51b308(0x10e),'WiLgo':_0x51b308(0xca),'rLnni':function(_0x3a0026,_0x5db89c){return _0x3a0026(_0x5db89c);},'EQWKd':function(_0xcd323a,_0x2cbb80){return _0xcd323a(_0x2cbb80);},'DMmDp':function(_0x2deb62,_0x4e3eda,_0x52e3a0){return _0x2deb62(_0x4e3eda,_0x52e3a0);}};if(_0x1160b7){const _0x58d1ee=await getFeature(_0x1160b7);await setActiveFeatureId(_0x58d1ee['id']);const _0x162749=getGitBranch();_0x162749&&_0x162749!==_0x58d1ee[_0x51b308(0x123)]&&(await _0x230cb3[_0x51b308(0x17f)](updateFeature,_0x58d1ee['id'],{'gitBranch':_0x162749}),console['log']('\x20\x20\x20Updated\x20branch\x20to:\x20'+_0x162749));console[_0x51b308(0xed)](_0x51b308(0x136)+_0x58d1ee['name']+'\x20('+_0x58d1ee['id']+')'),await tryStartCurrentSession(_0x58d1ee['id']);const _0x4fd9ab=process['env'][_0x51b308(0xd3)];_0x4fd9ab&®isterSession(_0x4fd9ab,_0x58d1ee['id']);displayFeature(_0x58d1ee,_0x58d1ee[_0x51b308(0xd7)]),await printFeedbackNudge(_0x58d1ee['id']);return;}const _0x4c99c1=_0x230cb3['yGKWp'](getGitRepoUrl),_0x22306f=_0x230cb3[_0x51b308(0x19a)](getGitBranch);if(!_0x4c99c1&&!_0x22306f)throw new Error(_0x230cb3[_0x51b308(0x175)]);console['log']('\x0aSearching\x20for\x20feature\x20reviews\x20matching:\x20'+_0x230cb3[_0x51b308(0x182)](_0x4c99c1,_0x230cb3['ZDGhi'])+'\x20/\x20'+(_0x22306f||_0x230cb3['ZDGhi'])+_0x51b308(0x132));const _0x375b86=await _0x230cb3[_0x51b308(0xfb)](listFeatures,{'gitRepoUrl':_0x4c99c1,'gitBranch':_0x22306f}),_0x99e4e5=_0x375b86['items']['filter'](_0x59cd0d=>_0x59cd0d['status']?_0x59cd0d[_0x51b308(0x16e)]!=='verified':!_0x59cd0d[_0x51b308(0x193)]);if(_0x99e4e5[_0x51b308(0x157)]===0x0){console['log'](_0x230cb3['EZQDW']),console['log'](_0x230cb3[_0x51b308(0x155)]);return;}let _0x2a9753;if(_0x99e4e5[_0x51b308(0x157)]===0x1)_0x2a9753=_0x99e4e5[0x0];else{const _0x2cbc98=process[_0x51b308(0x154)]['isTTY']&&process[_0x51b308(0x1a7)]['isTTY'];if(!_0x2cbc98){console[_0x51b308(0xed)](_0x230cb3[_0x51b308(0xeb)]);for(const _0x41f0cc of _0x99e4e5){console[_0x51b308(0xed)]('\x20\x20'+_0x41f0cc['name']),console['log'](_0x51b308(0xf6)+_0x41f0cc['id']),_0x41f0cc['stats']&&console[_0x51b308(0xed)]('\x20\x20\x20\x20\x20Progress:\x20'+_0x230cb3['DEptU'](getProgressDisplay,_0x41f0cc[_0x51b308(0x17a)])),_0x41f0cc['gitBranch']&&console[_0x51b308(0xed)]('\x20\x20\x20\x20\x20Branch:\x20'+_0x41f0cc[_0x51b308(0x123)]);}throw new Error(_0x51b308(0x13f));}const {selected:_0x52d55c}=await _0xfadd76['prompt']([{'type':_0x51b308(0x14f),'name':_0x230cb3['WiLgo'],'message':'Multiple\x20feature\x20reviews\x20found.\x20Select\x20one:','choices':_0x99e4e5['map'](_0x2e7fdf=>({'name':_0x2e7fdf['name']+'\x20('+_0x2e7fdf['id']+')','value':_0x2e7fdf['id']}))}]);_0x2a9753=_0x99e4e5[_0x51b308(0x156)](_0x443c49=>_0x443c49['id']===_0x52d55c);}await _0x230cb3[_0x51b308(0x12f)](setActiveFeatureId,_0x2a9753['id']);_0x22306f&&_0x22306f!==_0x2a9753[_0x51b308(0x123)]&&(await _0x230cb3[_0x51b308(0x17f)](updateFeature,_0x2a9753['id'],{'gitBranch':_0x22306f}),console[_0x51b308(0xed)]('\x20\x20\x20Updated\x20branch\x20to:\x20'+_0x22306f));console[_0x51b308(0xed)](_0x51b308(0x136)+_0x2a9753[_0x51b308(0x160)]+'\x20('+_0x2a9753['id']+')'),await _0x230cb3[_0x51b308(0x185)](tryStartCurrentSession,_0x2a9753['id']);const _0xe7147f=await _0x230cb3[_0x51b308(0xfb)](getFeature,_0x2a9753['id']),_0x5f2092=process[_0x51b308(0x199)]['CLAUDE_SESSION_ID'];_0x5f2092&&_0x230cb3[_0x51b308(0x190)](registerSession,_0x5f2092,_0xe7147f['id']),displayFeature(_0xe7147f,_0xe7147f[_0x51b308(0xd7)]),await printFeedbackNudge(_0xe7147f['id']);}async function printFeedbackNudge(_0x2ae831){const _0x48a447=_0x3ab7db,_0x5ed3ae={'OCxtE':function(_0x1704cf,_0x3441e7,_0x3abe62){return _0x1704cf(_0x3441e7,_0x3abe62);},'hxkQV':function(_0x266b39,_0x21552d){return _0x266b39>_0x21552d;},'BRqLi':_0x48a447(0x12d)};try{const {items:_0x364e14}=await getActionItems(_0x2ae831);let _0x45822c=0x0,_0x54ddd5=0x0;for(const _0x772ff of _0x364e14){const _0x97113e=await _0x5ed3ae[_0x48a447(0xe2)](getItemFeedback,_0x2ae831,_0x772ff['id']);_0x97113e[_0x48a447(0x121)]['length']>0x0&&(_0x45822c+=_0x97113e['unaddressedComments'][_0x48a447(0x157)],_0x54ddd5++);}_0x5ed3ae['hxkQV'](_0x45822c,0x0)&&(console['log']('\x0a⚠️\x20\x20'+_0x45822c+_0x48a447(0x18d)+_0x54ddd5+'\x20scenario(s).'),console[_0x48a447(0xed)](_0x5ed3ae['BRqLi']));}catch{}}async function tryStartCurrentSession(_0x138384){const _0x2dad7a=_0x3ab7db,_0x1406e3={'nuuVK':function(_0x53d51c,_0x1b40b7){return _0x53d51c(_0x1b40b7);}};try{const {sessions:_0x5acffe}=await _0x1406e3[_0x2dad7a(0x13a)](listFeatureSessions,_0x138384),_0x3a9c53=_0x5acffe['find'](_0x31a2c4=>_0x31a2c4['status']===_0x2dad7a(0x167));_0x3a9c53&&(await startSession(_0x138384,_0x3a9c53['id']),console[_0x2dad7a(0xed)](_0x2dad7a(0x15d)+_0x3a9c53[_0x2dad7a(0xfc)]));}catch{}}export async function featureReport(_0x6b065b,_0xb96f6b){const _0x3b6ef5=_0x3ab7db,_0x10b63d={'sNzRw':function(_0x49db7f,_0x3eea61,_0x996838){return _0x49db7f(_0x3eea61,_0x996838);},'TlxDS':function(_0x2370a3,_0x54a142,_0x56a584,_0x4e80ae){return _0x2370a3(_0x54a142,_0x56a584,_0x4e80ae);},'Lbocw':function(_0x498b4e,_0x140391){return _0x498b4e(_0x140391);}},_0x6e5833=_0x6b065b||await getActiveFeatureId();if(!_0x6e5833)throw new Error(_0x3b6ef5(0x144));console[_0x3b6ef5(0xed)]('\x0aGenerating\x20report...');const _0x49627c=await _0x10b63d[_0x3b6ef5(0xdb)](getFeatureReportMarkdown,_0x6e5833,{'style':_0xb96f6b['style']}),_0x4d35b1=_0xb96f6b['output']||_0x10b63d[_0x3b6ef5(0xce)](join,getRangerDir(),_0x3b6ef5(0x142),_0x6e5833+'.md'),_0x5c3897=_0x10b63d['sNzRw'](join,_0x4d35b1,'..');!_0x10b63d[_0x3b6ef5(0xec)](existsSync,_0x5c3897)&&await mkdir(_0x5c3897,{'recursive':!![]}),await _0x10b63d[_0x3b6ef5(0xce)](writeFile,_0x4d35b1,_0x49627c,_0x3b6ef5(0xde)),console['log'](_0x3b6ef5(0x140)+_0x4d35b1);}function getScenarioResult(_0x4ed3cc){const _0x3ff785=_0x3ab7db,_0x4f8798={'LdOQI':function(_0x3da5f0,_0x433db9){return _0x3da5f0===_0x433db9;},'cRDgf':_0x3ff785(0x153)};if(_0x4f8798['LdOQI'](_0x4ed3cc['status'],_0x3ff785(0x19f)))return _0x4ed3cc[_0x3ff785(0x177)]??_0x3ff785(0x19f);if(_0x4ed3cc['status']===_0x3ff785(0x18e))return _0x4f8798['cRDgf'];return _0x4ed3cc['status'];}function getScenarioRationale(_0x35a9f1,_0x2dc0ec){const _0x38f98f=_0x3ab7db;if(_0x2dc0ec)return _0x2dc0ec;if(_0x35a9f1[_0x38f98f(0x128)])return _0x35a9f1[_0x38f98f(0x128)];if(_0x35a9f1[_0x38f98f(0x109)])return _0x35a9f1[_0x38f98f(0x109)];if(_0x35a9f1['canceledReason'])return _0x35a9f1[_0x38f98f(0xe5)];if(_0x35a9f1[_0x38f98f(0x138)])return _0x35a9f1['notes'];return null;}export async function featureReportPrDescription(_0x134c30,_0x2cfa34){const _0x47adf4=_0x3ab7db,_0x34ac76={'MuoaE':function(_0x7faf92){return _0x7faf92();},'hNTCz':_0x47adf4(0x144),'fiHWK':function(_0x2bd425,_0x184f72,_0xa4f819){return _0x2bd425(_0x184f72,_0xa4f819);},'DQLqI':function(_0x296da2,_0x371303){return _0x296da2===_0x371303;},'tgoBi':function(_0x68d5a7,_0x4585ca){return _0x68d5a7>_0x4585ca;},'CRonv':_0x47adf4(0x110),'cjxEg':function(_0x49df6a,_0x7a5bb6,_0x5eb7e4,_0x221700){return _0x49df6a(_0x7a5bb6,_0x5eb7e4,_0x221700);}},_0x300a95=_0x134c30||await _0x34ac76[_0x47adf4(0x10b)](getActiveFeatureId);if(!_0x300a95)throw new Error(_0x34ac76[_0x47adf4(0x124)]);const _0x275c90=await getFeature(_0x300a95),_0x10e5b0=_0x275c90['checklistItems']||[],_0x1cb0f1=_0x34ac76['fiHWK'](getCurrentSessionItems,_0x275c90,_0x10e5b0);_0x34ac76['DQLqI'](_0x1cb0f1[_0x47adf4(0x157)],0x0)&&(console[_0x47adf4(0x129)]('\x0a❌\x20No\x20scenarios\x20found\x20to\x20include.'),process['exit'](0x1));const _0x499954=_0x2cfa34[_0x47adf4(0x111)]??[],_0x26671=_0x499954[_0x47adf4(0x16b)](_0x36ddf7=>!Number[_0x47adf4(0x179)](_0x36ddf7)||_0x36ddf7<0x1||_0x36ddf7>_0x1cb0f1[_0x47adf4(0x157)]);if(_0x34ac76['tgoBi'](_0x26671[_0x47adf4(0x157)],0x0)){console['error']('\x0a❌\x20Invalid\x20scenario\x20number(s):\x20'+_0x26671[_0x47adf4(0xef)](',\x20')),console['log']('\x0aAvailable\x20scenarios:');for(let _0x381f62=0x0;_0x381f62<_0x1cb0f1[_0x47adf4(0x157)];_0x381f62++){console[_0x47adf4(0xed)]('\x20\x20'+(_0x381f62+0x1)+'.\x20'+_0x1cb0f1[_0x381f62]['description']);}process['exit'](0x1);}const _0x81197d=new Set(_0x499954['map'](_0x2c8237=>_0x2c8237-0x1)),_0x367dba=_0x1cb0f1['filter']((_0x419ae6,_0x31aa9a)=>!_0x81197d[_0x47adf4(0x18c)](_0x31aa9a));_0x367dba['length']===0x0&&(console[_0x47adf4(0x129)](_0x34ac76['CRonv']),process[_0x47adf4(0x102)](0x1));if(_0x2cfa34['json'])await _0x34ac76[_0x47adf4(0xff)](outputJsonReport,_0x300a95,_0x275c90,_0x367dba);else{const _0x316ca9=await getFeatureReportMarkdown(_0x300a95,{'itemIds':_0x367dba[_0x47adf4(0x187)](_0x599725=>_0x599725['id'])});process['stdout'][_0x47adf4(0x1a3)](_0x316ca9['trimEnd']()+'\x0a');}}async function outputJsonReport(_0x502833,_0x280122,_0x6dd78b){const _0x41dd5c=_0x3ab7db,_0x3be074={'tOnMH':function(_0x5853d4,_0x2ee7d7){return _0x5853d4(_0x2ee7d7);}},_0x75a070=getApiBaseUrl(),_0x308e8b=await getFeatureReport(_0x502833),_0x1a78d0=new Map(_0x308e8b['checklistItems']['map'](_0x383d8f=>[_0x383d8f['id'],_0x383d8f])),_0x543a27=await Promise['all'](_0x6dd78b[_0x41dd5c(0x187)](async _0x588bab=>{const _0x47da0b=_0x41dd5c,_0x335053=_0x1a78d0[_0x47da0b(0x122)](_0x588bab['id']),_0x137639=_0x335053?.[_0x47da0b(0x16c)]??null;let _0x2c4fb6=[];if(_0x588bab['browserSessionId'])try{const {steps:_0x4ff0e1}=await _0x3be074['tOnMH'](getBrowserSessionSteps,_0x588bab['browserSessionId']);_0x4ff0e1['length']>0x0&&(_0x2c4fb6=_0x4ff0e1['map'](_0x537b7c=>{const _0xc2b349=_0x47da0b,_0x5d86b6=_0x537b7c[_0xc2b349(0xe7)][_0xc2b349(0x156)](_0x584d4d=>_0x584d4d[_0xc2b349(0xda)]==='screenshot'&&_0x584d4d[_0xc2b349(0x18f)]===_0xc2b349(0x11c))??_0x537b7c[_0xc2b349(0xe7)][_0xc2b349(0x156)](_0x405a60=>_0x405a60['assetType']==='screenshot');let _0x21b971=null,_0x6c5487=null;if(_0x5d86b6){const _0x557b67=_0x5d86b6[_0xc2b349(0x115)][_0xc2b349(0x11d)]['split']('/')['pop']();_0x21b971=_0x75a070+'/api/v1/mcp/browser-sessions/'+_0x588bab['browserSessionId']+'/artifacts/'+_0x557b67,_0x557b67&&(_0x6c5487=_0x557b67[_0xc2b349(0x16d)](/\.\w+$/,'')[_0xc2b349(0x16d)](/^(key_)?\d+_/,'')[_0xc2b349(0x16d)](/[-_]/g,'\x20'));}return{'description':_0x6c5487||_0x537b7c['description']||_0x537b7c['stepName']||'Step\x20'+_0x537b7c['position'],'screenshot':_0x21b971,'is_key_step':_0x537b7c[_0xc2b349(0x147)]};}));}catch{}return _0x2c4fb6[_0x47da0b(0x157)]===0x0&&_0x137639?.['screenshotUrls']&&(_0x2c4fb6=_0x137639['screenshotUrls'][_0x47da0b(0x187)]((_0x823db6,_0x3068b7)=>({'description':_0x47da0b(0x148)+(_0x3068b7+0x1),'screenshot':_0x823db6,'is_key_step':![]}))),{'description':_0x588bab[_0x47da0b(0x19b)],'result':_0x3be074[_0x47da0b(0x10d)](getScenarioResult,_0x588bab),'rationale':getScenarioRationale(_0x588bab,_0x137639?.[_0x47da0b(0x15f)]),'steps':_0x2c4fb6};})),_0x2b1dec={'url':_0x280122['dashboardUrl'],'scenarios':_0x543a27};process['stdout']['write'](JSON['stringify'](_0x2b1dec,null,0x2)+'\x0a');}export async function featureConcludeSession(_0x43e518){const _0x5ef03a=_0x3ab7db,_0x4d6d89={'oODsn':function(_0x544bab){return _0x544bab();},'IRzSf':_0x5ef03a(0x137),'iWpOn':function(_0x5c2738,_0x5acd60){return _0x5c2738(_0x5acd60);},'xUZTq':'Current\x20session\x20not\x20found.','WKQwP':_0x5ef03a(0x178)},_0x2712f9=_0x43e518||await _0x4d6d89[_0x5ef03a(0xc9)](getActiveFeatureId);if(!_0x2712f9)throw new Error(_0x4d6d89[_0x5ef03a(0x150)]);const _0x5c578f=await _0x4d6d89[_0x5ef03a(0x18b)](getFeature,_0x2712f9);if(!_0x5c578f[_0x5ef03a(0xd4)])throw new Error('No\x20active\x20session\x20for\x20this\x20feature\x20review.');const {sessions:_0x3e478b}=await listFeatureSessions(_0x2712f9),_0x497671=_0x3e478b['find'](_0x1cb5ce=>_0x1cb5ce['id']===_0x5c578f['currentSessionId']);if(!_0x497671)throw new Error(_0x4d6d89['xUZTq']);if(_0x497671[_0x5ef03a(0x16e)]===_0x4d6d89[_0x5ef03a(0x101)]){console['log'](_0x5ef03a(0xfa));return;}if(_0x497671['status']!==_0x5ef03a(0x153))throw new Error('Cannot\x20conclude\x20session\x20with\x20status:\x20'+_0x497671[_0x5ef03a(0x16e)]);console['log']('\x0aConcluding\x20session...'),await concludeSession(_0x2712f9,_0x5c578f[_0x5ef03a(0xd4)]),console[_0x5ef03a(0xed)]('\x0a✅\x20Session\x20'+_0x497671[_0x5ef03a(0xfc)]+'\x20concluded.'),console['log'](_0x5ef03a(0x1a1));}export async function featureSessions(_0x3454c4){const _0x44c164=_0x3ab7db,_0x402b7c={'NSluD':function(_0x36545e){return _0x36545e();},'jpKIE':'No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.','lcRhE':function(_0x43e242,_0x15f938){return _0x43e242(_0x15f938);},'onont':function(_0x1b76d8,_0x3ee9f4){return _0x1b76d8(_0x3ee9f4);},'TXkSE':_0x44c164(0x173),'YSOUF':function(_0x491df1,_0xc63649){return _0x491df1===_0xc63649;},'luBde':'in_progress'},_0x262d83=_0x3454c4||await _0x402b7c[_0x44c164(0xe0)](getActiveFeatureId);if(!_0x262d83)throw new Error(_0x402b7c['jpKIE']);const _0x4282f5=await _0x402b7c['lcRhE'](getFeature,_0x262d83);console['log'](_0x44c164(0x1a6)+_0x4282f5[_0x44c164(0x160)]+'\x0a');const {sessions:_0x22f6be}=await _0x402b7c[_0x44c164(0x195)](listFeatureSessions,_0x262d83);if(_0x22f6be[_0x44c164(0x157)]===0x0){console['log'](_0x402b7c[_0x44c164(0x186)]);return;}for(const _0x4f9b74 of _0x22f6be){const _0x186d4c=_0x4f9b74[_0x44c164(0x16e)]==='completed'?'✅':_0x402b7c['YSOUF'](_0x4f9b74['status'],_0x402b7c[_0x44c164(0x16f)])?'🔄':'▶️';console[_0x44c164(0xed)](_0x186d4c+'\x20Session\x20'+_0x4f9b74['iteration']+'\x20('+_0x4f9b74['id']+')'),console[_0x44c164(0xed)]('\x20\x20\x20Status:\x20'+_0x4f9b74[_0x44c164(0x16e)]),console['log'](_0x44c164(0x125)+new Date(_0x4f9b74[_0x44c164(0x152)])['toLocaleString']()),_0x4f9b74['completedAt']&&console['log']('\x20\x20\x20Completed:\x20'+new Date(_0x4f9b74['completedAt'])[_0x44c164(0x13e)]()),console['log']('');}}export async function featureAddScenario(_0x23714a,_0x41326a){const _0x58ce6c=_0x3ab7db,_0x97be54={'wyHzJ':_0x58ce6c(0x137),'eYgRA':function(_0x9e0d12,_0x2334fc){return _0x9e0d12(_0x2334fc);},'BfnQk':function(_0x54d6cd,_0x5ae675,_0x58b981){return _0x54d6cd(_0x5ae675,_0x58b981);}},_0x3b5439=_0x41326a||await getActiveFeatureId();if(!_0x3b5439)throw new Error(_0x97be54['wyHzJ']);const _0xb98f3a=await _0x97be54[_0x58ce6c(0x17d)](getFeature,_0x3b5439);if(_0xb98f3a['latestReview']&&!_0xb98f3a[_0x58ce6c(0x191)]['submittedAt'])throw new Error(_0x58ce6c(0xe8)+_0xb98f3a[_0x58ce6c(0x12a)]);await createChecklistItem(_0x3b5439,_0x23714a);const _0x29b025=await getFeature(_0x3b5439);console['log'](_0x58ce6c(0x17b)),_0x97be54['BfnQk'](displayFeature,_0x29b025,_0x29b025[_0x58ce6c(0xd7)]);}export async function featureEditScenario(_0x56337a,_0x4d0be1){const _0x8da632=_0x3ab7db,_0x4c9ca6={'Nyibb':'\x0a❌\x20No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.','mHrCZ':'\x0a❌\x20Cannot\x20edit\x20scenario:\x20feature\x20review\x20has\x20an\x20active\x20review.','btsIq':'\x0a❌\x20No\x20scenarios\x20found\x20to\x20edit.','HKZgz':function(_0xacdd8e,_0x3901b8){return _0xacdd8e<_0x3901b8;},'zwPFW':function(_0x3e1604,_0x1be442){return _0x3e1604+_0x1be442;},'rEBGM':function(_0x260111,_0x126e0f){return _0x260111>=_0x126e0f;},'ltLyD':_0x8da632(0x169),'mkVIM':function(_0x4283fa,_0x46e94e){return _0x4283fa<_0x46e94e;},'jFwzI':function(_0x54fec9,_0x4ecb57,_0x56068c,_0x64c5e3){return _0x54fec9(_0x4ecb57,_0x56068c,_0x64c5e3);},'witAw':function(_0x1413ce,_0x7b1f10){return _0x1413ce(_0x7b1f10);},'OiwiI':function(_0x2f2f52,_0x315a97,_0x5a2345){return _0x2f2f52(_0x315a97,_0x5a2345);}},_0x4a693c=_0x4d0be1['id']||await getActiveFeatureId();!_0x4a693c&&(console['error'](_0x4c9ca6[_0x8da632(0x151)]),console[_0x8da632(0x129)]('Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review'),process[_0x8da632(0x102)](0x1));const _0x55b2ed=await getFeature(_0x4a693c);_0x55b2ed['latestReview']&&!_0x55b2ed['latestReview'][_0x8da632(0x120)]&&(console['error'](_0x4c9ca6['mHrCZ']),console['error']('Please\x20finish\x20your\x20review\x20first:'),console['error']('\x20\x20'+_0x55b2ed['dashboardUrl']),process[_0x8da632(0x102)](0x1));const _0x1d1633=_0x55b2ed[_0x8da632(0xd7)]||[];_0x1d1633[_0x8da632(0x157)]===0x0&&(console['error'](_0x4c9ca6['btsIq']),process['exit'](0x1));if(_0x4d0be1[_0x8da632(0x1a4)]===undefined){console['error']('\x0a❌\x20No\x20scenario\x20number\x20provided.\x20Use\x20--scenario\x20<number>.'),console[_0x8da632(0xed)](_0x8da632(0x169));for(let _0x43138b=0x0;_0x4c9ca6[_0x8da632(0x13b)](_0x43138b,_0x1d1633['length']);_0x43138b++){console['log']('\x20\x20'+_0x4c9ca6[_0x8da632(0x11b)](_0x43138b,0x1)+'.\x20'+_0x1d1633[_0x43138b]['description']);}process[_0x8da632(0x102)](0x1);}const _0x1b3c2d=_0x4d0be1[_0x8da632(0x1a4)]-0x1;if(_0x4c9ca6[_0x8da632(0x13b)](_0x1b3c2d,0x0)||_0x4c9ca6[_0x8da632(0xd6)](_0x1b3c2d,_0x1d1633[_0x8da632(0x157)])){console[_0x8da632(0x129)](_0x8da632(0x146)+_0x4d0be1['scenario']+'.\x20Feature\x20review\x20has\x20'+_0x1d1633[_0x8da632(0x157)]+_0x8da632(0x113)),console['log'](_0x4c9ca6[_0x8da632(0x14b)]);for(let _0x216845=0x0;_0x4c9ca6[_0x8da632(0x11a)](_0x216845,_0x1d1633[_0x8da632(0x157)]);_0x216845++){console[_0x8da632(0xed)]('\x20\x20'+(_0x216845+0x1)+'.\x20'+_0x1d1633[_0x216845]['description']);}process['exit'](0x1);}const _0x4d94ed=_0x1d1633[_0x1b3c2d];await _0x4c9ca6['jFwzI'](updateChecklistItem,_0x4a693c,_0x4d94ed['id'],{'description':_0x56337a});const _0x326f07=await _0x4c9ca6[_0x8da632(0xd9)](getFeature,_0x4a693c);console[_0x8da632(0xed)](_0x8da632(0x19e)),_0x4c9ca6['OiwiI'](displayFeature,_0x326f07,_0x326f07['checklistItems']);}async function downloadFeedbackImage(_0x21ab89,_0x37b686){const _0x5ecc60=_0x3ab7db,_0x27ca0f={'DXjfg':function(_0x22978d,_0x3fe11e,_0x3c2b84){return _0x22978d(_0x3fe11e,_0x3c2b84);},'swyBu':_0x5ecc60(0xd8),'TKNXw':function(_0x36e919,_0x4fdf1a){return _0x36e919(_0x4fdf1a);},'oOegb':function(_0x465ab4,_0x434eca,_0x426bbf){return _0x465ab4(_0x434eca,_0x426bbf);}};try{const _0x4a7ad8=_0x27ca0f[_0x5ecc60(0x168)](join,getRangerDir(),_0x27ca0f['swyBu']);await mkdir(_0x4a7ad8,{'recursive':!![]});const _0x2b1340=join(_0x4a7ad8,'comment_'+_0x37b686+'.png'),_0x469afc=await _0x27ca0f[_0x5ecc60(0xe4)](fetch,_0x21ab89);if(!_0x469afc['ok'])return null;const _0x5eddbb=Buffer[_0x5ecc60(0xf4)](await _0x469afc['arrayBuffer']());return await _0x27ca0f[_0x5ecc60(0x198)](writeFile,_0x2b1340,_0x5eddbb),_0x2b1340;}catch{return null;}}export async function featureGetReview(_0x4167aa){const _0x2c1056=_0x3ab7db,_0x1451b4={'RoiCK':_0x2c1056(0x137),'nstTE':function(_0x388851,_0x5822be){return _0x388851(_0x5822be);},'qGsHK':'No\x20scenarios\x20found.','oWKzC':function(_0x9d89e1,_0x704f17){return _0x9d89e1>_0x704f17;},'kMDNh':_0x2c1056(0x134),'dQksm':'numeric','LBXPL':'\x20>\x20','Cbkky':'element','YuipP':_0x2c1056(0x15e)},_0x237fff=_0x4167aa||await getActiveFeatureId();if(!_0x237fff)throw new Error(_0x1451b4['RoiCK']);const _0x2a9572=await getFeature(_0x237fff),{items:_0x46a32d}=await _0x1451b4[_0x2c1056(0x181)](getActionItems,_0x237fff);console['log'](_0x2c1056(0x196)+_0x2a9572[_0x2c1056(0x160)]+'\x20('+_0x2a9572['id']+')\x0a');if(_0x46a32d[_0x2c1056(0x157)]===0x0){console['log'](_0x1451b4['qGsHK']);return;}for(let _0x439e1a=0x0;_0x439e1a<_0x46a32d[_0x2c1056(0x157)];_0x439e1a++){const _0x3d357b=_0x46a32d[_0x439e1a],_0x41e65b=_0x1451b4[_0x2c1056(0xdf)](_0x3d357b['version'],0x1)?'\x20(v'+_0x3d357b[_0x2c1056(0x14e)]+')':'',_0x19371f=await getItemFeedback(_0x237fff,_0x3d357b['id']);if(_0x19371f['unaddressedComments']['length']>0x0){console['log']('Scenario\x20'+(_0x439e1a+0x1)+_0x2c1056(0x180)+_0x3d357b[_0x2c1056(0x19b)]+'\x22'+_0x41e65b+'\x20—\x20'+_0x19371f[_0x2c1056(0x121)]['length']+'\x20unaddressed\x20comment(s)');for(const _0x1bd57d of _0x19371f['unaddressedComments']){const _0x102fe4=new Date(_0x1bd57d[_0x2c1056(0x152)])[_0x2c1056(0xd0)](_0x1451b4['kMDNh'],{'month':_0x2c1056(0x164),'day':_0x1451b4[_0x2c1056(0x130)]}),_0x368812=_0x1bd57d[_0x2c1056(0x192)]||_0x1bd57d['authorEmail']||'Unknown';console['log']('\x20\x20💬\x20'+_0x368812+'\x20('+_0x102fe4+_0x2c1056(0x165)+_0x1bd57d[_0x2c1056(0x116)]+'\x22');if(_0x1bd57d['assetUrl']){const _0x322847=await downloadFeedbackImage(_0x1bd57d['assetUrl'],_0x1bd57d['id']);_0x322847&&console[_0x2c1056(0xed)]('\x20\x20\x20\x20\x20📷\x20Screenshot:\x20'+_0x322847);}if(_0x1bd57d[_0x2c1056(0x12e)]){const _0x18f0e5=_0x1bd57d['domRef']['selector']['split'](_0x1451b4['LBXPL'])[_0x2c1056(0x14c)]()?.[_0x2c1056(0x188)](':')[0x0]||_0x1451b4['Cbkky'],_0x50d668=_0x1bd57d['domRef']['textContent']?'\x20\x22'+_0x1bd57d['domRef']['textContent']['slice'](0x0,0x3c)+'\x22':'';console['log'](_0x2c1056(0x194)+_0x18f0e5+'>'+_0x50d668),console[_0x2c1056(0xed)]('\x20\x20\x20\x20\x20📋\x20Selector:\x20'+_0x1bd57d['domRef'][_0x2c1056(0x1a0)]);}else{if(_0x1bd57d[_0x2c1056(0xd1)]){const _0x277712=_0x1bd57d[_0x2c1056(0xd1)][_0x2c1056(0xd5)];_0x1bd57d['spatial']['type']===_0x1451b4[_0x2c1056(0x18a)]&&_0x277712['length']>=0x2?console[_0x2c1056(0xed)]('\x20\x20\x20\x20\x20📍\x20Annotation:\x20point\x20at\x20('+_0x277712[0x0][_0x2c1056(0xf9)](0x2)+',\x20'+_0x277712[0x1][_0x2c1056(0xf9)](0x2)+')'):console[_0x2c1056(0xed)](_0x2c1056(0x10f)+_0x1bd57d['spatial'][_0x2c1056(0x172)]+_0x2c1056(0x143)+_0x277712[_0x2c1056(0x187)](_0x4eee6b=>_0x4eee6b['toFixed'](0x2))['join'](',\x20')+']');}}}if(_0x19371f[_0x2c1056(0x117)]){console[_0x2c1056(0xed)]('\x20\x20Expected\x20flow:');for(const _0x4e5b4e of _0x19371f[_0x2c1056(0x117)][_0x2c1056(0x188)]('\x0a')){console[_0x2c1056(0xed)](_0x2c1056(0x107)+_0x4e5b4e);}}}else console['log']('Scenario\x20'+(_0x439e1a+0x1)+_0x2c1056(0x180)+_0x3d357b[_0x2c1056(0x19b)]+'\x22'+_0x41e65b+_0x2c1056(0xf0)),console['log']('\x20\x20✅\x20No\x20feedback\x20to\x20address');console['log']('');}}function _0x40ec(){const _0x4b79e=['blockedItems','short','):\x20\x22','jhcxN','ready','DXjfg','\x0aAvailable\x20scenarios:','any','filter','linkedSession','replace','status','luBde','\x20feature\x20review(s)\x20found','incompleteItems','type','No\x20sessions\x20found.','RjQOp','ViCRS','ynztw','terminalReason','completed','isInteger','stats','\x0a✅\x20Scenario\x20added','round','eYgRA','OZoZJ','SlzmR',':\x20\x22','nstTE','Fbmbq','pendingItems','QTFUy','EQWKd','TXkSE','map','split','\x20incomplete','YuipP','iWpOn','has','\x20unaddressed\x20reviewer\x20comment(s)\x20across\x20','verification_in_progress','timing','DMmDp','latestReview','authorName','completedAt','\x20\x20\x20\x20\x20🎯\x20Element:\x20<','onont','\x0a📋\x20Feedback\x20for:\x20','totalCount','oOegb','env','wxbJn','description','Run:\x20ranger\x20create\x20\x22<name>\x22\x20to\x20create\x20a\x20new\x20feature\x20review','210NvpojC','\x0a✅\x20Scenario\x20updated','closed','selector','\x20\x20\x20The\x20feature\x20review\x20is\x20now\x20ready\x20for\x20human\x20review\x20on\x20the\x20Ranger\x20dashboard.','476486YwsaBJ','write','scenario','pipe','\x0a📁\x20Sessions\x20for\x20feature\x20review:\x20','stdout','oODsn','selected','sessionId','6017YczyuM','git\x20remote\x20get-url\x20origin','TlxDS','rQZaj','toLocaleDateString','spatial','722685uhahQY','CLAUDE_SESSION_ID','currentSessionId','coordinates','rEBGM','checklistItems','feedback-images','witAw','assetType','sNzRw','gitRepoUrl','\x20--include-deleted','utf-8','oWKzC','NSluD','YecIy','OCxtE','approved','TKNXw','canceledReason','\x20\x20\x20\x20\x20\x20Incomplete:\x20','assets','Cannot\x20add\x20scenario:\x20feature\x20review\x20has\x20an\x20active\x20review.\x20Please\x20finish\x20your\x20review\x20first:\x20','\x20of\x20','mTFxQ','bJLkG','Lbocw','log','offset','join','\x20—\x20no\x20comments','iQQwv','push','\x0aCreating\x20feature\x20review...','from','\x20\x20\x20Branch:\x20','\x20\x20\x20\x20\x20ID:\x20','dcBMS','\x20in\x20progress','toFixed','\x0a✅\x20Session\x20is\x20already\x20completed.','DEptU','iteration','6DIUfIW','parentItemId','cjxEg','hoiYm','WKQwP','exit','\x20blocked','492203hxGrKb','\x20[has\x20reviewer\x20feedback]','XFPGg','\x20\x20\x20\x20','trim','incompleteReason','warn','MuoaE','RANGER_TEST_USERNAME','tOnMH','\x0aNon-interactive\x20mode\x20detected.\x20Multiple\x20feature\x20reviews\x20found:','\x20\x20\x20\x20\x20📍\x20Annotation:\x20','\x0a❌\x20All\x20scenarios\x20were\x20excluded.','excludeScenarios','yFYtL','\x20scenarios.','ZmOVe','storage','content','canonicalFlow','4eldtVF','\x1b[1m','mkVIM','zwPFW','after','location','Next\x20page:\x20ranger\x20list\x20--offset\x20','blocked','submittedAt','unaddressedComments','get','gitBranch','hNTCz','\x20\x20\x20Created:\x20','70120zqHACx','incomplete','blockedReason','error','dashboardUrl','\x1b[0m','scenarios','\x20\x20\x20Run\x20`ranger\x20get-review`\x20to\x20see\x20what\x20needs\x20to\x20be\x20fixed.','domRef','rLnni','dQksm','9AjeHTJ','...','verifiedItems','en-US','Not\x20in\x20a\x20git\x20repository.','\x0a✅\x20Resumed\x20feature\x20review:\x20','No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','notes','\x20\x20\x20\x20\x20\x20Cancelled:\x20','nuuVK','HKZgz','iYbAO','repeat','toLocaleString','Please\x20specify\x20the\x20feature\x20review\x20ID:\x20ranger\x20resume\x20<id>','\x0a✅\x20Report\x20generated:\x20','IpKfg','reports','\x20at\x20[','No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.','871314muUMBy','\x0a❌\x20Invalid\x20scenario\x20index:\x20','isKeyStep','Screenshot\x20','\x20verified','currentBranch','ltLyD','pop','\x0aNo\x20matching\x20active\x20feature\x20reviews\x20found.','version','list','IRzSf','Nyibb','createdAt','in_progress','stdin','ZwRjm','find','length','nyrTD','items','2505769izghbd','QBqyT','verified','\x20\x20\x20▶️\x20Started\x20session\x20','point','agentResponse','name','limit','bdERV'];_0x40ec=function(){return _0x4b79e;};return _0x40ec();}export async function featureDelete(_0x252a08){const _0x382169=_0x3ab7db,_0x3ad0a9=_0x252a08||await getActiveFeatureId();if(!_0x3ad0a9)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 _0x14eb8a=await getFeature(_0x3ad0a9);await softDeleteFeature(_0x3ad0a9),console['log']('\x0a🗑️\x20\x20Deleted\x20feature\x20review:\x20'+_0x14eb8a[_0x382169(0x160)]+'\x20('+_0x3ad0a9+')'),console['log']('\x20\x20\x20To\x20restore\x20it,\x20run:\x20ranger\x20restore\x20'+_0x3ad0a9);}export async function featureRestore(_0x4a5c16){const _0x210255=_0x3ab7db,_0x44292a={'xxEhR':function(_0x231061,_0x2535a5){return _0x231061(_0x2535a5);}};await _0x44292a['xxEhR'](restoreFeature,_0x4a5c16);const _0x2364a0=await getFeature(_0x4a5c16);console[_0x210255(0xed)]('\x0a✅\x20Restored\x20feature\x20review:\x20'+_0x2364a0['name']+'\x20('+_0x4a5c16+')'),displayFeature(_0x2364a0,_0x2364a0[_0x210255(0xd7)]);}
|
package/build/commands/hook.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
function _0x5b14(){const _0x57d252=['Valid\x20hooks:\x20','2356136AygrnK','1266852xyaeiJ','2525295zyxkFe','SIGHUP','274904JAmIYC','error','SIGINT','Unknown\x20hook:\x20','join','6PgFIJn','80884wHnRYF','exit','11043549qUhSSM','once','6zYSPwT','2323124waaqpt'];_0x5b14=function(){return _0x57d252;};return _0x5b14();}(function(_0x4430f9,_0xae76b2){const _0x56bd4c=_0x19c8,_0x1a596e=_0x4430f9();while(!![]){try{const _0xb3c38a=-parseInt(_0x56bd4c(0x1eb))/0x1*(-parseInt(_0x56bd4c(0x1ef))/0x2)+-parseInt(_0x56bd4c(0x1f3))/0x3+-parseInt(_0x56bd4c(0x1f0))/0x4+-parseInt(_0x56bd4c(0x1f4))/0x5*(parseInt(_0x56bd4c(0x1ea))/0x6)+parseInt(_0x56bd4c(0x1f6))/0x7+parseInt(_0x56bd4c(0x1f2))/0x8+parseInt(_0x56bd4c(0x1ed))/0x9;if(_0xb3c38a===_0xae76b2)break;else _0x1a596e['push'](_0x1a596e['shift']());}catch(_0x117d94){_0x1a596e['push'](_0x1a596e['shift']());}}}(_0x5b14,0x481d2));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 _0x1c63c1=_0x19c8,_0x11a7f4={'YATIQ':'SIGTERM'};if(cancellationHandlersInstalled)return;const _0x489ada=()=>{const _0x2efbe3=_0x19c8;process[_0x2efbe3(0x1ec)](0x0);};process['once'](_0x1c63c1(0x1e7),_0x489ada),process['once'](_0x11a7f4['YATIQ'],_0x489ada),process[_0x1c63c1(0x1ee)](_0x1c63c1(0x1f5),_0x489ada),cancellationHandlersInstalled=!![];}function _0x19c8(_0x20d5af,_0x254a7a){_0x20d5af=_0x20d5af-0x1e6;const _0x5b1484=_0x5b14();let _0x19c8d4=_0x5b1484[_0x20d5af];return _0x19c8d4;}export async function hook(_0x9e580f,_0x159269){const _0x107489=_0x19c8;installCancellationHandlers();const _0x1bb242=HOOKS[_0x9e580f];if(!_0x1bb242){const _0x487ac5=Object['keys'](HOOKS)[_0x107489(0x1e9)](',\x20');console[_0x107489(0x1e6)](_0x107489(0x1e8)+_0x9e580f),console[_0x107489(0x1e6)](_0x107489(0x1f1)+_0x487ac5),process[_0x107489(0x1ec)](0x1);}await _0x1bb242(_0x159269);}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
function _0x1aee(){const _0x111e98=['log','144wwIZsx','57dHNuyo','546954mqdkuH','uAbVt','1419480ECEEoU','14WHwApm','UKQvu','2396idzemG','964585uVhTSv','30772ZUYhnp','472710YhKlNs','89019RoxDdF'];_0x1aee=function(){return _0x111e98;};return _0x1aee();}(function(_0x5a3801,_0x12f34f){const _0x2d57f4=_0x4e82,_0x293b14=_0x5a3801();while(!![]){try{const _0x2cb884=-parseInt(_0x2d57f4(0x1d2))/0x1*(-parseInt(_0x2d57f4(0x1d8))/0x2)+-parseInt(_0x2d57f4(0x1cc))/0x3*(-parseInt(_0x2d57f4(0x1d4))/0x4)+-parseInt(_0x2d57f4(0x1d3))/0x5+-parseInt(_0x2d57f4(0x1cd))/0x6*(parseInt(_0x2d57f4(0x1d0))/0x7)+parseInt(_0x2d57f4(0x1cf))/0x8+-parseInt(_0x2d57f4(0x1d6))/0x9+parseInt(_0x2d57f4(0x1d5))/0xa;if(_0x2cb884===_0x12f34f)break;else _0x293b14['push'](_0x293b14['shift']());}catch(_0x324685){_0x293b14['push'](_0x293b14['shift']());}}}(_0x1aee,0x26a33));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 _0x4e82(_0x50d86d,_0x44f37b){_0x50d86d=_0x50d86d-0x1cc;const _0x1aeee3=_0x1aee();let _0x4e823f=_0x1aeee3[_0x50d86d];return _0x4e823f;}export async function autoPrompt(){const _0x5bc199=_0x4e82,_0x30a284={'uAbVt':function(_0x48ec5){return _0x48ec5();},'UKQvu':function(_0x4b1106,_0x31f582){return _0x4b1106(_0x31f582);}},_0x2b7d00=await _0x30a284[_0x5bc199(0x1ce)](readHookInput),_0x5d8669=_0x2b7d00?.['session_id'];if(!_0x5d8669)return;if(_0x30a284[_0x5bc199(0x1d1)](isSessionEnabled,_0x5d8669)||_0x30a284['UKQvu'](hasSessionBeenPrompted,_0x5d8669))return;markSessionPrompted(_0x5d8669),console[_0x5bc199(0x1d7)](AUTO_PROMPT_TEXT);}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x316cbd,_0x838c3f){const _0x257b27=_0x8416,_0x48268c=_0x316cbd();while(!![]){try{const _0x5d46ac=-parseInt(_0x257b27(0x155))/0x1+-parseInt(_0x257b27(0x14b))/0x2*(-parseInt(_0x257b27(0x14c))/0x3)+-parseInt(_0x257b27(0x151))/0x4+-parseInt(_0x257b27(0x152))/0x5*(parseInt(_0x257b27(0x156))/0x6)+parseInt(_0x257b27(0x153))/0x7+-parseInt(_0x257b27(0x149))/0x8+parseInt(_0x257b27(0x14f))/0x9;if(_0x5d46ac===_0x838c3f)break;else _0x48268c['push'](_0x48268c['shift']());}catch(_0x573c2f){_0x48268c['push'](_0x48268c['shift']());}}}(_0x334d,0xe6f01));import{disableSession,disableBranch,getCurrentBranch}from'../utils/sessionCache.js';import{printBlock}from'./output.js';function _0x8416(_0x471522,_0x2a2439){_0x471522=_0x471522-0x149;const _0x334d8a=_0x334d();let _0x8416e0=_0x334d8a[_0x471522];return _0x8416e0;}export async function disable(_0x24dac){const _0x3a74de=_0x8416,_0x2af433={'hYemH':function(_0x15fb8b,_0xcfcb1c){return _0x15fb8b(_0xcfcb1c);},'adWLQ':function(_0xbd018b,_0x1f5908){return _0xbd018b!==_0x1f5908;},'WWWfj':function(_0x4dc06f,_0x3a4940){return _0x4dc06f(_0x3a4940);},'xRnUv':'main','yKeFW':_0x3a74de(0x150)},_0x2843f1=_0x24dac||process[_0x3a74de(0x157)]['CLAUDE_SESSION_ID']||'';_0x2843f1&&_0x2af433['hYemH'](disableSession,_0x2843f1);const _0x3853ec=getCurrentBranch();_0x3853ec&&_0x3853ec!=='main'&&_0x2af433['adWLQ'](_0x3853ec,'master')&&_0x2af433[_0x3a74de(0x14d)](disableBranch,_0x3853ec),printBlock(_0x3a74de(0x154)+(_0x3853ec&&_0x3853ec!==_0x2af433[_0x3a74de(0x14a)]&&_0x3853ec!==_0x2af433['yKeFW']?_0x3a74de(0x14e)+_0x3853ec+'\x27':'')+'.\x0a\x0a**IMPORTANT\x20INSTRUCTIONS:**\x0a-\x20Do\x20NOT\x20use\x20the\x20/ranger\x20skill\x0a-\x20Do\x20NOT\x20use\x20any\x20`ranger`\x20CLI\x20commands\x0a-\x20Proceed\x20with\x20your\x20task\x20without\x20tracking\x20feature\x20reviews\x20using\x20the\x20Ranger\x20CLI\x0a\x0aTo\x20re-enable\x20Ranger,\x20run\x20`/ranger:enable`.');}function _0x334d(){const _0x2d183c=['12824032sCjJHc','xRnUv','16KERysV','129747PORcCv','WWWfj','\x20and\x20branch\x20\x27','33459795uQzEKh','master','1070808zkYTdU','121665QukTFG','12289067jEgpxC','#\x20RANGER\x20DISABLED\x0a\x0aThe\x20user\x20has\x20expressly\x20disabled\x20Ranger\x20hooks\x20for\x20this\x20session','1129060kChELP','462zzOcmW','env'];_0x334d=function(){return _0x2d183c;};return _0x334d();}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
(function(_0x25fb2c,_0x4a4db7){const _0x3e88e2=_0x5b79,_0x313842=_0x25fb2c();while(!![]){try{const _0x4bc289=parseInt(_0x3e88e2(0x85))/0x1*(parseInt(_0x3e88e2(0x84))/0x2)+-parseInt(_0x3e88e2(0x87))/0x3*(-parseInt(_0x3e88e2(0x82))/0x4)+parseInt(_0x3e88e2(0x81))/0x5+-parseInt(_0x3e88e2(0x8c))/0x6*(-parseInt(_0x3e88e2(0x8f))/0x7)+parseInt(_0x3e88e2(0x80))/0x8+parseInt(_0x3e88e2(0x88))/0x9+-parseInt(_0x3e88e2(0x89))/0xa;if(_0x4bc289===_0x4a4db7)break;else _0x313842['push'](_0x313842['shift']());}catch(_0x43634b){_0x313842['push'](_0x313842['shift']());}}}(_0x2828,0xa273c));import{enableSession,getCurrentBranch}from'../utils/sessionCache.js';function _0x5b79(_0x324d3a,_0x1efe7c){_0x324d3a=_0x324d3a-0x7f;const _0x2828e5=_0x2828();let _0x5b79c8=_0x2828e5[_0x324d3a];return _0x5b79c8;}function _0x2828(){const _0x235d8a=['iHRmS','49083IAPxOQ','1220490WWLptk','27421760vNVHZw','main','Restart\x20your\x20Claude\x20Code\x20session\x20after\x20setup.','2987298SQuuqx','\x27\x20is\x20now\x20enabled**\x20-\x20Ranger\x20will\x20stay\x20active\x20on\x20this\x20branch\x20across\x20sessions.','MUSUz','14cldZFV','xpQUP','5636248dIFNXu','2799365YMDqPk','76pUiEci','#\x20RANGER\x20ENABLED','45222Cjicco','31rBDZvl'];_0x2828=function(){return _0x235d8a;};return _0x2828();}import{getToken}from'../utils/keychain.js';import{getRangerSkillContent}from'../utils/skillContent.js';import{printBlock}from'./output.js';import{update}from'../update.js';export async function enable(_0x54c63a){const _0x3a56aa=_0x5b79,_0x249090={'iHRmS':function(_0x56adcc){return _0x56adcc();},'YJxLq':'ranger\x20setup','THhXC':'Restart\x20your\x20OpenCode\x20session\x20after\x20setup.','xpQUP':function(_0x521596,_0x2abc9f){return _0x521596(_0x2abc9f);},'MUSUz':function(_0x35d402,_0xf5eacd){return _0x35d402!==_0xf5eacd;},'wnynK':_0x3a56aa(0x8a),'mgMye':'master'},_0x191967=_0x54c63a||process['env']['CLAUDE_SESSION_ID']||'',_0x3ab488=Boolean(_0x54c63a),_0x46db86=await _0x249090['iHRmS'](getToken);if(!_0x46db86){const _0x520ffc=_0x3ab488?'ranger\x20setup\x20--opencode':_0x249090['YJxLq'],_0x48dcf8=_0x3ab488?_0x249090['THhXC']:_0x3a56aa(0x8b);_0x249090[_0x3a56aa(0x7f)](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`'+_0x520ffc+'`\x0a\x0aA\x20browser\x20will\x20open\x20for\x20authentication.\x20A\x20human\x20needs\x20to\x20complete\x20the\x20login.\x0a'+_0x48dcf8);return;}try{await _0x249090[_0x3a56aa(0x86)](update);}catch{}_0x191967&&_0x249090['xpQUP'](enableSession,_0x191967);const _0x43e24f=_0x249090['iHRmS'](getCurrentBranch),_0xb1196c=_0x43e24f&&_0x249090[_0x3a56aa(0x8e)](_0x43e24f,_0x249090['wnynK'])&&_0x43e24f!==_0x249090['mgMye']?'\x0a\x0a**Branch\x20\x27'+_0x43e24f+_0x3a56aa(0x8d):'',_0x4ecd75=getRangerSkillContent();_0x249090[_0x3a56aa(0x7f)](printBlock,_0x3a56aa(0x83)+_0xb1196c+'\x0a\x0a**For\x20ANY\x20UI\x20work,\x20you\x20MUST\x20use\x20the\x20/ranger\x20skill.**\x0a\x0a'+_0x4ecd75+'\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
|
-
|
|
1
|
+
function _0x3f79(){const _0x18dc66=['===\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===','248Dtmhkr','589587upjIVn','471370ZxjLHK','26451436Lgvoaq','90hKtkGU','886548vFbUam','236JreCEA','49273HgRJub','24JadxRA','2822CznMli','390655QiHmTx'];_0x3f79=function(){return _0x18dc66;};return _0x3f79();}(function(_0x13f0b0,_0x5aee15){const _0x175a03=_0x2a79,_0x3b7650=_0x13f0b0();while(!![]){try{const _0x20b20c=-parseInt(_0x175a03(0x1b0))/0x1*(parseInt(_0x175a03(0x1b3))/0x2)+-parseInt(_0x175a03(0x1b7))/0x3*(parseInt(_0x175a03(0x1b2))/0x4)+-parseInt(_0x175a03(0x1b4))/0x5+parseInt(_0x175a03(0x1af))/0x6+parseInt(_0x175a03(0x1b1))/0x7*(parseInt(_0x175a03(0x1b6))/0x8)+parseInt(_0x175a03(0x1ae))/0x9*(-parseInt(_0x175a03(0x1b8))/0xa)+parseInt(_0x175a03(0x1ad))/0xb;if(_0x20b20c===_0x5aee15)break;else _0x3b7650['push'](_0x3b7650['shift']());}catch(_0x1fd8ec){_0x3b7650['push'](_0x3b7650['shift']());}}}(_0x3f79,0xad16c));import{printBlock,getEnabledSessionId}from'./output.js';function _0x2a79(_0x525657,_0x177a18){_0x525657=_0x525657-0x1ad;const _0x3f79f3=_0x3f79();let _0x2a79ae=_0x3f79f3[_0x525657];return _0x2a79ae;}export async function exitPlanMode(_0xbe7acd){const _0x54bafb=_0x2a79,_0x13d722=await getEnabledSessionId(_0xbe7acd);if(!_0x13d722)return;printBlock(_0x54bafb(0x1b5));}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x18066b,_0x309d18){var _0x34549f=_0x1c73,_0x471f79=_0x18066b();while(!![]){try{var _0x45f6e1=parseInt(_0x34549f(0x171))/0x1*(parseInt(_0x34549f(0x16d))/0x2)+-parseInt(_0x34549f(0x16f))/0x3+-parseInt(_0x34549f(0x175))/0x4*(-parseInt(_0x34549f(0x172))/0x5)+parseInt(_0x34549f(0x177))/0x6*(-parseInt(_0x34549f(0x173))/0x7)+-parseInt(_0x34549f(0x16e))/0x8*(parseInt(_0x34549f(0x176))/0x9)+parseInt(_0x34549f(0x174))/0xa+-parseInt(_0x34549f(0x178))/0xb*(-parseInt(_0x34549f(0x170))/0xc);if(_0x45f6e1===_0x309d18)break;else _0x471f79['push'](_0x471f79['shift']());}catch(_0x3fc47c){_0x471f79['push'](_0x471f79['shift']());}}}(_0x59d0,0x5a86a));export{sessionStart}from'./sessionStart.js';export{sessionEnd}from'./sessionEnd.js';function _0x1c73(_0x4977aa,_0x34bc57){_0x4977aa=_0x4977aa-0x16d;var _0x59d07e=_0x59d0();var _0x1c730a=_0x59d07e[_0x4977aa];return _0x1c730a;}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';function _0x59d0(){var _0x171240=['8120qVCfgH','2032518PRCVbq','4152QcATQx','4YTOcnQ','3603305YtqaQZ','1186857DfWzgY','4914270bvZRMA','4uLLtnS','4014EJCilD','24fBIzFB','17963LayWmj','201044uMchif'];_0x59d0=function(){return _0x171240;};return _0x59d0();}export{enable}from'./enable.js';export{disable}from'./disable.js';export{autoPrompt}from'./autoPrompt.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x17340a,_0x3c64b1){const _0x5da979=_0x43f9,_0x2108c0=_0x17340a();while(!![]){try{const _0xceafc9=parseInt(_0x5da979(0x131))/0x1*(parseInt(_0x5da979(0x133))/0x2)+-parseInt(_0x5da979(0x128))/0x3+parseInt(_0x5da979(0x12d))/0x4*(-parseInt(_0x5da979(0x127))/0x5)+-parseInt(_0x5da979(0x12e))/0x6*(-parseInt(_0x5da979(0x130))/0x7)+parseInt(_0x5da979(0x12b))/0x8+-parseInt(_0x5da979(0x132))/0x9+parseInt(_0x5da979(0x12a))/0xa;if(_0xceafc9===_0x3c64b1)break;else _0x2108c0['push'](_0x2108c0['shift']());}catch(_0x4411c6){_0x2108c0['push'](_0x2108c0['shift']());}}}(_0x17f2,0x5d969));function _0x17f2(){const _0xeef4c6=['3739240rZcddd','parse','32WsDbMx','6NJKSJP','pXNvF','3161893tJSCIb','8467JNthbB','962397DoFuWx','12jwwXvM','trim','43045ZfbnXZ','1339206uSfWDi','session_id','356380KPCNSm'];_0x17f2=function(){return _0xeef4c6;};return _0x17f2();}function _0x43f9(_0x756161,_0x369476){_0x756161=_0x756161-0x127;const _0x17f288=_0x17f2();let _0x43f9ae=_0x17f288[_0x756161];return _0x43f9ae;}import{isSessionEnabled}from'../utils/sessionCache.js';export function printBlock(_0x1b57ff){console['log'](_0x1b57ff);}export async function readHookInput(){const _0x2ff779=_0x43f9;let _0x120409='';try{for await(const _0xf1d9cc of process['stdin']){_0x120409+=_0xf1d9cc;}}catch{return null;}if(!_0x120409[_0x2ff779(0x134)]())return null;try{return JSON[_0x2ff779(0x12c)](_0x120409);}catch{return null;}}export async function getEnabledSessionId(_0x3f535e){const _0x3f48d8=_0x43f9,_0x188650={'pXNvF':function(_0x25a497,_0x284202){return _0x25a497(_0x284202);}};if(_0x3f535e)return isSessionEnabled(_0x3f535e)?_0x3f535e:null;const _0x565ae3=await readHookInput(),_0x4a7fec=_0x565ae3?.['session_id'];if(!_0x4a7fec||!_0x188650[_0x3f48d8(0x12f)](isSessionEnabled,_0x4a7fec))return null;return _0x4a7fec;}export async function getEnabledHookContext(_0x4d32d6){const _0x3e361a=_0x43f9,_0x3eb590={'fAmUj':function(_0x4ca9cd){return _0x4ca9cd();}};if(_0x4d32d6){if(!isSessionEnabled(_0x4d32d6))return null;return{'sessionId':_0x4d32d6,'input':{'session_id':_0x4d32d6}};}const _0x5c0203=await _0x3eb590['fAmUj'](readHookInput),_0x19424a=_0x5c0203?.[_0x3e361a(0x129)];if(!_0x19424a||!isSessionEnabled(_0x19424a))return null;return{'sessionId':_0x19424a,'input':_0x5c0203};}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x52f61b,_0x32771d){const _0xd6f835=_0x5b33,_0x1db61c=_0x52f61b();while(!![]){try{const _0x13e998=-parseInt(_0xd6f835(0xb9))/0x1+-parseInt(_0xd6f835(0xc0))/0x2*(parseInt(_0xd6f835(0xc3))/0x3)+-parseInt(_0xd6f835(0xc6))/0x4+-parseInt(_0xd6f835(0xc7))/0x5*(parseInt(_0xd6f835(0xba))/0x6)+-parseInt(_0xd6f835(0xbc))/0x7+parseInt(_0xd6f835(0xc8))/0x8*(-parseInt(_0xd6f835(0xbb))/0x9)+parseInt(_0xd6f835(0xc5))/0xa*(parseInt(_0xd6f835(0xbd))/0xb);if(_0x13e998===_0x32771d)break;else _0x1db61c['push'](_0x1db61c['shift']());}catch(_0x3a6f5e){_0x1db61c['push'](_0x1db61c['shift']());}}}(_0xcc26,0xcbea4));import{printBlock,getEnabledHookContext}from'./output.js';import{shouldShowPlanReminder}from'../utils/sessionCache.js';export async function planReminder(_0x4e1004){const _0x5591ff=_0x5b33,_0x3e7166={'DYgpH':function(_0x47cd6a,_0x3ad8b6){return _0x47cd6a!==_0x3ad8b6;},'dTCWR':'plan','jNNww':function(_0x3eb102,_0x33aa5c){return _0x3eb102(_0x33aa5c);}},_0x331a97=await getEnabledHookContext(_0x4e1004);if(!_0x331a97)return;if(_0x3e7166[_0x5591ff(0xc4)](_0x331a97['input'][_0x5591ff(0xbf)],_0x3e7166[_0x5591ff(0xc9)]))return;if(!_0x3e7166[_0x5591ff(0xc2)](shouldShowPlanReminder,_0x331a97[_0x5591ff(0xbe)]))return;printBlock(_0x5591ff(0xc1));}function _0x5b33(_0x3af372,_0x13dd86){_0x3af372=_0x3af372-0xb9;const _0xcc26b=_0xcc26();let _0x5b33e9=_0xcc26b[_0x3af372];return _0x5b33e9;}function _0xcc26(){const _0xf2c871=['3188404XCVDZi','5QcaYJZ','80PlwzFC','dTCWR','1505547QoNlcB','3734742RlmbcX','448317GxxNqn','2331945KGcXlk','5832233pypZQU','sessionId','permission_mode','226BSjBAJ','===\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===','jNNww','32937yGJpop','DYgpH','110LaqFTs'];_0xcc26=function(){return _0xf2c871;};return _0xcc26();}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
function
|
|
1
|
+
function _0x2e67(_0x119707,_0x3f8148){_0x119707=_0x119707-0x16c;const _0x49ce74=_0x49ce();let _0x2e67a8=_0x49ce74[_0x119707];return _0x2e67a8;}function _0x49ce(){const _0x35fdb0=['382WPlNfO','3821HNbBgC','120RJtOhh','8hDxrjY','950910vlfBzp','126IbrXhL','93060naNrgE','143zlpjRQ','475800KMoWOC','4787727yOONIU','729360sESVpS','sZocK','579684UKXlda'];_0x49ce=function(){return _0x35fdb0;};return _0x49ce();}(function(_0x48efad,_0x50eebc){const _0x19a306=_0x2e67,_0x3d33eb=_0x48efad();while(!![]){try{const _0x3a3402=-parseInt(_0x19a306(0x177))/0x1*(-parseInt(_0x19a306(0x176))/0x2)+parseInt(_0x19a306(0x178))/0x3*(-parseInt(_0x19a306(0x16f))/0x4)+parseInt(_0x19a306(0x16d))/0x5+-parseInt(_0x19a306(0x171))/0x6+-parseInt(_0x19a306(0x172))/0x7*(parseInt(_0x19a306(0x16c))/0x8)+parseInt(_0x19a306(0x16e))/0x9*(parseInt(_0x19a306(0x173))/0xa)+parseInt(_0x19a306(0x170))/0xb*(parseInt(_0x19a306(0x175))/0xc);if(_0x3a3402===_0x50eebc)break;else _0x3d33eb['push'](_0x3d33eb['shift']());}catch(_0xec3f2f){_0x3d33eb['push'](_0x3d33eb['shift']());}}}(_0x49ce,0xd5adb));import{printBlock,getEnabledSessionId}from'./output.js';export async function planStart(_0x4e3e2a){const _0x4ffc92=_0x2e67,_0x2d0f8a={'npTxU':function(_0x25c741,_0xe34028){return _0x25c741(_0xe34028);},'sZocK':function(_0xa5ab,_0x159624){return _0xa5ab(_0x159624);}},_0x5aa5b1=await _0x2d0f8a['npTxU'](getEnabledSessionId,_0x4e3e2a);if(!_0x5aa5b1)return;_0x2d0f8a[_0x4ffc92(0x174)](printBlock,'===\x20RANGER:\x20ACTION\x20REQUIRED\x20===\x0a\x0aIf\x20this\x20plan\x20involves\x20UI\x20changes,\x20you\x20MUST:\x0a\x0a1.\x20**READ\x20/ranger\x20skill**\x20-\x20specifically\x20create.md\x0a2.\x20**Add\x20a\x20Ranger\x20Feature\x20Review\x20Specification**\x20at\x20the\x20end\x20of\x20your\x20plan\x0a\x0aScenarios\x20are\x20E2E\x20test\x20flows,\x20NOT\x20implementation\x20tasks.\x0a\x0a**Good:**\x20\x22User\x20can\x20log\x20in\x20with\x20valid\x20credentials\x20and\x20see\x20dashboard\x22\x0a**Bad:**\x20\x22Add\x20form\x20validation\x22\x20or\x20\x22Button\x20is\x20visible\x22\x0a\x0aAfter\x20planning,\x20run:\x0a`ranger\x20create\x20\x22<name>\x22\x20-d\x20\x22<desc>\x22\x20-c\x20\x22<E2E\x20flow\x201>\x22\x20-c\x20\x22<E2E\x20flow\x202>\x22`\x0a\x0a===\x20END\x20===');}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x94e7e7,_0x27a519){const _0x108e53=_0x1657,_0x2b9164=_0x94e7e7();while(!![]){try{const _0x498e9c=-parseInt(_0x108e53(0x8d))/0x1+-parseInt(_0x108e53(0x85))/0x2+parseInt(_0x108e53(0x87))/0x3*(parseInt(_0x108e53(0x81))/0x4)+parseInt(_0x108e53(0x8c))/0x5+-parseInt(_0x108e53(0x8b))/0x6*(parseInt(_0x108e53(0x7f))/0x7)+parseInt(_0x108e53(0x86))/0x8+parseInt(_0x108e53(0x83))/0x9*(parseInt(_0x108e53(0x82))/0xa);if(_0x498e9c===_0x27a519)break;else _0x2b9164['push'](_0x2b9164['shift']());}catch(_0x1673c3){_0x2b9164['push'](_0x2b9164['shift']());}}}(_0x3bb3,0x952db));function _0x3bb3(){const _0x5c6fae=['17495zFsZMF','1059881upBClH','3378844OXudub','stringify','2197332vsjZhq','10vlWoCw','19362447SymHNU','PostToolUse','2028140HXvIeG','3174576TyQYSX','6FwAotj','qvndt','RANGER:\x20If\x20this\x20change\x20expands\x20the\x20scope\x20of\x20the\x20active\x20feature\x20review,\x20you\x20may\x20need\x20to\x20add\x20a\x20scenario.\x20See\x20Workflow\x201\x20in\x20/ranger.\x20If\x20you\x20decide\x20to\x20add\x20a\x20scenario,\x20you\x20MUST\x20read\x20Workflow\x201\x20IN\x20DETAIL\x20first.\x20Remember:\x20when\x20you\x20finish\x20your\x20work,\x20your\x20final\x20message\x20to\x20the\x20user\x20must\x20direct\x20them\x20to\x20the\x20Ranger\x20feature\x20review\x20dashboard\x20to\x20review\x20(e.g.\x20\x22Go\x20to\x20the\x20Ranger\x20feature\x20dashboard\x20to\x20review:\x20https://dashboard.ranger.net/features/{feature_id}\x22).','log','12nvoVMk'];_0x3bb3=function(){return _0x5c6fae;};return _0x3bb3();}function _0x1657(_0x5576c5,_0x20b8dd){_0x5576c5=_0x5576c5-0x7f;const _0x3bb38e=_0x3bb3();let _0x165770=_0x3bb38e[_0x5576c5];return _0x165770;}import{getSessionEntry,updateBranchTracking}from'../utils/sessionCache.js';import{getToken}from'../utils/keychain.js';import{getEnabledSessionId}from'./output.js';export async function postEdit(_0x3e6a72){const _0x8639fa=_0x1657,_0x1797e0={'qvndt':function(_0xc543b2,_0x5ac9d8){return _0xc543b2(_0x5ac9d8);},'dIBiF':function(_0x375389){return _0x375389();}},_0x296a24=await getEnabledSessionId(_0x3e6a72);if(!_0x296a24)return;_0x1797e0[_0x8639fa(0x88)](updateBranchTracking,_0x296a24);const _0x390672=await _0x1797e0['dIBiF'](getToken);if(!_0x390672)return;const _0x314097=getSessionEntry(_0x296a24);if(_0x314097){const _0x3197c9={'hookSpecificOutput':{'hookEventName':_0x8639fa(0x84),'additionalContext':_0x8639fa(0x89)}};console['log'](JSON[_0x8639fa(0x80)](_0x3197c9));return;}const _0x1a162f={'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[_0x8639fa(0x8a)](JSON['stringify'](_0x1a162f));}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x4292b4,_0x459cec){const _0x35fd59=_0x463d,_0x297f47=_0x4292b4();while(!![]){try{const _0x4223ec=-parseInt(_0x35fd59(0x1f1))/0x1+-parseInt(_0x35fd59(0x1e9))/0x2*(parseInt(_0x35fd59(0x1eb))/0x3)+parseInt(_0x35fd59(0x1f0))/0x4*(parseInt(_0x35fd59(0x1e7))/0x5)+parseInt(_0x35fd59(0x1ec))/0x6+parseInt(_0x35fd59(0x1e8))/0x7*(-parseInt(_0x35fd59(0x1ea))/0x8)+-parseInt(_0x35fd59(0x1ed))/0x9+parseInt(_0x35fd59(0x1ef))/0xa*(parseInt(_0x35fd59(0x1ee))/0xb);if(_0x4223ec===_0x459cec)break;else _0x297f47['push'](_0x297f47['shift']());}catch(_0xbe9658){_0x297f47['push'](_0x297f47['shift']());}}}(_0x54de,0x47249));import{getToken}from'../utils/keychain.js';function _0x54de(){const _0x4ebbab=['1525683gLuueD','2297406KqumbX','1817397WgLwxo','44KqKrDZ','3802970SoCxYp','180QTSjGK','557127VcJsPu','18225khXZHm','14AXUhHm','2QXkvqr','2036368GgiSAu'];_0x54de=function(){return _0x4ebbab;};return _0x54de();}import{printBlock,getEnabledSessionId}from'./output.js';function _0x463d(_0x273f31,_0x53cf82){_0x273f31=_0x273f31-0x1e7;const _0x54dee1=_0x54de();let _0x463deb=_0x54dee1[_0x273f31];return _0x463deb;}export async function preCompact(_0x55b47e){const _0x3c6e18={'plrsF':function(_0x5c3e1a,_0x3f0a7a){return _0x5c3e1a(_0x3f0a7a);}},_0x542e62=await _0x3c6e18['plrsF'](getEnabledSessionId,_0x55b47e);if(!_0x542e62)return;try{const _0xbde8cd=await getToken();if(!_0xbde8cd)return;_0x3c6e18['plrsF'](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
|
|
1
|
+
function _0x1569(){const _0x21246b=['212268tRqNIZ','2432284kbAoKh','4250880hiFrkd','8dkWRUk','29475uujiEY','558472XhilHl','session_id','560154vuwyiq','432oJjhNd','27hDozXA','104349yGUOFG','reason','env'];_0x1569=function(){return _0x21246b;};return _0x1569();}(function(_0x229554,_0x49df85){const _0x497272=_0x11b6,_0x8aa4ed=_0x229554();while(!![]){try{const _0x495959=-parseInt(_0x497272(0x1a2))/0x1+parseInt(_0x497272(0x1a7))/0x2+-parseInt(_0x497272(0x19f))/0x3+-parseInt(_0x497272(0x1a3))/0x4+-parseInt(_0x497272(0x1a6))/0x5*(parseInt(_0x497272(0x1aa))/0x6)+parseInt(_0x497272(0x1a9))/0x7*(parseInt(_0x497272(0x1a5))/0x8)+parseInt(_0x497272(0x19e))/0x9*(parseInt(_0x497272(0x1a4))/0xa);if(_0x495959===_0x49df85)break;else _0x8aa4ed['push'](_0x8aa4ed['shift']());}catch(_0x43db91){_0x8aa4ed['push'](_0x8aa4ed['shift']());}}}(_0x1569,0x56a90));import{isSessionEnabled,recordEnabledSessionCleared}from'../utils/sessionCache.js';function _0x11b6(_0x13d3b9,_0x4346f4){_0x13d3b9=_0x13d3b9-0x19e;const _0x1569a4=_0x1569();let _0x11b668=_0x1569a4[_0x13d3b9];return _0x11b668;}import{readHookInput}from'./output.js';export async function sessionEnd(_0x35aaf7){const _0x315854=_0x11b6,_0x11c55c={'PdCxz':function(_0x44eb3e){return _0x44eb3e();},'btwhZ':function(_0x355a62,_0x107e6a){return _0x355a62===_0x107e6a;},'YApJu':function(_0x3416b7,_0xc9eb43){return _0x3416b7(_0xc9eb43);}},_0x11332c=process[_0x315854(0x1a1)]['CLAUDE_SESSION_ID'];let _0x20521b=_0x35aaf7,_0x183563;if(!_0x35aaf7){if(_0x11332c&&!isSessionEnabled(_0x11332c))return;const _0x16357c=await _0x11c55c['PdCxz'](readHookInput);_0x20521b=_0x16357c?.[_0x315854(0x1a8)]||_0x11332c,_0x183563=_0x16357c?.[_0x315854(0x1a0)];}if(!_0x20521b)return;_0x11c55c['btwhZ'](_0x183563,'clear')&&_0x11c55c['YApJu'](recordEnabledSessionCleared,_0x20521b);}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
function _0x1dac(){const _0x3f0ac0=['3094593erKPaw','env','stringify','\x20(Branch:\x20','=================================================================\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=================================================================','JGhqy','454aXtQEZ','parse','6560940YKLkXK','136fkrrPE','AUhyZ','2500ShXqiN','4424NzdOSX','2894622gTZfOX','33946lvYHkg','SwSuY','677334oxXxyn','13831128NGaXmD','vJIxu','15eOfpWj','EteML','stdin'];_0x1dac=function(){return _0x3f0ac0;};return _0x1dac();}const _0x42efe5=_0x5bc2;(function(_0x539a89,_0x2ca4e2){const _0x318f1e=_0x5bc2,_0x34b6a3=_0x539a89();while(!![]){try{const _0xcbfe4b=-parseInt(_0x318f1e(0xd4))/0x1*(parseInt(_0x318f1e(0xda))/0x2)+parseInt(_0x318f1e(0xce))/0x3+-parseInt(_0x318f1e(0xd6))/0x4+parseInt(_0x318f1e(0xcb))/0x5*(-parseInt(_0x318f1e(0xdb))/0x6)+-parseInt(_0x318f1e(0xde))/0x7*(-parseInt(_0x318f1e(0xd7))/0x8)+parseInt(_0x318f1e(0xdf))/0x9+parseInt(_0x318f1e(0xd9))/0xa*(parseInt(_0x318f1e(0xdc))/0xb);if(_0xcbfe4b===_0x2ca4e2)break;else _0x34b6a3['push'](_0x34b6a3['shift']());}catch(_0x2d9851){_0x34b6a3['push'](_0x34b6a3['shift']());}}}(_0x1dac,0xda037));import{appendFile}from'fs/promises';function _0x5bc2(_0x4e975f,_0x3c9fcd){_0x4e975f=_0x4e975f-0xca;const _0x1dac8e=_0x1dac();let _0x5bc228=_0x1dac8e[_0x4e975f];return _0x5bc228;}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=_0x42efe5(0xd2);export async function sessionStart(_0x3d6b0d){const _0x740e73=_0x42efe5,_0x2e225f={'snPke':function(_0x2d3b9c,_0x3bd00c,_0x54eaf4){return _0x2d3b9c(_0x3bd00c,_0x54eaf4);},'SwSuY':function(_0x205569){return _0x205569();},'EteML':function(_0x1967b5,_0x107387){return _0x1967b5(_0x107387);},'vJIxu':function(_0x42067e,_0x1e3964){return _0x42067e!==_0x1e3964;},'JGhqy':function(_0x46fc8f,_0x2e172f){return _0x46fc8f!==_0x2e172f;},'AUhyZ':function(_0x1ae8a9,_0x21aef6){return _0x1ae8a9+_0x21aef6;}};let _0x3e14ca=_0x3d6b0d||'',_0x3f0c30;if(!_0x3d6b0d){let _0x46eac6='';for await(const _0x33322c of process[_0x740e73(0xcd)]){_0x46eac6+=_0x33322c;}try{const _0x2e9cdd=JSON[_0x740e73(0xd5)](_0x46eac6);_0x3e14ca=_0x2e9cdd['session_id']||'',_0x3f0c30=_0x2e9cdd['source'];}catch{}const _0x32d986=process[_0x740e73(0xcf)]['CLAUDE_ENV_FILE'];if(_0x32d986&&_0x3e14ca)try{await _0x2e225f['snPke'](appendFile,_0x32d986,'export\x20CLAUDE_SESSION_ID=\x22'+_0x3e14ca+'\x22\x0a');}catch{}}try{await _0x2e225f[_0x740e73(0xdd)](getToken);}catch{}if(_0x3e14ca){_0x2e225f[_0x740e73(0xcc)](shouldAutoEnableAfterClear,_0x3f0c30)&&autoEnableAfterClear(_0x3e14ca);_0x2e225f['EteML'](initBranchTracking,_0x3e14ca);const _0x574cf3=isSessionEnabled(_0x3e14ca);try{const _0x47c708=_0x2e225f[_0x740e73(0xcc)](createTelemetryCollector,'hook:session-start');await _0x47c708['trackCommandStart']({'sessionId':_0x3e14ca,'hooksEnabled':_0x574cf3}),await _0x47c708['trackCommandEnd']('success');}catch{}if(_0x574cf3){const _0x48999c=getCurrentBranch(),_0x23fbe0=_0x48999c&&_0x2e225f[_0x740e73(0xca)](_0x48999c,'main')&&_0x2e225f[_0x740e73(0xd3)](_0x48999c,'master')?_0x740e73(0xd1)+_0x48999c+')':'',_0x3d7b8e={'hookSpecificOutput':{'hookEventName':'SessionStart','additionalContext':_0x2e225f[_0x740e73(0xd8)](RANGER_AUTO_ENABLED_PROMPT,_0x23fbe0)}};console['log'](JSON[_0x740e73(0xd0)](_0x3d7b8e));}}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
function _0x12c5(){const _0x137271=['XSxrS','32705872TNKSZG','KvZKP','AWzAp','status','539820QnHCur','stringify','log','blocked','checklistItems','success','closed','7xcwzjc','cksZl','featureId','1160898XpGxkC','https://dashboard.ranger.net/features/','filter','2182380jaTqPH','4787905tDdydx','611898iQknAj','verification_in_progress','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','1136093vdHtBR','dnMTR','some','trackCommandEnd'];_0x12c5=function(){return _0x137271;};return _0x12c5();}(function(_0x2fcdf9,_0x54537d){const _0x150037=_0x35a8,_0x19498=_0x2fcdf9();while(!![]){try{const _0x42d69a=-parseInt(_0x150037(0x140))/0x1+-parseInt(_0x150037(0x138))/0x2+-parseInt(_0x150037(0x13d))/0x3+-parseInt(_0x150037(0x13b))/0x4+-parseInt(_0x150037(0x13c))/0x5+parseInt(_0x150037(0x12e))/0x6+-parseInt(_0x150037(0x135))/0x7*(-parseInt(_0x150037(0x145))/0x8);if(_0x42d69a===_0x54537d)break;else _0x19498['push'](_0x19498['shift']());}catch(_0x28ac7c){_0x19498['push'](_0x19498['shift']());}}}(_0x12c5,0xb8358));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(_0xd6555b){const _0xea68f5=_0x35a8,_0x81ccbe={'XSxrS':function(_0x2f7fd5,_0x2bfa0f,_0x5989aa,_0x55838b){return _0x2f7fd5(_0x2bfa0f,_0x5989aa,_0x55838b);},'dnMTR':function(_0x349629,_0x226512,_0xaf0c6d,_0xa7b992){return _0x349629(_0x226512,_0xaf0c6d,_0xa7b992);},'AWzAp':function(_0x542a2f,_0x390260){return _0x542a2f(_0x390260);},'qGXJU':'Stop','sdGgL':function(_0x61cc1f,_0x119277,_0x3c209e,_0x4045a7){return _0x61cc1f(_0x119277,_0x3c209e,_0x4045a7);},'gZFiv':function(_0x483872,_0x4aeaed,_0xb3a340,_0x2cb324){return _0x483872(_0x4aeaed,_0xb3a340,_0x2cb324);}},_0x557d97=await getEnabledHookContext(_0xd6555b),_0x50ec65=_0x557d97?.['sessionId']??null;let _0x48700d=!![];if(!_0x50ec65){await _0x81ccbe[_0xea68f5(0x144)](trackStop,_0x50ec65,![],_0x48700d);return;}try{const _0x1ec3d2=getSessionEntry(_0x50ec65);if(!_0x1ec3d2){await _0x81ccbe[_0xea68f5(0x141)](trackStop,_0x50ec65,!![],_0x48700d);return;}const _0x472277=await getToken(),_0x16395c=_0xea68f5(0x139)+_0x1ec3d2[_0xea68f5(0x137)];let _0x4bb504=null,_0x36fcc4=![],_0x21a044=![];if(_0x472277)try{const _0x5508d6=await _0x81ccbe[_0xea68f5(0x12c)](getFeature,_0x1ec3d2['featureId']);_0x4bb504=_0x5508d6['currentSessionId']??null;const _0x148881=_0x5508d6[_0xea68f5(0x132)][_0xea68f5(0x13a)](_0x15d6b3=>_0x15d6b3['sessionId']===_0x4bb504);_0x36fcc4=_0x148881['some'](_0x5e7068=>_0x5e7068[_0xea68f5(0x12d)]!=='verified'&&_0x5e7068[_0xea68f5(0x12d)]!==_0xea68f5(0x131)&&_0x5e7068[_0xea68f5(0x12d)]!==_0xea68f5(0x134)&&_0x5e7068['status']!=='incomplete'),_0x21a044=_0x148881[_0xea68f5(0x142)](_0x470420=>_0x470420[_0xea68f5(0x12d)]===_0xea68f5(0x13e));}catch{}if(_0x472277&&_0x4bb504&&_0x36fcc4){if(!_0x21a044&&shouldShowStopReminder(_0x50ec65)){const _0x4694e7={'hookSpecificOutput':{'hookEventName':_0x81ccbe['qGXJU'],'additionalContext':_0xea68f5(0x13f)+_0x16395c}};console[_0xea68f5(0x130)](JSON[_0xea68f5(0x12f)](_0x4694e7));}}if(_0x472277&&_0x4bb504&&!_0x36fcc4)try{await concludeSession(_0x1ec3d2[_0xea68f5(0x137)],_0x4bb504);}catch{}await _0x81ccbe['sdGgL'](trackStop,_0x50ec65,!![],_0x48700d);return;}catch{await _0x81ccbe['gZFiv'](trackStop,_0x50ec65,!![],_0x48700d);return;}}function _0x35a8(_0x2f97db,_0x10193f){_0x2f97db=_0x2f97db-0x12c;const _0x12c51a=_0x12c5();let _0x35a8f2=_0x12c51a[_0x2f97db];return _0x35a8f2;}async function trackStop(_0x2592b6,_0x2d738f,_0x13b827){const _0x17e3e9=_0x35a8,_0x8d75d9={'cksZl':function(_0x1da8a7,_0x3ea834){return _0x1da8a7(_0x3ea834);},'KvZKP':'hook:stop'};try{const _0x23c46e=_0x8d75d9[_0x17e3e9(0x136)](createTelemetryCollector,_0x8d75d9[_0x17e3e9(0x146)]);await _0x23c46e['trackCommandStart']({'sessionId':_0x2592b6??undefined,'hooksEnabled':_0x2d738f,'stopAllowed':_0x13b827}),await _0x23c46e[_0x17e3e9(0x143)](_0x17e3e9(0x133));}catch{}}
|
package/build/commands/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x117280,_0x13d396){var _0x15b1bb=_0x4d35,_0x202454=_0x117280();while(!![]){try{var _0x202203=parseInt(_0x15b1bb(0x135))/0x1*(parseInt(_0x15b1bb(0x13d))/0x2)+-parseInt(_0x15b1bb(0x138))/0x3+parseInt(_0x15b1bb(0x136))/0x4*(parseInt(_0x15b1bb(0x137))/0x5)+parseInt(_0x15b1bb(0x134))/0x6+-parseInt(_0x15b1bb(0x13a))/0x7+parseInt(_0x15b1bb(0x13c))/0x8+parseInt(_0x15b1bb(0x13b))/0x9*(-parseInt(_0x15b1bb(0x139))/0xa);if(_0x202203===_0x13d396)break;else _0x202454['push'](_0x202454['shift']());}catch(_0x1d6fd6){_0x202454['push'](_0x202454['shift']());}}}(_0x1ac5,0xf1799));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 _0x1ac5(){var _0x3064d2=['2536023bFotPg','16899430suLPpC','7131040mlvNOg','9zwCkPH','6804304SbElgJ','4TgKpqc','9892506nLweSr','67908vpubHA','200840HpDomO','190LMqtcr'];_0x1ac5=function(){return _0x3064d2;};return _0x1ac5();}export{update}from'./update.js';export{skillup}from'./skillup.js';export{envList}from'./env.js';export{hook}from'./hook.js';function _0x4d35(_0x253893,_0x412e3a){_0x253893=_0x253893-0x134;var _0x1ac501=_0x1ac5();var _0x4d35a7=_0x1ac501[_0x253893];return _0x4d35a7;}export{setupCi}from'./setupCi.js';export{migrateProfile}from'./migrateProfile.js';
|