@ranger-testing/ranger-cli 2.5.0 → 2.5.1
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/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/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/featureReportGenerator.js +1 -1
- package/build/commands/utils/fixWebmDuration.js +1 -1
- package/build/commands/utils/git.js +1 -1
- package/build/commands/utils/keychain.js +1 -1
- package/build/commands/utils/localAgentInstallationsApi.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/rangerConfig.js +1 -1
- package/build/commands/utils/rangerRoot.js +1 -1
- package/build/commands/utils/reportGenerator.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/build/commands/verifyInBrowser.js +1 -1
- package/package.json +1 -1
package/build/commands/config.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const _0x4e0a66=_0x2dcf;(function(_0x215235,_0x5e552f){const _0x38fc03=_0x2dcf,_0x1d405b=_0x215235();while(!![]){try{const _0x35f5e7=parseInt(_0x38fc03(0xd4))/0x1*(parseInt(_0x38fc03(0xcb))/0x2)+parseInt(_0x38fc03(0xc0))/0x3+parseInt(_0x38fc03(0xbf))/0x4+-parseInt(_0x38fc03(0xc4))/0x5+-parseInt(_0x38fc03(0xcc))/0x6+-parseInt(_0x38fc03(0xc6))/0x7+parseInt(_0x38fc03(0xc5))/0x8;if(_0x35f5e7===_0x5e552f)break;else _0x1d405b['push'](_0x1d405b['shift']());}catch(_0x559cdd){_0x1d405b['push'](_0x1d405b['shift']());}}}(_0x397b,0xccfec));import{existsSync}from'fs';import{loadSettings,saveSettings,getNestedValue,setNestedValue,deleteNestedValue,formatSettings,getSettingsPath,getEnvDir}from'./utils/settings.js';function _0x2dcf(_0x1d5b6a,_0x1c3b38){_0x1d5b6a=_0x1d5b6a-0xb9;const _0x397bea=_0x397b();let _0x2dcff3=_0x397bea[_0x1d5b6a];return _0x2dcff3;}const BOOLEAN_KEYS=['headless',_0x4e0a66(0xd3)];function parseValue(_0x5700bc,_0x129fa1){const _0x86ae05=_0x4e0a66,_0x2b89f3={'zNIyU':'false'};if(BOOLEAN_KEYS['includes'](_0x5700bc)){if(_0x129fa1===_0x86ae05(0xbc))return!![];if(_0x129fa1===_0x2b89f3[_0x86ae05(0xc3)])return![];throw new Error('Invalid\x20value\x20for\x20'+_0x5700bc+_0x86ae05(0xc1));}return _0x129fa1;}export async function configSet(_0x11b08d,_0x359436,_0x5a3ad2){const _0x6f1e0c=_0x4e0a66,_0x4860e1={'xsChf':function(_0x18a391,_0x148715){return _0x18a391(_0x148715);},'vFpRD':function(_0x2037c1,_0x9f85ce,_0x2c6e9e,_0x10459f){return _0x2037c1(_0x9f85ce,_0x2c6e9e,_0x10459f);}},_0x23fbac=getEnvDir(_0x11b08d);if(!_0x4860e1[_0x6f1e0c(0xc2)](existsSync,_0x23fbac))throw new Error(_0x6f1e0c(0xd0)+_0x11b08d+'\x22\x20does\x20not\x20exist.\x20Run:\x20ranger\x20profile\x20add\x20'+_0x11b08d);const _0x334cbf=await loadSettings(_0x11b08d),_0x59957a=parseValue(_0x359436,_0x5a3ad2);_0x4860e1['vFpRD'](setNestedValue,_0x334cbf,_0x359436,_0x59957a),await saveSettings(_0x11b08d,_0x334cbf),console['log']('Set\x20'+_0x359436+_0x6f1e0c(0xbd)+_0x59957a);}function _0x397b(){const _0x2df9fa=[':\x20expected\x20\x22true\x22\x20or\x20\x22false\x22','xsChf','zNIyU','6757840jFCiFZ','14539808AYIBcS','5663357ICmSmZ','RZQlN','log','\x22\x20does\x20not\x20exist.','(not\x20set)','982CthNCP','3466782NfxarU','Removed\x20','stringify','\x22\x20not\x20found','Profile\x20\x22','BfgYf','Key\x20\x22','allowInsecureLocalhost','818mjCDMK','VmfbW','gWuPL','No\x20configuration\x20set\x20for\x20\x22','true','\x20=\x20','WbGJo','2497436JrajPu','2203809hlpYwN'];_0x397b=function(){return _0x2df9fa;};return _0x397b();}export async function configGet(_0x18d5ca,_0x296471){const _0x29892e=_0x4e0a66,_0xb51811={'WbGJo':function(_0x57df6e,_0x5219c3){return _0x57df6e(_0x5219c3);},'iOuRf':function(_0x195455,_0x2b9416){return _0x195455(_0x2b9416);},'gDKnv':function(_0x5015c4,_0x165594,_0x16eb84){return _0x5015c4(_0x165594,_0x16eb84);},'pxUeQ':function(_0x4d15dd,_0x301952){return _0x4d15dd===_0x301952;},'BfgYf':'object'},_0xe17cd2=_0xb51811[_0x29892e(0xbe)](getEnvDir,_0x18d5ca);if(!existsSync(_0xe17cd2))throw new Error('Profile\x20\x22'+_0x18d5ca+_0x29892e(0xc9));const _0x1497a0=await _0xb51811['iOuRf'](loadSettings,_0x18d5ca),_0x5c2bb4=_0xb51811['gDKnv'](getNestedValue,_0x1497a0,_0x296471);if(_0xb51811['pxUeQ'](_0x5c2bb4,undefined))console['log'](_0x29892e(0xca));else typeof _0x5c2bb4===_0xb51811[_0x29892e(0xd1)]?console[_0x29892e(0xc8)](JSON[_0x29892e(0xce)](_0x5c2bb4,null,0x2)):console[_0x29892e(0xc8)](_0x5c2bb4);}export async function configList(_0x2df159){const _0xf70f16=_0x4e0a66,_0x1ee00c={'VmfbW':function(_0x41150f,_0x3a0957){return _0x41150f(_0x3a0957);},'RZQlN':function(_0x475716,_0x4376ee){return _0x475716(_0x4376ee);}},_0x3170ae=_0x1ee00c['VmfbW'](getSettingsPath,_0x2df159);if(!existsSync(_0x3170ae)){const _0x3e4646=_0x1ee00c[_0xf70f16(0xb9)](getEnvDir,_0x2df159);if(!existsSync(_0x3e4646))throw new Error('Profile\x20\x22'+_0x2df159+_0xf70f16(0xc9));console['log'](_0xf70f16(0xbb)+_0x2df159+'\x22');return;}const _0x3c1487=await loadSettings(_0x2df159),_0x43d945=_0x1ee00c[_0xf70f16(0xc7)](formatSettings,_0x3c1487);!_0x43d945?console[_0xf70f16(0xc8)]('No\x20configuration\x20set\x20for\x20\x22'+_0x2df159+'\x22'):console['log'](_0x43d945);}export async function configUnset(_0x48bdce,_0x23d7be){const _0x4a301b=_0x4e0a66,_0x5545c8={'VoZXX':function(_0x4388c2,_0x45d097){return _0x4388c2(_0x45d097);},'gWuPL':function(_0x2ddea9,_0x2d04e9,_0x4cafa9){return _0x2ddea9(_0x2d04e9,_0x4cafa9);},'hMOdk':function(_0x4e9a28,_0x231d43,_0x39a717){return _0x4e9a28(_0x231d43,_0x39a717);}},_0x6c9543=getEnvDir(_0x48bdce);if(!_0x5545c8['VoZXX'](existsSync,_0x6c9543))throw new Error(_0x4a301b(0xd0)+_0x48bdce+'\x22\x20does\x20not\x20exist.');const _0x5eb664=await loadSettings(_0x48bdce),_0xaac4e2=_0x5545c8[_0x4a301b(0xba)](deleteNestedValue,_0x5eb664,_0x23d7be);_0xaac4e2?(await _0x5545c8['hMOdk'](saveSettings,_0x48bdce,_0x5eb664),console['log'](_0x4a301b(0xcd)+_0x23d7be)):console[_0x4a301b(0xc8)](_0x4a301b(0xd2)+_0x23d7be+_0x4a301b(0xcf));}
|
package/build/commands/env.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const _0x5d64ae=_0x5e14;(function(_0x4c3032,_0x12e58c){const _0x5ddc72=_0x5e14,_0x52b2a8=_0x4c3032();while(!![]){try{const _0x1fadc3=parseInt(_0x5ddc72(0xff))/0x1*(-parseInt(_0x5ddc72(0xe3))/0x2)+parseInt(_0x5ddc72(0xe0))/0x3*(parseInt(_0x5ddc72(0xfc))/0x4)+-parseInt(_0x5ddc72(0xf7))/0x5+parseInt(_0x5ddc72(0xe5))/0x6*(-parseInt(_0x5ddc72(0xf6))/0x7)+-parseInt(_0x5ddc72(0xfb))/0x8*(parseInt(_0x5ddc72(0xe8))/0x9)+-parseInt(_0x5ddc72(0xe4))/0xa+parseInt(_0x5ddc72(0xf8))/0xb;if(_0x1fadc3===_0x12e58c)break;else _0x52b2a8['push'](_0x52b2a8['shift']());}catch(_0x43320c){_0x52b2a8['push'](_0x52b2a8['shift']());}}}(_0x228a,0x899d9));import{readdir,stat}from'fs/promises';import{join}from'path';import{existsSync}from'fs';function _0x228a(){const _0x1318c1=['Run:\x20ranger\x20profile\x20add\x20<profile-name>','bug-bashes','18JvStqX','log','startsWith','PAnXM','FEgyV','CGVll','push','lFFLD','woHcO','sort','\x20\x20\x20\x20\x20\x20URL:\x20','settings.json','khVgz','isDirectory','7lMuuRV','1338895PvtOsg','19527750gnnqlJ','pDgHH','endsWith','2850216WRsoKu','4pPDsuu','reports','environmentDetails','3026yqPnUv','local','2813403wtSRnc','sessions','.txt','28fOhgbq','8814580PNGniy','1471338USMByQ'];_0x228a=function(){return _0x1318c1;};return _0x228a();}import{getRangerDir}from'./utils/rangerRoot.js';import{loadSettings}from'./utils/settings.js';import{readActiveProfileName}from'./utils/activeProfile.js';const NON_ENV_DIRS=[_0x5d64ae(0xe1),_0x5d64ae(0xe7),_0x5d64ae(0xfd),_0x5d64ae(0x100),'ci'];export async function getEnvNames(){const _0x1d3e2c=_0x5d64ae,_0x367985={'pDgHH':function(_0x167fff,_0x47456c,_0x7f5a9d){return _0x167fff(_0x47456c,_0x7f5a9d);},'woHcO':function(_0x2d85a9,_0x2e2017){return _0x2d85a9(_0x2e2017);},'khVgz':function(_0x105bc4,_0x2ddea6){return _0x105bc4(_0x2ddea6);},'Dbhdc':function(_0x390b25,_0x43111b,_0x52e4fe){return _0x390b25(_0x43111b,_0x52e4fe);},'ZifMP':_0x1d3e2c(0xe2),'FEgyV':function(_0x28bf79,_0x557fce){return _0x28bf79(_0x557fce);},'lFFLD':_0x1d3e2c(0xf3),'CGVll':'legacy'},_0x16fb12=getRangerDir();if(!existsSync(_0x16fb12))return{'envNames':[],'activeEnv':null,'envTypes':{}};const _0x57e74a=await readActiveProfileName(),_0x3743b3=[],_0x1f1b53={},_0x317260=_0x367985[_0x1d3e2c(0xf9)](join,_0x16fb12,'local');if(_0x367985['woHcO'](existsSync,_0x317260)){const _0x5bf63d=await readdir(_0x317260);for(const _0x23d451 of _0x5bf63d){const _0x14af56=join(_0x317260,_0x23d451),_0x3a63dd=await _0x367985[_0x1d3e2c(0xf0)](stat,_0x14af56);_0x3a63dd[_0x1d3e2c(0xf5)]()&&(_0x3743b3['push'](_0x23d451),_0x1f1b53[_0x23d451]=_0x1d3e2c(0x100));}}const _0x37da29=_0x367985[_0x1d3e2c(0xf9)](join,_0x16fb12,'ci');if(existsSync(_0x37da29)){const _0x5882d2=await _0x367985['khVgz'](readdir,_0x37da29);for(const _0x412453 of _0x5882d2){const _0x4c6c5c=_0x367985['Dbhdc'](join,_0x37da29,_0x412453),_0x1fc499=await _0x367985[_0x1d3e2c(0xf0)](stat,_0x4c6c5c);_0x1fc499[_0x1d3e2c(0xf5)]()&&(_0x3743b3[_0x1d3e2c(0xee)](_0x412453),_0x1f1b53[_0x412453]='ci');}}const _0x2509da=await readdir(_0x16fb12);for(const _0x23584b of _0x2509da){if(NON_ENV_DIRS['includes'](_0x23584b))continue;if(_0x23584b[_0x1d3e2c(0xea)]('.'))continue;if(_0x23584b[_0x1d3e2c(0xfa)](_0x367985['ZifMP']))continue;const _0x80373d=join(_0x16fb12,_0x23584b),_0x539d63=await _0x367985[_0x1d3e2c(0xf4)](stat,_0x80373d);_0x539d63['isDirectory']()&&_0x367985[_0x1d3e2c(0xec)](existsSync,join(_0x80373d,_0x367985[_0x1d3e2c(0xef)]))&&(!_0x3743b3['includes'](_0x23584b)&&(_0x3743b3[_0x1d3e2c(0xee)](_0x23584b),_0x1f1b53[_0x23584b]=_0x367985[_0x1d3e2c(0xed)]));}return{'envNames':_0x3743b3,'activeEnv':_0x57e74a,'envTypes':_0x1f1b53};}function _0x5e14(_0x18a7a3,_0x560307){_0x18a7a3=_0x18a7a3-0xe0;const _0x228a9f=_0x228a();let _0x5e14ee=_0x228a9f[_0x18a7a3];return _0x5e14ee;}export async function envList(){const _0x1cb474=_0x5d64ae,_0x404d7d={'ElKJV':function(_0x50af10,_0xd86d18){return _0x50af10===_0xd86d18;},'bFDRN':'\x0aNo\x20profiles\x20found.','iDgtF':_0x1cb474(0xe6),'rsMDd':function(_0x3cabd4,_0x5b07c7){return _0x3cabd4(_0x5b07c7);},'PAnXM':'legacy'},{envNames:_0x267773,activeEnv:_0x41ed5b,envTypes:_0x4ee6cb}=await getEnvNames();if(_0x404d7d['ElKJV'](_0x267773['length'],0x0)){console[_0x1cb474(0xe9)](_0x404d7d['bFDRN']),console[_0x1cb474(0xe9)](_0x404d7d['iDgtF']);return;}console['log']('\x0aProfiles:');for(const _0x5a1780 of _0x267773[_0x1cb474(0xf1)]()){const _0x338597=_0x404d7d['ElKJV'](_0x5a1780,_0x41ed5b),_0x352ed4=_0x4ee6cb[_0x5a1780]||_0x1cb474(0x100),_0x1f98fb=await _0x404d7d['rsMDd'](loadSettings,_0x5a1780),_0x2195ad=_0x352ed4===_0x404d7d[_0x1cb474(0xeb)]?'':'\x20['+_0x352ed4+']';console['log']('\x20\x20'+(_0x338597?'*\x20':'\x20\x20')+_0x5a1780+_0x2195ad),_0x1f98fb['baseUrl']&&console[_0x1cb474(0xe9)](_0x1cb474(0xf2)+_0x1f98fb['baseUrl']),_0x1f98fb['environmentDetails']&&console['log']('\x20\x20\x20\x20\x20\x20Details:\x20'+_0x1f98fb[_0x1cb474(0xfe)]);}_0x41ed5b&&console[_0x1cb474(0xe9)]('\x0a*\x20=\x20active\x20profile');}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const _0xf97093=_0x4a73;(function(_0x4495b1,_0x3a1b90){const _0x4444e0=_0x4a73,_0x2f6e81=_0x4495b1();while(!![]){try{const _0x16d6c5=parseInt(_0x4444e0(0x180))/0x1+-parseInt(_0x4444e0(0x14d))/0x2*(-parseInt(_0x4444e0(0x1c0))/0x3)+-parseInt(_0x4444e0(0x203))/0x4+-parseInt(_0x4444e0(0x1a1))/0x5*(parseInt(_0x4444e0(0x137))/0x6)+-parseInt(_0x4444e0(0x171))/0x7*(-parseInt(_0x4444e0(0x198))/0x8)+parseInt(_0x4444e0(0x17d))/0x9*(-parseInt(_0x4444e0(0x1bc))/0xa)+-parseInt(_0x4444e0(0x181))/0xb;if(_0x16d6c5===_0x3a1b90)break;else _0x2f6e81['push'](_0x2f6e81['shift']());}catch(_0x26ffbd){_0x2f6e81['push'](_0x2f6e81['shift']());}}}(_0x3080,0x2319c));import{readFile,writeFile,mkdir}from'fs/promises';import{join}from'path';import{existsSync}from'fs';import{execSync}from'child_process';import _0x271579 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';function _0x4a73(_0x2e16f3,_0x39c68e){_0x2e16f3=_0x2e16f3-0x121;const _0x308037=_0x3080();let _0x4a73d9=_0x308037[_0x2e16f3];return _0x4a73d9;}const ACTIVE_FEATURE_FILE=_0xf97093(0x177),bold=_0x3c0942=>'\x1b[1m'+_0x3c0942+'\x1b[0m';function getGitRepoUrl(){const _0x4b1be6=_0xf97093,_0x3677fc={'bcdNo':_0x4b1be6(0x166),'QFOXW':_0x4b1be6(0x194),'bQyUU':_0x4b1be6(0x1f3)};try{const _0x512f14=execSync(_0x3677fc['bcdNo'],{'encoding':_0x3677fc[_0x4b1be6(0x1db)],'stdio':[_0x3677fc['bQyUU'],'pipe',_0x3677fc[_0x4b1be6(0x188)]]})[_0x4b1be6(0x17e)]();return _0x512f14[_0x4b1be6(0x1d2)](/\.git$/,'')['replace'](/^git@github\.com:/,'github.com/')[_0x4b1be6(0x1d2)](/^https?:\/\//,'');}catch{return undefined;}}function getGitBranch(){const _0x2a77be=_0xf97093,_0x49b21a={'XkgjO':function(_0x397348,_0x15fe55,_0x4c9305){return _0x397348(_0x15fe55,_0x4c9305);},'lzkUy':'pipe'};try{return _0x49b21a['XkgjO'](execSync,_0x2a77be(0x1f1),{'encoding':'utf-8','stdio':[_0x2a77be(0x1f3),_0x49b21a[_0x2a77be(0x147)],_0x49b21a['lzkUy']]})['trim']();}catch{return undefined;}}export async function getActiveFeatureId(){const _0x24ae64=_0xf97093,_0x4b0c36={'hWzLi':'utf-8'},_0x1bd39c=join(getRangerDir(),ACTIVE_FEATURE_FILE);if(!existsSync(_0x1bd39c))return null;try{const _0x4f768e=await readFile(_0x1bd39c,_0x4b0c36['hWzLi']);return _0x4f768e[_0x24ae64(0x17e)]()||null;}catch{return null;}}async function setActiveFeatureId(_0x2889ec){const _0x4f6d9b=_0xf97093,_0x2fe408=getRangerDir(),_0x5008ab=join(_0x2fe408,ACTIVE_FEATURE_FILE);!existsSync(_0x2fe408)&&await mkdir(_0x2fe408,{'recursive':!![]}),await writeFile(_0x5008ab,_0x2889ec,_0x4f6d9b(0x194));}function getProgressDisplay(_0x304f73){const _0x184ac1=_0xf97093,_0x352536={'rjYFH':function(_0x288d0d,_0x27466b){return _0x288d0d===_0x27466b;},'ylkNd':function(_0x4813a2,_0x37ea03){return _0x4813a2*_0x37ea03;},'HDzIY':function(_0x56ddf0,_0x3d6d5b){return _0x56ddf0/_0x3d6d5b;},'zDFay':function(_0x3a74e9,_0x24e590){return _0x3a74e9>_0x24e590;}},_0x12aeb9=_0x304f73['verifiedItems']||0x0,_0x5b73e6=_0x304f73['verificationInProgressItems']||0x0,_0x14da6a=_0x304f73['blockedItems']||0x0,_0x1ffb2b=_0x304f73[_0x184ac1(0x197)]||0x0,_0x2b2a89=_0x304f73[_0x184ac1(0x15e)]||0x0,_0x3ffc2c=_0x12aeb9+_0x5b73e6+_0x14da6a+_0x1ffb2b+_0x2b2a89;if(_0x352536['rjYFH'](_0x3ffc2c,0x0))return'-';const _0x2fbf39=0xa,_0x4e634f=Math['round'](_0x352536[_0x184ac1(0x1a9)](_0x352536['HDzIY'](_0x12aeb9,_0x3ffc2c),_0x2fbf39)),_0x479a16='█'[_0x184ac1(0x127)](_0x4e634f)+'░'[_0x184ac1(0x127)](_0x2fbf39-_0x4e634f),_0x2b0f1f=[];if(_0x14da6a>0x0)_0x2b0f1f['push'](_0x14da6a+_0x184ac1(0x164));if(_0x352536['zDFay'](_0x1ffb2b,0x0))_0x2b0f1f['push'](_0x1ffb2b+_0x184ac1(0x163));if(_0x5b73e6>0x0)_0x2b0f1f['push'](_0x5b73e6+'\x20in\x20progress');const _0x3633bb=_0x2b0f1f[_0x184ac1(0x1d6)]>0x0?'\x20('+_0x2b0f1f[_0x184ac1(0x1c2)](',\x20')+')':'';return _0x479a16+'\x20'+_0x12aeb9+'/'+_0x3ffc2c+'\x20verified'+_0x3633bb;}function _0x3080(){const _0xbd7dc7=['iMjeQ','terminalReason','pop','9ueTrMe','trim','domRef','168081ihFccR','241681xwttxB','scenarios','\x20>\x20','VcxZL','\x0aCreating\x20feature\x20review...','EKQdU','\x20—\x20','bQyUU','CrkTY','lHybg','kyNpA','\x0aNo\x20feature\x20reviews\x20found.','mwONa','scenario','assetUrl','limit','WXGca','incompleteReason','gitRepoUrl','utf-8','No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.','closed','incompleteItems','1713904prcyBK','ZShAp','lQjOf','RTrIx','\x20\x20\x20Status:\x20','arrayBuffer','zQxHi','unaddressedComments','ucMoY','75uhExrg','\x20unaddressed\x20reviewer\x20comment(s)\x20across\x20','BMtJc','No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','\x0a\x20\x20\x20Scenarios:','find','\x20\x20\x20\x20\x20ID:\x20','env','ylkNd','dashboardUrl','\x0a✅\x20Scenario\x20updated','isTTY','wxbPP','assetType','Step\x20','\x20\x20\x20\x20\x20\x20Incomplete:\x20','status','trimEnd','\x0a❌\x20No\x20scenarios\x20found\x20to\x20include.','HDwIE','PZPcc','\x20\x20\x20Updated\x20branch\x20to:\x20','ETIMj','comment_','/artifacts/','location','completedAt','2846410bSuuuF','notes','gitBranch','\x0a❌\x20Invalid\x20scenario\x20number(s):\x20','15033ntGDFu','CHukU','join','warn','name','map','itOqK','blocked','\x20\x20\x20','any','completed','incomplete','\x20\x20\x20\x20\x20\x20Approved','ACqAx','Scenario\x20','\x20\x20\x20\x20\x20\x20Cancelled:\x20','ZHVuB','uHIWS','replace','LfvYK','\x20\x20Expected\x20flow:','uqfvX','length','JVPPh','jQVhm','\x20of\x20','qHZsG','QFOXW','currentBranch','tjhgD','\x0a❌\x20All\x20scenarios\x20were\x20excluded.','WbJSC','cucCK','feedback-images','spatial','jOgOE','\x0aNo\x20matching\x20active\x20feature\x20reviews\x20found.','/api/v1/mcp/browser-sessions/','POrGO','storage','Rnhgn','MCBaz','yZcOj','UjbNf','in_progress','Hdzoi','\x0a✅\x20Report\x20generated:\x20','xebbM','dezZd','git\x20rev-parse\x20--abbrev-ref\x20HEAD','sessionId','pipe','latestReview','\x20\x20\x20▶️\x20Started\x20session\x20','XwLYW','filter','lNuiG','\x0a➡️\x20\x20Set\x20as\x20active\x20feature\x20review','\x20\x20\x20\x20\x20\x20Blocked:\x20','stepName','\x20\x20\x20Completed:\x20','blockedReason','sYZzi','items','totalCount','.png','assets','413548CExaPz','\x20\x20\x20Description:\x20','numeric','\x20--limit\x20','GfRZA','iteration','split','description','NhbOe','Gdfyg','repeat','all','Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','offset','screenshot','log','Next\x20page:\x20ranger\x20list\x20--offset\x20','HfHYs','\x20--current-branch','textContent','browserSessionId','uFInQ','GkYJl','\x20\x20💬\x20','toFixed','stats','25626mbHMiH','WEQKI','stringify','JKNTn','DtXAu','leVuA','error','\x20\x20\x20\x20\x20📷\x20Screenshot:\x20','No\x20scenarios\x20found.','exit','screenshotUrls','DeAXa','OcjmU','EUGhm','ctzIT','version','lzkUy','...','canceledReason','neFrB','after','gGfHw','94JpBIuY','toLocaleDateString','CzgWv','hSLNN','approved','\x0aConcluding\x20session...','\x0a❌\x20No\x20scenarios\x20found\x20to\x20edit.','AMnjw','\x20--include-deleted','currentSessionId','\x0aAvailable\x20scenarios:','isKeyStep','agentResponse','prompt','checklistItems','Please\x20specify\x20the\x20feature\x20review\x20ID:\x20ranger\x20resume\x20<id>','\x20\x20\x20Branch:\x20','pendingItems','position','\x20(v','parentItemId','authorEmail','\x20incomplete','\x20blocked','jcdNE','git\x20remote\x20get-url\x20origin','toLocaleString','coordinates','iXvnt','style','createdAt','Please\x20finish\x20your\x20review\x20first:','Showing\x20','\x0a✅\x20Session\x20','\x20\x20✅\x20No\x20feedback\x20to\x20address','4|2|3|5|0|1','7jlCtIE','output','lmsuO','\x20scenario(s).','selector','CLAUDE_SESSION_ID','active-feature.txt','submittedAt','en-US'];_0x3080=function(){return _0xbd7dc7;};return _0x3080();}function getCurrentSessionItems(_0x4e5293,_0x246cbf){const _0x1c57af=_0xf97093;if(!_0x4e5293['currentSessionId'])return _0x246cbf['filter'](_0x13b2af=>!_0x13b2af['sessionId']);return _0x246cbf['filter'](_0x1048e5=>_0x1048e5[_0x1c57af(0x1f2)]===_0x4e5293['currentSessionId']||!_0x1048e5[_0x1c57af(0x1f2)]);}function displayFeature(_0x59ecdd,_0x228751){const _0xffc8b6=_0xf97093,_0xa4ec64={'vDFmK':function(_0xf00415,_0x3e1f56){return _0xf00415(_0x3e1f56);},'PZPcc':function(_0x63088b,_0xf1fac3){return _0x63088b>_0xf1fac3;},'kyNpA':_0xffc8b6(0x1a5),'OQVjS':function(_0x59cc83,_0x39e6e6){return _0x59cc83<_0x39e6e6;},'DHkKd':function(_0x569bf8,_0x3b52c5){return _0x569bf8===_0x3b52c5;},'uHIWS':function(_0x519f9b,_0x13faf5){return _0x519f9b===_0x13faf5;},'BMtJc':'verified','bMJoj':function(_0x510dcf,_0x218d0d){return _0x510dcf===_0x218d0d;},'wxbPP':function(_0x3a7fab,_0x2b589e){return _0x3a7fab===_0x2b589e;},'mwONa':function(_0x5c0a50,_0x229a9f){return _0x5c0a50===_0x229a9f;},'ctzIT':'closed','pOPKz':function(_0x48c78e,_0x387a01){return _0x48c78e!==_0x387a01;},'HfHYs':'incomplete','ygivF':'approved'};console[_0xffc8b6(0x12c)]('\x0a'+_0x59ecdd['name']+'\x20('+_0x59ecdd[_0xffc8b6(0x1aa)]+')');_0x59ecdd['stats']&&console[_0xffc8b6(0x12c)]('\x20\x20\x20Progress:\x20'+_0xa4ec64['vDFmK'](getProgressDisplay,_0x59ecdd[_0xffc8b6(0x136)]));_0x59ecdd[_0xffc8b6(0x124)]&&console['log'](_0xffc8b6(0x204)+_0x59ecdd['description']);_0x59ecdd['gitRepoUrl']&&console['log']('\x20\x20\x20Repository:\x20'+_0x59ecdd[_0xffc8b6(0x193)]);_0x59ecdd['gitBranch']&&console['log'](_0xffc8b6(0x15d)+_0x59ecdd['gitBranch']);console[_0xffc8b6(0x12c)]('\x20\x20\x20Created:\x20'+new Date(_0x59ecdd[_0xffc8b6(0x16b)])['toLocaleString']());_0x59ecdd['completedAt']&&console[_0xffc8b6(0x12c)]('\x20\x20\x20Completed:\x20'+new Date(_0x59ecdd['completedAt'])['toLocaleString']());if(_0x228751&&_0xa4ec64[_0xffc8b6(0x1b5)](_0x228751[_0xffc8b6(0x1d6)],0x0)){console[_0xffc8b6(0x12c)](_0xa4ec64[_0xffc8b6(0x18b)]);for(let _0x2f0273=0x0;_0xa4ec64['OQVjS'](_0x2f0273,_0x228751[_0xffc8b6(0x1d6)]);_0x2f0273++){const _0x40c268=_0x228751[_0x2f0273];let _0x244953;if(_0xa4ec64['DHkKd'](_0x40c268['status'],_0xffc8b6(0x196))&&_0xa4ec64[_0xffc8b6(0x1d1)](_0x40c268['terminalReason'],_0xffc8b6(0x151)))_0x244953='✅';else{if(_0x40c268[_0xffc8b6(0x1b1)]===_0xa4ec64['BMtJc'])_0x244953='🟢';else{if(_0xa4ec64['bMJoj'](_0x40c268[_0xffc8b6(0x1b1)],_0xffc8b6(0x1cb)))_0x244953='🟠';else{if(_0xa4ec64[_0xffc8b6(0x1ad)](_0x40c268['status'],'blocked'))_0x244953='🛑';else{if(_0xa4ec64['mwONa'](_0x40c268['status'],_0xa4ec64[_0xffc8b6(0x145)]))_0x244953='⛔';else _0x40c268['status']==='verification_in_progress'?_0x244953='⏳':_0x244953='⬜';}}}}const _0x344c8f=_0x40c268[_0xffc8b6(0x146)]>0x1?_0xffc8b6(0x160)+_0x40c268[_0xffc8b6(0x146)]+')':'',_0x4cce3d=_0x40c268[_0xffc8b6(0x146)]>0x1&&_0x40c268[_0xffc8b6(0x161)]&&_0x40c268['status']!==_0xa4ec64[_0xffc8b6(0x145)]&&_0xa4ec64['pOPKz'](_0x40c268['status'],_0xa4ec64[_0xffc8b6(0x1a3)])?'\x20[has\x20reviewer\x20feedback]':'';console[_0xffc8b6(0x12c)](_0xffc8b6(0x1c8)+(_0x2f0273+0x1)+'.\x20'+_0x244953+'\x20'+_0x40c268['description']+_0x344c8f+_0x4cce3d);_0xa4ec64[_0xffc8b6(0x18d)](_0x40c268[_0xffc8b6(0x1b1)],_0xffc8b6(0x1c7))&&_0x40c268['blockedReason']&&console[_0xffc8b6(0x12c)](_0xffc8b6(0x1fa)+_0x40c268[_0xffc8b6(0x1fd)]);_0x40c268['status']===_0xa4ec64[_0xffc8b6(0x12e)]&&_0x40c268[_0xffc8b6(0x192)]&&console[_0xffc8b6(0x12c)](_0xffc8b6(0x1b0)+_0x40c268[_0xffc8b6(0x192)]);if(_0xa4ec64['mwONa'](_0x40c268['status'],_0xa4ec64[_0xffc8b6(0x145)])&&_0xa4ec64['bMJoj'](_0x40c268['terminalReason'],_0xa4ec64['ygivF']))console['log'](_0xffc8b6(0x1cc));else _0xa4ec64[_0xffc8b6(0x18d)](_0x40c268[_0xffc8b6(0x1b1)],_0xa4ec64['ctzIT'])&&_0x40c268['canceledReason']&&console[_0xffc8b6(0x12c)](_0xffc8b6(0x1cf)+_0x40c268[_0xffc8b6(0x149)]);}}}export async function featureCreate(_0x264e5b,_0x27bbb3){const _0x97674a=_0xf97093,_0x2d9d36={'LsnEH':function(_0x340afa,_0x18f9e7){return _0x340afa===_0x18f9e7;},'qQrXl':function(_0x3a2bb2,_0x53de86){return _0x3a2bb2(_0x53de86);},'WXGca':function(_0x578b5b){return _0x578b5b();},'hMxfp':_0x97674a(0x185),'ucMoY':function(_0x353e59,_0x316891,_0x23444f){return _0x353e59(_0x316891,_0x23444f);}},{envNames:_0x1c0270}=await getEnvNames();_0x2d9d36['LsnEH'](_0x1c0270['length'],0x0)&&console[_0x97674a(0x1c3)]('\x0a'+_0x2d9d36['qQrXl'](formatProfileRequiredMessage,_0x430a62=>bold(_0x430a62)));const _0x50808a=_0x27bbb3['scenarios']?_0x27bbb3[_0x97674a(0x182)]['map'](_0x186f37=>_0x186f37[_0x97674a(0x17e)]()):[],_0xefb13f=_0x2d9d36[_0x97674a(0x191)](getGitRepoUrl),_0x28cff6=getGitBranch();console['log'](_0x2d9d36['hMxfp']);const _0x5e671a=await createFeature({'name':_0x264e5b,'description':_0x27bbb3[_0x97674a(0x124)],'checklist':_0x50808a,'gitRepoUrl':_0xefb13f,'gitBranch':_0x28cff6});await setActiveFeatureId(_0x5e671a['id']),await tryStartCurrentSession(_0x5e671a['id']);const _0x44e814=process[_0x97674a(0x1a8)][_0x97674a(0x176)];_0x44e814&&_0x2d9d36[_0x97674a(0x1a0)](registerSession,_0x44e814,_0x5e671a['id']),console['log']('\x0a✅\x20Feature\x20review\x20created:\x20'+_0x5e671a['id']),_0x2d9d36[_0x97674a(0x1a0)](displayFeature,_0x5e671a,_0x5e671a['checklistItems']),console['log'](_0x97674a(0x1f9));}export async function featureList(_0x59f240){const _0xea8066=_0xf97093,_0x2d907f={'ZHVuB':function(_0x1cb987){return _0x1cb987();},'RTrIx':function(_0x33e0dc,_0x50c680){return _0x33e0dc(_0x50c680);},'ddASH':function(_0x388b71,_0x33de8d){return _0x388b71===_0x33de8d;},'MBXQe':function(_0x35f6bd,_0x1f0622){return _0x35f6bd>_0x1f0622;},'jQVhm':function(_0x1f402f,_0x40ef84){return _0x1f402f<_0x40ef84;},'lHybg':function(_0x37fc53,_0x7dc2f5){return _0x37fc53!==_0x7dc2f5;},'lNuiG':_0xea8066(0x12f),'ZShAp':_0xea8066(0x155)},_0x3fd41c={'limit':_0x59f240['limit']??0xa,'offset':_0x59f240[_0xea8066(0x12a)]??0x0,'includeDeleted':_0x59f240['includeDeleted']};_0x59f240['currentBranch']&&(_0x3fd41c[_0xea8066(0x193)]=_0x2d907f[_0xea8066(0x1d0)](getGitRepoUrl),_0x3fd41c['gitBranch']=_0x2d907f['ZHVuB'](getGitBranch));const _0x4fc662=await _0x2d907f[_0xea8066(0x19b)](listFeatures,_0x3fd41c);if(_0x2d907f['ddASH'](_0x4fc662['items']['length'],0x0)){console['log'](_0xea8066(0x18c));return;}const _0x30d6db=_0x2d907f['MBXQe'](_0x4fc662[_0xea8066(0x200)],_0x4fc662['items'][_0xea8066(0x1d6)])?_0xea8066(0x16d)+_0x4fc662['items']['length']+_0xea8066(0x1d9)+_0x4fc662['totalCount']:_0x4fc662[_0xea8066(0x200)]+'\x20feature\x20review(s)\x20found';console['log']('\x0a'+_0x30d6db+':\x0a');for(const _0x317391 of _0x4fc662[_0xea8066(0x1ff)]){const _0x5ebdc4=_0xea8066(0x170)[_0xea8066(0x123)]('|');let _0x5b5f0e=0x0;while(!![]){switch(_0x5ebdc4[_0x5b5f0e++]){case'0':console['log']('\x20\x20\x20Created:\x20'+new Date(_0x317391[_0xea8066(0x16b)])[_0xea8066(0x14e)]());continue;case'1':console[_0xea8066(0x12c)]('');continue;case'2':console['log']('\x20\x20\x20ID:\x20'+_0x317391['id']);continue;case'3':_0x317391[_0xea8066(0x136)]&&console[_0xea8066(0x12c)]('\x20\x20\x20Progress:\x20'+getProgressDisplay(_0x317391[_0xea8066(0x136)]));continue;case'4':console[_0xea8066(0x12c)](''+_0x317391['name']);continue;case'5':_0x317391[_0xea8066(0x1be)]&&console[_0xea8066(0x12c)](_0xea8066(0x15d)+_0x317391[_0xea8066(0x1be)]);continue;}break;}}const _0x34c207=_0x3fd41c[_0xea8066(0x190)]??0xa,_0x6325e6=(_0x3fd41c[_0xea8066(0x12a)]??0x0)+_0x4fc662['items'][_0xea8066(0x1d6)];if(_0x2d907f[_0xea8066(0x1d8)](_0x6325e6,_0x4fc662[_0xea8066(0x200)])){const _0x138792=_0x2d907f[_0xea8066(0x18a)](_0x34c207,0xa)?_0xea8066(0x206)+_0x34c207:'',_0x195b9f=_0x59f240[_0xea8066(0x1dc)]?_0x2d907f[_0xea8066(0x1f8)]:'',_0x2897d0=_0x59f240['includeDeleted']?_0x2d907f[_0xea8066(0x199)]:'';console['log'](_0xea8066(0x12d)+_0x6325e6+_0x138792+_0x195b9f+_0x2897d0);}}export async function featureShow(_0x4be13a){const _0x1b82cc=_0xf97093,_0x103d71={'iXvnt':function(_0x55b3b1){return _0x55b3b1();}},_0x535bfa=_0x4be13a||await _0x103d71[_0x1b82cc(0x169)](getActiveFeatureId);if(!_0x535bfa)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 _0x5f5d4c=await getFeature(_0x535bfa);displayFeature(_0x5f5d4c,_0x5f5d4c['checklistItems']);}export async function featureResume(_0x186d26){const _0x4f19d1=_0xf97093,_0x1dcf27={'AOjKR':function(_0x56aa6d){return _0x56aa6d();},'hiNPw':function(_0x4b7990,_0x268bbb){return _0x4b7990!==_0x268bbb;},'xebbM':function(_0x5956ff,_0x50ec43,_0x3f4045){return _0x5956ff(_0x50ec43,_0x3f4045);},'POrGO':function(_0x5b7a9a,_0x40d3bc){return _0x5b7a9a(_0x40d3bc);},'VuweV':function(_0x16b515,_0x3cdf53){return _0x16b515||_0x3cdf53;},'GfRZA':_0x4f19d1(0x1c9),'VKgRu':function(_0x663ca9,_0x5dda58){return _0x663ca9===_0x5dda58;},'OcjmU':_0x4f19d1(0x1e4),'ETIMj':'Run:\x20ranger\x20create\x20\x22<name>\x22\x20to\x20create\x20a\x20new\x20feature\x20review','CzgWv':function(_0x51e8a6,_0x400bb2){return _0x51e8a6===_0x400bb2;},'aTapI':'\x0aNon-interactive\x20mode\x20detected.\x20Multiple\x20feature\x20reviews\x20found:','HDwIE':_0x4f19d1(0x15c),'jcdNE':'list','LfvYK':'selected','uxmJN':'Multiple\x20feature\x20reviews\x20found.\x20Select\x20one:','DsTcU':function(_0x5f08d5,_0x6e7ec9){return _0x5f08d5(_0x6e7ec9);},'pxUxW':function(_0x1a79c3,_0x9dcfe2,_0x40b0cd){return _0x1a79c3(_0x9dcfe2,_0x40b0cd);},'gGfHw':function(_0x5eccdf,_0x582ab8){return _0x5eccdf(_0x582ab8);},'jOgOE':function(_0x344b60,_0x334769,_0x34d9fb){return _0x344b60(_0x334769,_0x34d9fb);}};if(_0x186d26){const _0x1e39e7=await getFeature(_0x186d26);await setActiveFeatureId(_0x1e39e7['id']);const _0x2ca420=_0x1dcf27['AOjKR'](getGitBranch);_0x2ca420&&_0x1dcf27['hiNPw'](_0x2ca420,_0x1e39e7[_0x4f19d1(0x1be)])&&(await _0x1dcf27['xebbM'](updateFeature,_0x1e39e7['id'],{'gitBranch':_0x2ca420}),console[_0x4f19d1(0x12c)](_0x4f19d1(0x1b6)+_0x2ca420));console['log']('\x0a✅\x20Resumed\x20feature\x20review:\x20'+_0x1e39e7[_0x4f19d1(0x1c4)]+'\x20('+_0x1e39e7['id']+')'),await _0x1dcf27['POrGO'](tryStartCurrentSession,_0x1e39e7['id']);const _0x22645c=process['env'][_0x4f19d1(0x176)];_0x22645c&&_0x1dcf27['xebbM'](registerSession,_0x22645c,_0x1e39e7['id']);_0x1dcf27[_0x4f19d1(0x1ef)](displayFeature,_0x1e39e7,_0x1e39e7['checklistItems']),await printFeedbackNudge(_0x1e39e7['id']);return;}const _0x3edc03=getGitRepoUrl(),_0x413923=getGitBranch();if(!_0x3edc03&&!_0x413923)throw new Error('Not\x20in\x20a\x20git\x20repository.');console[_0x4f19d1(0x12c)]('\x0aSearching\x20for\x20feature\x20reviews\x20matching:\x20'+_0x1dcf27['VuweV'](_0x3edc03,_0x1dcf27[_0x4f19d1(0x121)])+'\x20/\x20'+(_0x413923||'any')+_0x4f19d1(0x148));const _0x459e66=await _0x1dcf27[_0x4f19d1(0x1e6)](listFeatures,{'gitRepoUrl':_0x3edc03,'gitBranch':_0x413923}),_0x53e0f9=_0x459e66[_0x4f19d1(0x1ff)]['filter'](_0x425fa1=>_0x425fa1[_0x4f19d1(0x1b1)]?_0x425fa1[_0x4f19d1(0x1b1)]!=='verified':!_0x425fa1[_0x4f19d1(0x1bb)]);if(_0x1dcf27['VKgRu'](_0x53e0f9[_0x4f19d1(0x1d6)],0x0)){console['log'](_0x1dcf27[_0x4f19d1(0x143)]),console[_0x4f19d1(0x12c)](_0x1dcf27[_0x4f19d1(0x1b7)]);return;}let _0xe8f22e;if(_0x1dcf27[_0x4f19d1(0x14f)](_0x53e0f9['length'],0x1))_0xe8f22e=_0x53e0f9[0x0];else{const _0x20ac42=process['stdin'][_0x4f19d1(0x1ac)]&&process['stdout']['isTTY'];if(!_0x20ac42){console['log'](_0x1dcf27['aTapI']);for(const _0x126e2d of _0x53e0f9){console['log']('\x20\x20'+_0x126e2d[_0x4f19d1(0x1c4)]),console['log'](_0x4f19d1(0x1a7)+_0x126e2d['id']),_0x126e2d['stats']&&console['log']('\x20\x20\x20\x20\x20Progress:\x20'+getProgressDisplay(_0x126e2d[_0x4f19d1(0x136)])),_0x126e2d['gitBranch']&&console['log']('\x20\x20\x20\x20\x20Branch:\x20'+_0x126e2d[_0x4f19d1(0x1be)]);}throw new Error(_0x1dcf27[_0x4f19d1(0x1b4)]);}const {selected:_0xdf9bd1}=await _0x271579[_0x4f19d1(0x15a)]([{'type':_0x1dcf27[_0x4f19d1(0x165)],'name':_0x1dcf27[_0x4f19d1(0x1d3)],'message':_0x1dcf27['uxmJN'],'choices':_0x53e0f9['map'](_0x3ed059=>({'name':_0x3ed059['name']+'\x20('+_0x3ed059['id']+')','value':_0x3ed059['id']}))}]);_0xe8f22e=_0x53e0f9['find'](_0x26e040=>_0x26e040['id']===_0xdf9bd1);}await _0x1dcf27['DsTcU'](setActiveFeatureId,_0xe8f22e['id']);_0x413923&&_0x413923!==_0xe8f22e['gitBranch']&&(await _0x1dcf27['pxUxW'](updateFeature,_0xe8f22e['id'],{'gitBranch':_0x413923}),console[_0x4f19d1(0x12c)](_0x4f19d1(0x1b6)+_0x413923));console[_0x4f19d1(0x12c)]('\x0a✅\x20Resumed\x20feature\x20review:\x20'+_0xe8f22e[_0x4f19d1(0x1c4)]+'\x20('+_0xe8f22e['id']+')'),await _0x1dcf27['gGfHw'](tryStartCurrentSession,_0xe8f22e['id']);const _0x2d85bd=await getFeature(_0xe8f22e['id']),_0x2f7b9f=process['env'][_0x4f19d1(0x176)];_0x2f7b9f&®isterSession(_0x2f7b9f,_0x2d85bd['id']),_0x1dcf27[_0x4f19d1(0x1e3)](displayFeature,_0x2d85bd,_0x2d85bd['checklistItems']),await _0x1dcf27[_0x4f19d1(0x14c)](printFeedbackNudge,_0x2d85bd['id']);}async function printFeedbackNudge(_0x3ad3f8){const _0x5d9463=_0xf97093,_0x169bd8={'nQOJr':function(_0x1b1b1e,_0x815bfe,_0x2285e7){return _0x1b1b1e(_0x815bfe,_0x2285e7);},'vEujo':function(_0xed781,_0x11d82b){return _0xed781>_0x11d82b;}};try{const {items:_0x40fa29}=await getActionItems(_0x3ad3f8);let _0x3b0605=0x0,_0x402f89=0x0;for(const _0xe9acb2 of _0x40fa29){const _0x2fb27f=await _0x169bd8['nQOJr'](getItemFeedback,_0x3ad3f8,_0xe9acb2['id']);_0x2fb27f[_0x5d9463(0x19f)]['length']>0x0&&(_0x3b0605+=_0x2fb27f['unaddressedComments']['length'],_0x402f89++);}_0x169bd8['vEujo'](_0x3b0605,0x0)&&(console[_0x5d9463(0x12c)]('\x0a⚠️\x20\x20'+_0x3b0605+_0x5d9463(0x1a2)+_0x402f89+_0x5d9463(0x174)),console['log']('\x20\x20\x20Run\x20`ranger\x20get-review`\x20to\x20see\x20what\x20needs\x20to\x20be\x20fixed.'));}catch{}}async function tryStartCurrentSession(_0x509fd0){const _0x5c4766=_0xf97093,_0x16219d={'lWuzu':function(_0x312dc3,_0x4ad87d){return _0x312dc3(_0x4ad87d);},'RicGV':function(_0x36d2ca,_0x587983,_0x4d6a05){return _0x36d2ca(_0x587983,_0x4d6a05);}};try{const {sessions:_0x51afa9}=await _0x16219d['lWuzu'](listFeatureSessions,_0x509fd0),_0x1345a4=_0x51afa9['find'](_0x5a8048=>_0x5a8048['status']==='ready');_0x1345a4&&(await _0x16219d['RicGV'](startSession,_0x509fd0,_0x1345a4['id']),console[_0x5c4766(0x12c)](_0x5c4766(0x1f5)+_0x1345a4[_0x5c4766(0x122)]));}catch{}}export async function featureReport(_0x431e7d,_0x328f73){const _0x2f4116=_0xf97093,_0x4e0adc={'gejWS':_0x2f4116(0x195),'itOqK':'\x0aGenerating\x20report...','zQxHi':function(_0x36fe6b,_0x11d98e,_0x9a9d32,_0x5c866a){return _0x36fe6b(_0x11d98e,_0x9a9d32,_0x5c866a);},'BkLrd':function(_0x419aeb){return _0x419aeb();},'iMjeQ':_0x2f4116(0x194)},_0x4966e4=_0x431e7d||await getActiveFeatureId();if(!_0x4966e4)throw new Error(_0x4e0adc['gejWS']);console[_0x2f4116(0x12c)](_0x4e0adc[_0x2f4116(0x1c6)]);const _0x19dd59=await getFeatureReportMarkdown(_0x4966e4,{'style':_0x328f73[_0x2f4116(0x16a)]}),_0x2d7570=_0x328f73[_0x2f4116(0x172)]||_0x4e0adc['zQxHi'](join,_0x4e0adc['BkLrd'](getRangerDir),'reports',_0x4966e4+'.md'),_0x3d5b9a=join(_0x2d7570,'..');!existsSync(_0x3d5b9a)&&await mkdir(_0x3d5b9a,{'recursive':!![]}),await _0x4e0adc[_0x2f4116(0x19e)](writeFile,_0x2d7570,_0x19dd59,_0x4e0adc[_0x2f4116(0x17a)]),console['log'](_0x2f4116(0x1ee)+_0x2d7570);}function getScenarioResult(_0x3da282){const _0x31158e=_0xf97093,_0x134802={'sYZzi':'closed','hQPRf':'verification_in_progress','leVuA':'in_progress'};if(_0x3da282['status']===_0x31158e(0x196))return _0x3da282[_0x31158e(0x17b)]??_0x134802[_0x31158e(0x1fe)];if(_0x3da282['status']===_0x134802['hQPRf'])return _0x134802[_0x31158e(0x13c)];return _0x3da282[_0x31158e(0x1b1)];}function getScenarioRationale(_0x1711ef,_0x212adb){const _0x217914=_0xf97093;if(_0x212adb)return _0x212adb;if(_0x1711ef[_0x217914(0x1fd)])return _0x1711ef['blockedReason'];if(_0x1711ef['incompleteReason'])return _0x1711ef['incompleteReason'];if(_0x1711ef['canceledReason'])return _0x1711ef['canceledReason'];if(_0x1711ef[_0x217914(0x1bd)])return _0x1711ef[_0x217914(0x1bd)];return null;}export async function featureReportPrDescription(_0x286ebd,_0x3bfcd6){const _0x77ba8c=_0xf97093,_0x2fae23={'AMnjw':function(_0x52fab8){return _0x52fab8();},'WqgXE':'No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.','JVPPh':function(_0xcd6173,_0x5bca11){return _0xcd6173(_0x5bca11);},'CHukU':_0x77ba8c(0x1b3),'DeAXa':function(_0x256fc0,_0xe40c69){return _0x256fc0>_0xe40c69;},'cucCK':function(_0x2dadca,_0x45449a){return _0x2dadca<_0x45449a;},'wnNtg':function(_0x1b4d09,_0x38f6e1){return _0x1b4d09+_0x38f6e1;},'NhbOe':function(_0x567e52,_0x4a831e,_0xb54997,_0x1785fd){return _0x567e52(_0x4a831e,_0xb54997,_0x1785fd);}},_0x1c60eb=_0x286ebd||await _0x2fae23[_0x77ba8c(0x154)](getActiveFeatureId);if(!_0x1c60eb)throw new Error(_0x2fae23['WqgXE']);const _0x120966=await _0x2fae23[_0x77ba8c(0x1d7)](getFeature,_0x1c60eb),_0x2ae107=_0x120966['checklistItems']||[],_0x4b5473=getCurrentSessionItems(_0x120966,_0x2ae107);_0x4b5473[_0x77ba8c(0x1d6)]===0x0&&(console[_0x77ba8c(0x13d)](_0x2fae23[_0x77ba8c(0x1c1)]),process[_0x77ba8c(0x140)](0x1));const _0x419dc1=_0x3bfcd6['excludeScenarios']??[],_0x40c322=_0x419dc1[_0x77ba8c(0x1f7)](_0x3d6773=>!Number['isInteger'](_0x3d6773)||_0x3d6773<0x1||_0x3d6773>_0x4b5473[_0x77ba8c(0x1d6)]);if(_0x2fae23[_0x77ba8c(0x142)](_0x40c322['length'],0x0)){console[_0x77ba8c(0x13d)](_0x77ba8c(0x1bf)+_0x40c322[_0x77ba8c(0x1c2)](',\x20')),console[_0x77ba8c(0x12c)](_0x77ba8c(0x157));for(let _0x590e79=0x0;_0x2fae23[_0x77ba8c(0x1e0)](_0x590e79,_0x4b5473['length']);_0x590e79++){console['log']('\x20\x20'+_0x2fae23['wnNtg'](_0x590e79,0x1)+'.\x20'+_0x4b5473[_0x590e79][_0x77ba8c(0x124)]);}process[_0x77ba8c(0x140)](0x1);}const _0x2d7605=new Set(_0x419dc1[_0x77ba8c(0x1c5)](_0x1a00e2=>_0x1a00e2-0x1)),_0xf4dbc=_0x4b5473[_0x77ba8c(0x1f7)]((_0x4d59d8,_0x261559)=>!_0x2d7605['has'](_0x261559));_0xf4dbc[_0x77ba8c(0x1d6)]===0x0&&(console['error'](_0x77ba8c(0x1de)),process['exit'](0x1));if(_0x3bfcd6['json'])await _0x2fae23[_0x77ba8c(0x125)](outputJsonReport,_0x1c60eb,_0x120966,_0xf4dbc);else{const _0x543896=await getFeatureReportMarkdown(_0x1c60eb,{'itemIds':_0xf4dbc[_0x77ba8c(0x1c5)](_0x82804a=>_0x82804a['id'])});process['stdout']['write'](_0x543896[_0x77ba8c(0x1b2)]()+'\x0a');}}async function outputJsonReport(_0x152e22,_0x148608,_0x3d1329){const _0x528140=_0xf97093,_0x2cea27={'gGWlu':function(_0x3a6389,_0x1da6d5){return _0x3a6389(_0x1da6d5);},'UVhRo':function(_0xc61dc6,_0x100678){return _0xc61dc6===_0x100678;},'tjhgD':function(_0x2b9cc1,_0x5b5d84){return _0x2b9cc1+_0x5b5d84;}},_0x56ed2f=getApiBaseUrl(),_0x4fdf65=await _0x2cea27['gGWlu'](getFeatureReport,_0x152e22),_0x19fbfc=new Map(_0x4fdf65[_0x528140(0x15b)]['map'](_0xf96fde=>[_0xf96fde['id'],_0xf96fde])),_0x1654a2=await Promise[_0x528140(0x128)](_0x3d1329['map'](async _0x12c966=>{const _0x3a7487=_0x528140,_0x25d389=_0x19fbfc['get'](_0x12c966['id']),_0x41479f=_0x25d389?.['linkedSession']??null;let _0x124fbe=[];if(_0x12c966[_0x3a7487(0x131)])try{const {steps:_0x236b75}=await _0x2cea27['gGWlu'](getBrowserSessionSteps,_0x12c966['browserSessionId']);_0x236b75['length']>0x0&&(_0x124fbe=_0x236b75[_0x3a7487(0x1c5)](_0x14e499=>{const _0x82409b=_0x3a7487,_0x100606=_0x14e499['assets'][_0x82409b(0x1a6)](_0x48e191=>_0x48e191['assetType']===_0x82409b(0x12b)&&_0x48e191['timing']===_0x82409b(0x14b))??_0x14e499[_0x82409b(0x202)][_0x82409b(0x1a6)](_0x10ae2b=>_0x10ae2b[_0x82409b(0x1ae)]==='screenshot');let _0xa32edb=null,_0x128833=null;if(_0x100606){const _0x60435d=_0x100606[_0x82409b(0x1e7)][_0x82409b(0x1ba)][_0x82409b(0x123)]('/')['pop']();_0xa32edb=_0x56ed2f+_0x82409b(0x1e5)+_0x12c966[_0x82409b(0x131)]+_0x82409b(0x1b9)+_0x60435d,_0x60435d&&(_0x128833=_0x60435d['replace'](/\.\w+$/,'')[_0x82409b(0x1d2)](/^(key_)?\d+_/,'')[_0x82409b(0x1d2)](/[-_]/g,'\x20'));}return{'description':_0x128833||_0x14e499['description']||_0x14e499[_0x82409b(0x1fb)]||_0x82409b(0x1af)+_0x14e499[_0x82409b(0x15f)],'screenshot':_0xa32edb,'is_key_step':_0x14e499[_0x82409b(0x158)]};}));}catch{}return _0x2cea27['UVhRo'](_0x124fbe[_0x3a7487(0x1d6)],0x0)&&_0x41479f?.[_0x3a7487(0x141)]&&(_0x124fbe=_0x41479f['screenshotUrls']['map']((_0x11b4a6,_0x1b34a6)=>({'description':'Screenshot\x20'+(_0x1b34a6+0x1),'screenshot':_0x11b4a6,'is_key_step':![]}))),{'description':_0x12c966[_0x3a7487(0x124)],'result':getScenarioResult(_0x12c966),'rationale':getScenarioRationale(_0x12c966,_0x41479f?.[_0x3a7487(0x159)]),'steps':_0x124fbe};})),_0x415f7c={'url':_0x148608[_0x528140(0x1aa)],'scenarios':_0x1654a2};process['stdout']['write'](_0x2cea27[_0x528140(0x1dd)](JSON[_0x528140(0x139)](_0x415f7c,null,0x2),'\x0a'));}export async function featureConcludeSession(_0x4d4708){const _0x421917=_0xf97093,_0x3e172c={'SdIsv':function(_0x399d89){return _0x399d89();},'Rnhgn':_0x421917(0x1a4),'heDEp':function(_0x2d12d7,_0x2658b2){return _0x2d12d7(_0x2658b2);},'DtXAu':function(_0x21c444,_0x31c08a){return _0x21c444(_0x31c08a);},'lQjOf':'\x0a✅\x20Session\x20is\x20already\x20completed.','UJLCu':_0x421917(0x1ec),'lmsuO':_0x421917(0x152)},_0x178ea3=_0x4d4708||await _0x3e172c['SdIsv'](getActiveFeatureId);if(!_0x178ea3)throw new Error(_0x3e172c[_0x421917(0x1e8)]);const _0x2778d0=await _0x3e172c['heDEp'](getFeature,_0x178ea3);if(!_0x2778d0[_0x421917(0x156)])throw new Error('No\x20active\x20session\x20for\x20this\x20feature\x20review.');const {sessions:_0x297829}=await _0x3e172c[_0x421917(0x13b)](listFeatureSessions,_0x178ea3),_0x1b3567=_0x297829[_0x421917(0x1a6)](_0x16d3af=>_0x16d3af['id']===_0x2778d0[_0x421917(0x156)]);if(!_0x1b3567)throw new Error('Current\x20session\x20not\x20found.');if(_0x1b3567[_0x421917(0x1b1)]===_0x421917(0x1ca)){console['log'](_0x3e172c[_0x421917(0x19a)]);return;}if(_0x1b3567['status']!==_0x3e172c['UJLCu'])throw new Error('Cannot\x20conclude\x20session\x20with\x20status:\x20'+_0x1b3567[_0x421917(0x1b1)]);console[_0x421917(0x12c)](_0x3e172c[_0x421917(0x173)]),await concludeSession(_0x178ea3,_0x2778d0['currentSessionId']),console['log'](_0x421917(0x16e)+_0x1b3567[_0x421917(0x122)]+'\x20concluded.'),console[_0x421917(0x12c)]('\x20\x20\x20The\x20feature\x20review\x20is\x20now\x20ready\x20for\x20human\x20review\x20on\x20the\x20Ranger\x20dashboard.');}export async function featureSessions(_0x30c1d3){const _0x48fd01=_0xf97093,_0x43c146={'ACqAx':function(_0x117c28,_0x3d668d){return _0x117c28(_0x3d668d);},'MwvjM':'No\x20sessions\x20found.','xxYoe':function(_0x3a52c8,_0x4f0dc3){return _0x3a52c8===_0x4f0dc3;},'EqPqE':function(_0x5a1e0a,_0x4e4546){return _0x5a1e0a===_0x4e4546;}},_0x177417=_0x30c1d3||await getActiveFeatureId();if(!_0x177417)throw new Error('No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.');const _0x4659c1=await _0x43c146[_0x48fd01(0x1cd)](getFeature,_0x177417);console['log']('\x0a📁\x20Sessions\x20for\x20feature\x20review:\x20'+_0x4659c1['name']+'\x0a');const {sessions:_0x215387}=await listFeatureSessions(_0x177417);if(_0x215387['length']===0x0){console[_0x48fd01(0x12c)](_0x43c146['MwvjM']);return;}for(const _0x3c48fd of _0x215387){const _0x1b75ec=_0x43c146['xxYoe'](_0x3c48fd['status'],'completed')?'✅':_0x43c146['EqPqE'](_0x3c48fd[_0x48fd01(0x1b1)],_0x48fd01(0x1ec))?'🔄':'▶️';console['log'](_0x1b75ec+'\x20Session\x20'+_0x3c48fd['iteration']+'\x20('+_0x3c48fd['id']+')'),console[_0x48fd01(0x12c)](_0x48fd01(0x19c)+_0x3c48fd[_0x48fd01(0x1b1)]),console[_0x48fd01(0x12c)]('\x20\x20\x20Created:\x20'+new Date(_0x3c48fd['createdAt'])[_0x48fd01(0x167)]()),_0x3c48fd[_0x48fd01(0x1bb)]&&console[_0x48fd01(0x12c)](_0x48fd01(0x1fc)+new Date(_0x3c48fd['completedAt'])[_0x48fd01(0x167)]()),console[_0x48fd01(0x12c)]('');}}export async function featureAddScenario(_0x3f7440,_0x547e24){const _0x562744=_0xf97093,_0x3d5a60={'neFrB':function(_0x40a147){return _0x40a147();}},_0x40a37c=_0x547e24||await _0x3d5a60[_0x562744(0x14a)](getActiveFeatureId);if(!_0x40a37c)throw new Error(_0x562744(0x1a4));const _0x5999c6=await getFeature(_0x40a37c);if(_0x5999c6['latestReview']&&!_0x5999c6['latestReview'][_0x562744(0x178)])throw new Error('Cannot\x20add\x20scenario:\x20feature\x20review\x20has\x20an\x20active\x20review.\x20Please\x20finish\x20your\x20review\x20first:\x20'+_0x5999c6[_0x562744(0x1aa)]);await createChecklistItem(_0x40a37c,_0x3f7440);const _0x496018=await getFeature(_0x40a37c);console[_0x562744(0x12c)]('\x0a✅\x20Scenario\x20added'),displayFeature(_0x496018,_0x496018['checklistItems']);}export async function featureEditScenario(_0xca8f0,_0x6bcba){const _0x38f3db=_0xf97093,_0x178b96={'JKNTn':_0x38f3db(0x129),'UjbNf':function(_0x1a024,_0x44fc65){return _0x1a024(_0x44fc65);},'QeYUe':'\x0a❌\x20Cannot\x20edit\x20scenario:\x20feature\x20review\x20has\x20an\x20active\x20review.','WEQKI':_0x38f3db(0x16c),'WbJSC':_0x38f3db(0x153),'Gdfyg':function(_0x3bc8b7,_0x464713){return _0x3bc8b7===_0x464713;},'XwLYW':'\x0a❌\x20No\x20scenario\x20number\x20provided.\x20Use\x20--scenario\x20<number>.','dezZd':_0x38f3db(0x157),'uFInQ':function(_0x2f7fbd,_0x4398f5){return _0x2f7fbd<_0x4398f5;},'MCBaz':function(_0x3d5583,_0x33063c){return _0x3d5583+_0x33063c;},'Hdzoi':function(_0x45b81e,_0x3180c3){return _0x45b81e-_0x3180c3;},'xtWgQ':function(_0x517336,_0x3d2c7c,_0x5dd81d){return _0x517336(_0x3d2c7c,_0x5dd81d);}},_0x43a1ce=_0x6bcba['id']||await getActiveFeatureId();!_0x43a1ce&&(console['error']('\x0a❌\x20No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.'),console['error'](_0x178b96[_0x38f3db(0x13a)]),process['exit'](0x1));const _0x4c4d02=await _0x178b96[_0x38f3db(0x1eb)](getFeature,_0x43a1ce);_0x4c4d02[_0x38f3db(0x1f4)]&&!_0x4c4d02['latestReview'][_0x38f3db(0x178)]&&(console[_0x38f3db(0x13d)](_0x178b96['QeYUe']),console[_0x38f3db(0x13d)](_0x178b96[_0x38f3db(0x138)]),console[_0x38f3db(0x13d)]('\x20\x20'+_0x4c4d02[_0x38f3db(0x1aa)]),process[_0x38f3db(0x140)](0x1));const _0x34bd00=_0x4c4d02[_0x38f3db(0x15b)]||[];_0x34bd00[_0x38f3db(0x1d6)]===0x0&&(console['error'](_0x178b96[_0x38f3db(0x1df)]),process['exit'](0x1));if(_0x178b96[_0x38f3db(0x126)](_0x6bcba['scenario'],undefined)){console['error'](_0x178b96[_0x38f3db(0x1f6)]),console['log'](_0x178b96['dezZd']);for(let _0x4e2c8b=0x0;_0x178b96[_0x38f3db(0x132)](_0x4e2c8b,_0x34bd00[_0x38f3db(0x1d6)]);_0x4e2c8b++){console['log']('\x20\x20'+_0x178b96[_0x38f3db(0x1e9)](_0x4e2c8b,0x1)+'.\x20'+_0x34bd00[_0x4e2c8b][_0x38f3db(0x124)]);}process[_0x38f3db(0x140)](0x1);}const _0x597a0b=_0x178b96[_0x38f3db(0x1ed)](_0x6bcba['scenario'],0x1);if(_0x178b96[_0x38f3db(0x132)](_0x597a0b,0x0)||_0x597a0b>=_0x34bd00['length']){console['error']('\x0a❌\x20Invalid\x20scenario\x20index:\x20'+_0x6bcba[_0x38f3db(0x18e)]+'.\x20Feature\x20review\x20has\x20'+_0x34bd00['length']+'\x20scenarios.'),console['log'](_0x178b96[_0x38f3db(0x1f0)]);for(let _0x3a1ef1=0x0;_0x3a1ef1<_0x34bd00['length'];_0x3a1ef1++){console['log']('\x20\x20'+(_0x3a1ef1+0x1)+'.\x20'+_0x34bd00[_0x3a1ef1]['description']);}process[_0x38f3db(0x140)](0x1);}const _0x433858=_0x34bd00[_0x597a0b];await updateChecklistItem(_0x43a1ce,_0x433858['id'],{'description':_0xca8f0});const _0x556319=await getFeature(_0x43a1ce);console['log'](_0x38f3db(0x1ab)),_0x178b96['xtWgQ'](displayFeature,_0x556319,_0x556319[_0x38f3db(0x15b)]);}async function downloadFeedbackImage(_0xb0e5c9,_0x43acf8){const _0x4cea15=_0xf97093,_0x4fedfe={'EUGhm':function(_0x33e681,_0x37ca69,_0x323669){return _0x33e681(_0x37ca69,_0x323669);},'GkYJl':function(_0x14aa57){return _0x14aa57();},'qHZsG':function(_0x2a2472,_0x149ef,_0x1999d2){return _0x2a2472(_0x149ef,_0x1999d2);}};try{const _0x43757c=_0x4fedfe[_0x4cea15(0x144)](join,_0x4fedfe[_0x4cea15(0x133)](getRangerDir),_0x4cea15(0x1e1));await mkdir(_0x43757c,{'recursive':!![]});const _0x420649=join(_0x43757c,_0x4cea15(0x1b8)+_0x43acf8+_0x4cea15(0x201)),_0x5103e2=await fetch(_0xb0e5c9);if(!_0x5103e2['ok'])return null;const _0x18e48b=Buffer['from'](await _0x5103e2[_0x4cea15(0x19d)]());return await _0x4fedfe[_0x4cea15(0x1da)](writeFile,_0x420649,_0x18e48b),_0x420649;}catch{return null;}}export async function featureGetReview(_0x31b395){const _0x6e04f8=_0xf97093,_0x57a715={'PbIhi':function(_0x45af68){return _0x45af68();},'VcxZL':'No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','hSLNN':function(_0x597e48,_0x238eed){return _0x597e48(_0x238eed);},'EKQdU':function(_0x7f8013,_0x36ff07){return _0x7f8013+_0x36ff07;},'yITXz':_0x6e04f8(0x179),'juSSM':'short','CrkTY':_0x6e04f8(0x205),'DAJnk':function(_0x56c101,_0x308914){return _0x56c101>=_0x308914;},'eiqwH':function(_0x2ae591,_0x2d7431){return _0x2ae591+_0x2d7431;}},_0x2f469c=_0x31b395||await _0x57a715['PbIhi'](getActiveFeatureId);if(!_0x2f469c)throw new Error(_0x57a715[_0x6e04f8(0x184)]);const _0x3b86b9=await getFeature(_0x2f469c),{items:_0x2c4476}=await _0x57a715[_0x6e04f8(0x150)](getActionItems,_0x2f469c);console['log']('\x0a📋\x20Feedback\x20for:\x20'+_0x3b86b9[_0x6e04f8(0x1c4)]+'\x20('+_0x3b86b9['id']+')\x0a');if(_0x2c4476[_0x6e04f8(0x1d6)]===0x0){console['log'](_0x6e04f8(0x13f));return;}for(let _0x4d7770=0x0;_0x4d7770<_0x2c4476[_0x6e04f8(0x1d6)];_0x4d7770++){const _0x2f5067=_0x2c4476[_0x4d7770],_0x2f0f9c=_0x2f5067['version']>0x1?_0x6e04f8(0x160)+_0x2f5067['version']+')':'',_0x4ceb30=await getItemFeedback(_0x2f469c,_0x2f5067['id']);if(_0x4ceb30[_0x6e04f8(0x19f)]['length']>0x0){console['log'](_0x6e04f8(0x1ce)+_0x57a715[_0x6e04f8(0x186)](_0x4d7770,0x1)+':\x20\x22'+_0x2f5067[_0x6e04f8(0x124)]+'\x22'+_0x2f0f9c+_0x6e04f8(0x187)+_0x4ceb30['unaddressedComments'][_0x6e04f8(0x1d6)]+'\x20unaddressed\x20comment(s)');for(const _0x39abe1 of _0x4ceb30['unaddressedComments']){const _0x44c07d=new Date(_0x39abe1['createdAt'])[_0x6e04f8(0x14e)](_0x57a715['yITXz'],{'month':_0x57a715['juSSM'],'day':_0x57a715[_0x6e04f8(0x189)]}),_0x7b7b77=_0x39abe1['authorName']||_0x39abe1[_0x6e04f8(0x162)]||'Unknown';console[_0x6e04f8(0x12c)](_0x6e04f8(0x134)+_0x7b7b77+'\x20('+_0x44c07d+'):\x20\x22'+_0x39abe1['content']+'\x22');if(_0x39abe1[_0x6e04f8(0x18f)]){const _0x3d3656=await downloadFeedbackImage(_0x39abe1['assetUrl'],_0x39abe1['id']);_0x3d3656&&console[_0x6e04f8(0x12c)](_0x6e04f8(0x13e)+_0x3d3656);}if(_0x39abe1[_0x6e04f8(0x17f)]){const _0x29ec9a=_0x39abe1[_0x6e04f8(0x17f)][_0x6e04f8(0x175)]['split'](_0x6e04f8(0x183))[_0x6e04f8(0x17c)]()?.['split'](':')[0x0]||'element',_0x30e5d4=_0x39abe1[_0x6e04f8(0x17f)][_0x6e04f8(0x130)]?'\x20\x22'+_0x39abe1[_0x6e04f8(0x17f)][_0x6e04f8(0x130)]['slice'](0x0,0x3c)+'\x22':'';console['log']('\x20\x20\x20\x20\x20🎯\x20Element:\x20<'+_0x29ec9a+'>'+_0x30e5d4),console[_0x6e04f8(0x12c)]('\x20\x20\x20\x20\x20📋\x20Selector:\x20'+_0x39abe1[_0x6e04f8(0x17f)][_0x6e04f8(0x175)]);}else{if(_0x39abe1['spatial']){const _0x4edc71=_0x39abe1[_0x6e04f8(0x1e2)][_0x6e04f8(0x168)];_0x39abe1[_0x6e04f8(0x1e2)]['type']==='point'&&_0x57a715['DAJnk'](_0x4edc71['length'],0x2)?console['log']('\x20\x20\x20\x20\x20📍\x20Annotation:\x20point\x20at\x20('+_0x4edc71[0x0]['toFixed'](0x2)+',\x20'+_0x4edc71[0x1][_0x6e04f8(0x135)](0x2)+')'):console[_0x6e04f8(0x12c)]('\x20\x20\x20\x20\x20📍\x20Annotation:\x20'+_0x39abe1[_0x6e04f8(0x1e2)]['type']+'\x20at\x20['+_0x4edc71[_0x6e04f8(0x1c5)](_0x1083bb=>_0x1083bb[_0x6e04f8(0x135)](0x2))[_0x6e04f8(0x1c2)](',\x20')+']');}}}if(_0x4ceb30['canonicalFlow']){console[_0x6e04f8(0x12c)](_0x6e04f8(0x1d4));for(const _0x4d63db of _0x4ceb30['canonicalFlow']['split']('\x0a')){console[_0x6e04f8(0x12c)]('\x20\x20\x20\x20'+_0x4d63db);}}}else console['log']('Scenario\x20'+_0x57a715['eiqwH'](_0x4d7770,0x1)+':\x20\x22'+_0x2f5067['description']+'\x22'+_0x2f0f9c+'\x20—\x20no\x20comments'),console[_0x6e04f8(0x12c)](_0x6e04f8(0x16f));console[_0x6e04f8(0x12c)]('');}}export async function featureDelete(_0x32b96e){const _0x14596d=_0xf97093,_0xaa6a6f={'tlZte':function(_0x49a015,_0x304088){return _0x49a015(_0x304088);}},_0x3e643d=_0x32b96e||await getActiveFeatureId();if(!_0x3e643d)throw new Error(_0x14596d(0x1a4));const _0xe77d16=await getFeature(_0x3e643d);await _0xaa6a6f['tlZte'](softDeleteFeature,_0x3e643d),console['log']('\x0a🗑️\x20\x20Deleted\x20feature\x20review:\x20'+_0xe77d16[_0x14596d(0x1c4)]+'\x20('+_0x3e643d+')'),console['log']('\x20\x20\x20To\x20restore\x20it,\x20run:\x20ranger\x20restore\x20'+_0x3e643d);}export async function featureRestore(_0x37fb92){const _0x3e2c6e=_0xf97093,_0x3d7b53={'uqfvX':function(_0x7b3727,_0x3ceb10){return _0x7b3727(_0x3ceb10);},'yZcOj':function(_0x2c2b4e,_0x50f1d0,_0x449ccf){return _0x2c2b4e(_0x50f1d0,_0x449ccf);}};await _0x3d7b53[_0x3e2c6e(0x1d5)](restoreFeature,_0x37fb92);const _0x545c4d=await _0x3d7b53[_0x3e2c6e(0x1d5)](getFeature,_0x37fb92);console[_0x3e2c6e(0x12c)]('\x0a✅\x20Restored\x20feature\x20review:\x20'+_0x545c4d[_0x3e2c6e(0x1c4)]+'\x20('+_0x37fb92+')'),_0x3d7b53[_0x3e2c6e(0x1ea)](displayFeature,_0x545c4d,_0x545c4d[_0x3e2c6e(0x15b)]);}
|
|
1
|
+
(function(_0xe6b822,_0x59bb4f){const _0x3fe67d=_0xbe20,_0x366d32=_0xe6b822();while(!![]){try{const _0x3eb149=parseInt(_0x3fe67d(0x1d9))/0x1*(parseInt(_0x3fe67d(0x137))/0x2)+parseInt(_0x3fe67d(0x12f))/0x3+-parseInt(_0x3fe67d(0x1ee))/0x4*(-parseInt(_0x3fe67d(0x1a6))/0x5)+-parseInt(_0x3fe67d(0x1b6))/0x6+-parseInt(_0x3fe67d(0x1b2))/0x7+-parseInt(_0x3fe67d(0x1db))/0x8+parseInt(_0x3fe67d(0x1a5))/0x9;if(_0x3eb149===_0x59bb4f)break;else _0x366d32['push'](_0x366d32['shift']());}catch(_0x13021b){_0x366d32['push'](_0x366d32['shift']());}}}(_0x2fda,0xd57cd));import{readFile,writeFile,mkdir}from'fs/promises';import{join}from'path';import{existsSync}from'fs';import{execSync}from'child_process';import _0x19ec59 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';const ACTIVE_FEATURE_FILE='active-feature.txt',bold=_0x3d65ae=>'\x1b[1m'+_0x3d65ae+'\x1b[0m';function _0xbe20(_0x4d4d78,_0x4b6947){_0x4d4d78=_0x4d4d78-0x128;const _0x2fdabb=_0x2fda();let _0xbe20cf=_0x2fdabb[_0x4d4d78];return _0xbe20cf;}function getGitRepoUrl(){const _0x77975b=_0xbe20,_0x266a43={'bOrwF':function(_0x3245da,_0x36f148,_0x2938f5){return _0x3245da(_0x36f148,_0x2938f5);},'trFLy':_0x77975b(0x159),'qBmlq':_0x77975b(0x1f3)};try{const _0x574f3d=_0x266a43[_0x77975b(0x18e)](execSync,_0x266a43['trFLy'],{'encoding':_0x77975b(0x1d5),'stdio':[_0x266a43['qBmlq'],_0x266a43[_0x77975b(0x1ab)],_0x77975b(0x1f3)]})[_0x77975b(0x180)]();return _0x574f3d['replace'](/\.git$/,'')['replace'](/^git@github\.com:/,'github.com/')['replace'](/^https?:\/\//,'');}catch{return undefined;}}function getGitBranch(){const _0x3fccc8=_0xbe20,_0x5d0e0d={'ctPXE':function(_0x36a0ec,_0xcc6a12,_0x146771){return _0x36a0ec(_0xcc6a12,_0x146771);},'wPaQP':'pipe'};try{return _0x5d0e0d[_0x3fccc8(0x13e)](execSync,_0x3fccc8(0x12d),{'encoding':'utf-8','stdio':[_0x5d0e0d['wPaQP'],_0x3fccc8(0x1f3),_0x5d0e0d['wPaQP']]})[_0x3fccc8(0x180)]();}catch{return undefined;}}export async function getActiveFeatureId(){const _0x5a2db0=_0xbe20,_0x2b1e34=join(getRangerDir(),ACTIVE_FEATURE_FILE);if(!existsSync(_0x2b1e34))return null;try{const _0x4b235d=await readFile(_0x2b1e34,_0x5a2db0(0x1d5));return _0x4b235d['trim']()||null;}catch{return null;}}async function setActiveFeatureId(_0x1df752){const _0x2eb3c8={'LFZLy':function(_0x15f835,_0x2e7af3){return _0x15f835(_0x2e7af3);}},_0x1f0fd5=getRangerDir(),_0x3e59d4=join(_0x1f0fd5,ACTIVE_FEATURE_FILE);!_0x2eb3c8['LFZLy'](existsSync,_0x1f0fd5)&&await mkdir(_0x1f0fd5,{'recursive':!![]}),await writeFile(_0x3e59d4,_0x1df752,'utf-8');}function getProgressDisplay(_0x39f99e){const _0x429436=_0xbe20,_0x13f850={'QJeiG':function(_0x33f708,_0x1f0b6d){return _0x33f708+_0x1f0b6d;},'VqabE':function(_0x59fb2f,_0x5e94ad){return _0x59fb2f*_0x5e94ad;},'nWhPa':function(_0x1ac8de,_0x806c18){return _0x1ac8de/_0x806c18;},'WLVVk':function(_0x5cca1c,_0x289bef){return _0x5cca1c-_0x289bef;},'exgFi':function(_0x46b236,_0x14bd76){return _0x46b236>_0x14bd76;},'zcwwi':function(_0x29d220,_0x3991b3){return _0x29d220>_0x3991b3;}},_0x9e980d=_0x39f99e['verifiedItems']||0x0,_0x5b21a0=_0x39f99e['verificationInProgressItems']||0x0,_0x16bb99=_0x39f99e['blockedItems']||0x0,_0x15164e=_0x39f99e[_0x429436(0x192)]||0x0,_0x4abf8c=_0x39f99e['pendingItems']||0x0,_0x363d15=_0x13f850[_0x429436(0x186)](_0x13f850['QJeiG'](_0x9e980d+_0x5b21a0+_0x16bb99,_0x15164e),_0x4abf8c);if(_0x363d15===0x0)return'-';const _0x3e291b=0xa,_0x26009b=Math[_0x429436(0x12c)](_0x13f850[_0x429436(0x189)](_0x13f850['nWhPa'](_0x9e980d,_0x363d15),_0x3e291b)),_0x16e5f3=_0x13f850['QJeiG']('█'['repeat'](_0x26009b),'░'[_0x429436(0x19d)](_0x13f850['WLVVk'](_0x3e291b,_0x26009b))),_0x3b0880=[];if(_0x13f850[_0x429436(0x12e)](_0x16bb99,0x0))_0x3b0880[_0x429436(0x174)](_0x16bb99+_0x429436(0x175));if(_0x15164e>0x0)_0x3b0880['push'](_0x15164e+_0x429436(0x1e2));if(_0x5b21a0>0x0)_0x3b0880['push'](_0x5b21a0+_0x429436(0x1a2));const _0x32ac2c=_0x13f850[_0x429436(0x1de)](_0x3b0880[_0x429436(0x1bb)],0x0)?'\x20('+_0x3b0880['join'](',\x20')+')':'';return _0x16e5f3+'\x20'+_0x9e980d+'/'+_0x363d15+'\x20verified'+_0x32ac2c;}function getCurrentSessionItems(_0x3a66dd,_0xaa33dc){const _0x2df6f0=_0xbe20;if(!_0x3a66dd[_0x2df6f0(0x197)])return _0xaa33dc['filter'](_0x4779f7=>!_0x4779f7['sessionId']);return _0xaa33dc['filter'](_0x4962b9=>_0x4962b9[_0x2df6f0(0x181)]===_0x3a66dd['currentSessionId']||!_0x4962b9['sessionId']);}function displayFeature(_0x5a000a,_0x11e19c){const _0x1a6a45=_0xbe20,_0x5ae336={'nKnpR':function(_0x1ab022,_0x125d30){return _0x1ab022<_0x125d30;},'xTmgr':function(_0x100ce1,_0x12c577){return _0x100ce1===_0x12c577;},'nvzIP':'approved','IujmJ':'verified','bGrJL':function(_0x2ff2b1,_0x438ed5){return _0x2ff2b1===_0x438ed5;},'gHPFM':'closed','kNCPb':_0x1a6a45(0x147),'ZrYvR':function(_0x1561ea,_0x512c7d){return _0x1561ea!==_0x512c7d;},'kwRrB':function(_0x53079c,_0x40748d){return _0x53079c+_0x40748d;},'RPLbx':function(_0x49bdc6,_0x43b51c){return _0x49bdc6===_0x43b51c;},'fWEjC':'incomplete','dOqGL':function(_0x1fccf5,_0x2970e5){return _0x1fccf5===_0x2970e5;},'ndPcR':function(_0x4ab203,_0x14ef79){return _0x4ab203===_0x14ef79;}};console['log']('\x0a'+_0x5a000a['name']+'\x20('+_0x5a000a['dashboardUrl']+')');_0x5a000a[_0x1a6a45(0x1f0)]&&console['log'](_0x1a6a45(0x187)+getProgressDisplay(_0x5a000a[_0x1a6a45(0x1f0)]));_0x5a000a['description']&&console['log']('\x20\x20\x20Description:\x20'+_0x5a000a[_0x1a6a45(0x1c6)]);_0x5a000a[_0x1a6a45(0x17e)]&&console[_0x1a6a45(0x15b)]('\x20\x20\x20Repository:\x20'+_0x5a000a[_0x1a6a45(0x17e)]);_0x5a000a[_0x1a6a45(0x156)]&&console['log'](_0x1a6a45(0x139)+_0x5a000a['gitBranch']);console['log']('\x20\x20\x20Created:\x20'+new Date(_0x5a000a[_0x1a6a45(0x148)])[_0x1a6a45(0x138)]());_0x5a000a['completedAt']&&console[_0x1a6a45(0x15b)]('\x20\x20\x20Completed:\x20'+new Date(_0x5a000a['completedAt'])['toLocaleString']());if(_0x11e19c&&_0x11e19c['length']>0x0){console[_0x1a6a45(0x15b)]('\x0a\x20\x20\x20Scenarios:');for(let _0x573718=0x0;_0x5ae336[_0x1a6a45(0x18a)](_0x573718,_0x11e19c['length']);_0x573718++){const _0x51db8=_0x11e19c[_0x573718];let _0x42350e;if(_0x5ae336[_0x1a6a45(0x1f5)](_0x51db8['status'],_0x1a6a45(0x1ac))&&_0x51db8['terminalReason']===_0x5ae336[_0x1a6a45(0x1c4)])_0x42350e='✅';else{if(_0x5ae336['xTmgr'](_0x51db8['status'],_0x5ae336[_0x1a6a45(0x1d7)]))_0x42350e='🟢';else{if(_0x51db8['status']==='incomplete')_0x42350e='🟠';else{if(_0x5ae336['bGrJL'](_0x51db8[_0x1a6a45(0x130)],_0x1a6a45(0x198)))_0x42350e='🛑';else{if(_0x51db8['status']===_0x5ae336['gHPFM'])_0x42350e='⛔';else _0x51db8[_0x1a6a45(0x130)]===_0x5ae336[_0x1a6a45(0x1e3)]?_0x42350e='⏳':_0x42350e='⬜';}}}}const _0x42f931=_0x51db8['version']>0x1?'\x20(v'+_0x51db8['version']+')':'',_0x52e8f2=_0x51db8[_0x1a6a45(0x1c0)]>0x1&&_0x51db8['parentItemId']&&_0x5ae336[_0x1a6a45(0x14d)](_0x51db8[_0x1a6a45(0x130)],_0x5ae336['gHPFM'])&&_0x5ae336[_0x1a6a45(0x14d)](_0x51db8['status'],_0x1a6a45(0x16c))?_0x1a6a45(0x154):'';console[_0x1a6a45(0x15b)](_0x1a6a45(0x183)+_0x5ae336[_0x1a6a45(0x16b)](_0x573718,0x1)+'.\x20'+_0x42350e+'\x20'+_0x51db8['description']+_0x42f931+_0x52e8f2);_0x5ae336[_0x1a6a45(0x1ed)](_0x51db8['status'],_0x1a6a45(0x198))&&_0x51db8['blockedReason']&&console['log'](_0x1a6a45(0x1e5)+_0x51db8[_0x1a6a45(0x193)]);_0x5ae336[_0x1a6a45(0x12b)](_0x51db8[_0x1a6a45(0x130)],_0x5ae336['fWEjC'])&&_0x51db8['incompleteReason']&&console['log'](_0x1a6a45(0x1e6)+_0x51db8['incompleteReason']);if(_0x5ae336['RPLbx'](_0x51db8['status'],_0x1a6a45(0x1ac))&&_0x5ae336[_0x1a6a45(0x18f)](_0x51db8['terminalReason'],_0x1a6a45(0x1df)))console[_0x1a6a45(0x15b)]('\x20\x20\x20\x20\x20\x20Approved');else _0x5ae336['ndPcR'](_0x51db8[_0x1a6a45(0x130)],_0x1a6a45(0x1ac))&&_0x51db8[_0x1a6a45(0x1dd)]&&console['log'](_0x1a6a45(0x1ba)+_0x51db8[_0x1a6a45(0x1dd)]);}}}export async function featureCreate(_0xb04a1a,_0x16b770){const _0x5da3f0=_0xbe20,_0x2c68d5={'CKFVF':function(_0x4140a4,_0x25a62){return _0x4140a4===_0x25a62;},'cJQgi':function(_0x3b1a82,_0x2c9421){return _0x3b1a82(_0x2c9421);},'BUGWP':function(_0x3998e8,_0x437403){return _0x3998e8(_0x437403);},'sstTR':function(_0x205582,_0x12da9c,_0x2c968b){return _0x205582(_0x12da9c,_0x2c968b);}},{envNames:_0x3c2ca9}=await getEnvNames();_0x2c68d5[_0x5da3f0(0x168)](_0x3c2ca9['length'],0x0)&&console['warn']('\x0a'+formatProfileRequiredMessage(_0xfabc45=>bold(_0xfabc45)));const _0x2ebfe7=_0x16b770[_0x5da3f0(0x177)]?_0x16b770[_0x5da3f0(0x177)][_0x5da3f0(0x13f)](_0x48d084=>_0x48d084['trim']()):[],_0x3dec3e=getGitRepoUrl(),_0x12b3b0=getGitBranch();console['log'](_0x5da3f0(0x1d6));const _0x5919cf=await _0x2c68d5[_0x5da3f0(0x13d)](createFeature,{'name':_0xb04a1a,'description':_0x16b770[_0x5da3f0(0x1c6)],'checklist':_0x2ebfe7,'gitRepoUrl':_0x3dec3e,'gitBranch':_0x12b3b0});await _0x2c68d5['cJQgi'](setActiveFeatureId,_0x5919cf['id']),await _0x2c68d5['BUGWP'](tryStartCurrentSession,_0x5919cf['id']);const _0x2062ff=process[_0x5da3f0(0x172)]['CLAUDE_SESSION_ID'];_0x2062ff&&_0x2c68d5['sstTR'](registerSession,_0x2062ff,_0x5919cf['id']),console[_0x5da3f0(0x15b)](_0x5da3f0(0x163)+_0x5919cf['id']),displayFeature(_0x5919cf,_0x5919cf[_0x5da3f0(0x151)]),console['log'](_0x5da3f0(0x1d4));}export async function featureList(_0x5244e8){const _0x4ea04c=_0xbe20,_0x53c5e5={'pxyCV':function(_0xf38118){return _0xf38118();},'qmEGS':function(_0xe04d50,_0x3571fc){return _0xe04d50(_0x3571fc);},'waQon':function(_0x20ccb9,_0x527c06){return _0x20ccb9===_0x527c06;},'KWzYQ':'\x0aNo\x20feature\x20reviews\x20found.','oCOYD':function(_0x425658,_0x363bbd){return _0x425658>_0x363bbd;},'ywZcK':'2|1|3|4|0|5','VJkdb':function(_0x5b149f,_0x15430b){return _0x5b149f+_0x15430b;},'IEvDX':_0x4ea04c(0x1c9),'gRQMe':'\x20--include-deleted'},_0x500ffd={'limit':_0x5244e8[_0x4ea04c(0x13a)]??0xa,'offset':_0x5244e8['offset']??0x0,'includeDeleted':_0x5244e8['includeDeleted']};_0x5244e8[_0x4ea04c(0x164)]&&(_0x500ffd[_0x4ea04c(0x17e)]=getGitRepoUrl(),_0x500ffd[_0x4ea04c(0x156)]=_0x53c5e5[_0x4ea04c(0x1d1)](getGitBranch));const _0x3286df=await _0x53c5e5['qmEGS'](listFeatures,_0x500ffd);if(_0x53c5e5['waQon'](_0x3286df['items']['length'],0x0)){console['log'](_0x53c5e5[_0x4ea04c(0x1dc)]);return;}const _0x35b28f=_0x53c5e5[_0x4ea04c(0x1e7)](_0x3286df['totalCount'],_0x3286df[_0x4ea04c(0x1eb)][_0x4ea04c(0x1bb)])?'Showing\x20'+_0x3286df[_0x4ea04c(0x1eb)][_0x4ea04c(0x1bb)]+_0x4ea04c(0x1a9)+_0x3286df[_0x4ea04c(0x1a1)]:_0x3286df['totalCount']+'\x20feature\x20review(s)\x20found';console[_0x4ea04c(0x15b)]('\x0a'+_0x35b28f+':\x0a');for(const _0x35e11b of _0x3286df[_0x4ea04c(0x1eb)]){const _0x23cbd2=_0x53c5e5[_0x4ea04c(0x135)][_0x4ea04c(0x16a)]('|');let _0x1926cd=0x0;while(!![]){switch(_0x23cbd2[_0x1926cd++]){case'0':console['log'](_0x4ea04c(0x15e)+new Date(_0x35e11b[_0x4ea04c(0x148)])['toLocaleDateString']());continue;case'1':console[_0x4ea04c(0x15b)](_0x4ea04c(0x169)+_0x35e11b['id']);continue;case'2':console['log'](''+_0x35e11b[_0x4ea04c(0x1d2)]);continue;case'3':_0x35e11b[_0x4ea04c(0x1f0)]&&console['log'](_0x4ea04c(0x187)+getProgressDisplay(_0x35e11b['stats']));continue;case'4':_0x35e11b['gitBranch']&&console[_0x4ea04c(0x15b)](_0x4ea04c(0x139)+_0x35e11b[_0x4ea04c(0x156)]);continue;case'5':console[_0x4ea04c(0x15b)]('');continue;}break;}}const _0x431a84=_0x500ffd['limit']??0xa,_0xc86adc=_0x53c5e5['VJkdb'](_0x500ffd['offset']??0x0,_0x3286df['items'][_0x4ea04c(0x1bb)]);if(_0xc86adc<_0x3286df[_0x4ea04c(0x1a1)]){const _0x316572=_0x431a84!==0xa?'\x20--limit\x20'+_0x431a84:'',_0x5ec3e3=_0x5244e8['currentBranch']?_0x53c5e5[_0x4ea04c(0x152)]:'',_0x121a32=_0x5244e8[_0x4ea04c(0x12a)]?_0x53c5e5['gRQMe']:'';console['log']('Next\x20page:\x20ranger\x20list\x20--offset\x20'+_0xc86adc+_0x316572+_0x5ec3e3+_0x121a32);}}function _0x2fda(){const _0x2606eb=['ISxkC','\x20\x20\x20Created:\x20','eWdqT','jgDVE','/api/v1/mcp/browser-sessions/','\x0aAvailable\x20scenarios:','\x0a✅\x20Feature\x20review\x20created:\x20','currentBranch','reports','error','broJG','CKFVF','\x20\x20\x20ID:\x20','split','kwRrB','verified',':\x20\x22','exit','sUsaV','rpmoI','isTTY','env','arrayBuffer','push','\x20blocked','Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','scenarios','after','json','replace','No\x20active\x20session\x20for\x20this\x20feature\x20review.','\x20\x20\x20\x20\x20📋\x20Selector:\x20','gpiMp','gitRepoUrl','QenYy','trim','sessionId','dashboardUrl','\x20\x20\x20','dIYmp','screenshot','QJeiG','\x20\x20\x20Progress:\x20','toLocaleDateString','VqabE','nKnpR','\x0aNo\x20matching\x20active\x20feature\x20reviews\x20found.','incompleteReason','en-US','bOrwF','dOqGL','4|5|1|0|2|3','Please\x20specify\x20the\x20feature\x20review\x20ID:\x20ranger\x20resume\x20<id>','incompleteItems','blockedReason','HRKuc','zUhlG','Scenario\x20','currentSessionId','blocked','sJKlp','prompt','stringify','all','repeat','QkJIf','\x0a✅\x20Resumed\x20feature\x20review:\x20','browserSessionId','totalCount','\x20in\x20progress','No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.','jtKhR','900693QmMicP','205ZZmnQK','scenario','\x20\x20\x20\x20\x20Branch:\x20','\x20of\x20','lDMoe','qBmlq','closed','\x20scenario(s).','trimEnd','Step\x20','RFqaD','kpMxD','2108729bzONqv','Run:\x20ranger\x20create\x20\x22<name>\x22\x20to\x20create\x20a\x20new\x20feature\x20review','\x20—\x20no\x20comments','element','6113610jwNEyM','Cannot\x20conclude\x20session\x20with\x20status:\x20','submittedAt','spatial','\x20\x20\x20\x20\x20\x20Cancelled:\x20','length','eAcJR','linkedSession','FJGRD','type','version','pkdNi','stdout','numeric','nvzIP','CCsmD','description','\x20\x20\x20\x20\x20ID:\x20','kEqTR','\x20--current-branch','\x20\x20\x20\x20\x20📍\x20Annotation:\x20','hdJQZ','selector','assetType','\x20\x20\x20Status:\x20','\x20\x20Expected\x20flow:','XfgGB','pxyCV','name','No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','\x0a➡️\x20\x20Set\x20as\x20active\x20feature\x20review','utf-8','\x0aCreating\x20feature\x20review...','IujmJ','domRef','2yHPjDr','\x0a✅\x20Session\x20','2734400yOApvB','KWzYQ','canceledReason','zcwwi','approved','toFixed','\x20\x20✅\x20No\x20feedback\x20to\x20address','\x20incomplete','kNCPb','\x20\x20\x20Run\x20`ranger\x20get-review`\x20to\x20see\x20what\x20needs\x20to\x20be\x20fixed.','\x20\x20\x20\x20\x20\x20Blocked:\x20','\x20\x20\x20\x20\x20\x20Incomplete:\x20','oCOYD','\x20\x20\x20To\x20restore\x20it,\x20run:\x20ranger\x20restore\x20','qdGaH','oMSwb','items','agentResponse','bGrJL','132052MVXVZL','iIbPF','stats','sWyTl','assets','pipe','comment_','xTmgr','\x0a⚠️\x20\x20','\x0a✅\x20Report\x20generated:\x20','excludeScenarios','ohoBc','\x20>\x20','notes','iteration','includeDeleted','RPLbx','round','git\x20rev-parse\x20--abbrev-ref\x20HEAD','exgFi','1223463piHsRX','status','\x0a❌\x20No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.','CLAUDE_SESSION_ID','point','\x20—\x20','ywZcK','\x20\x20\x20Completed:\x20','674996ymixkB','toLocaleString','\x20\x20\x20Branch:\x20','limit','pop','filter','cJQgi','ctPXE','map','completedAt','terminalReason','screenshotUrls','completed','RYsyP','latestReview','FmqSK','verification_in_progress','createdAt','\x20\x20💬\x20','short','authorName','any','ZrYvR','\x0a✅\x20Session\x20is\x20already\x20completed.','BTjqG','XvjNO','checklistItems','IEvDX','find','\x20[has\x20reviewer\x20feedback]','uSSQA','gitBranch','OFEgK','\x0a✅\x20Scenario\x20added','git\x20remote\x20get-url\x20origin','\x0a✅\x20Restored\x20feature\x20review:\x20','log','unaddressedComments'];_0x2fda=function(){return _0x2606eb;};return _0x2fda();}export async function featureShow(_0x161d68){const _0x2e20d7=_0xbe20,_0x2b1e79={'SZcpW':function(_0x12d415){return _0x12d415();},'kEqTR':'No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','qdGaH':function(_0x25ab39,_0x36075f,_0x49771b){return _0x25ab39(_0x36075f,_0x49771b);}},_0x3ed2bd=_0x161d68||await _0x2b1e79['SZcpW'](getActiveFeatureId);if(!_0x3ed2bd)throw new Error(_0x2b1e79[_0x2e20d7(0x1c8)]);const _0x2ab2e2=await getFeature(_0x3ed2bd);_0x2b1e79[_0x2e20d7(0x1e9)](displayFeature,_0x2ab2e2,_0x2ab2e2[_0x2e20d7(0x151)]);}export async function featureResume(_0x3e9f4c){const _0x309948=_0xbe20,_0x529363={'kRtSP':function(_0x42851f,_0x2d69ed){return _0x42851f(_0x2d69ed);},'BVzMk':function(_0x292615,_0x160c84){return _0x292615!==_0x160c84;},'lJrpH':function(_0x26f4c6,_0x231f13,_0x3470e3){return _0x26f4c6(_0x231f13,_0x3470e3);},'AXXlM':function(_0x4f5c56,_0x12d449,_0x3e137e){return _0x4f5c56(_0x12d449,_0x3e137e);},'eAcJR':function(_0x5fff72,_0x5589d4,_0x62dab7){return _0x5fff72(_0x5589d4,_0x62dab7);},'VMjFL':function(_0x28194f){return _0x28194f();},'rpmoI':function(_0x58c823,_0x2225a0){return _0x58c823&&_0x2225a0;},'HRKuc':'Not\x20in\x20a\x20git\x20repository.','VAvSQ':function(_0x591234,_0x5c1864){return _0x591234||_0x5c1864;},'broJG':_0x309948(0x14c),'WGpON':function(_0x227220,_0x4a9d08){return _0x227220||_0x4a9d08;},'kpMxD':function(_0x2818ec,_0x34bdee){return _0x2818ec(_0x34bdee);},'WfuNB':function(_0x14aaca,_0x42fece){return _0x14aaca===_0x42fece;},'TeYIA':_0x309948(0x1b3),'AJsBn':'selected','BBSVa':'Multiple\x20feature\x20reviews\x20found.\x20Select\x20one:','QenYy':function(_0x3e8964,_0x330cd6){return _0x3e8964(_0x330cd6);},'jgDVE':function(_0x302f4a,_0x3069f4,_0x230e03){return _0x302f4a(_0x3069f4,_0x230e03);}};if(_0x3e9f4c){const _0x2d4f23=await _0x529363['kRtSP'](getFeature,_0x3e9f4c);await setActiveFeatureId(_0x2d4f23['id']);const _0xba9d46=getGitBranch();_0xba9d46&&_0x529363['BVzMk'](_0xba9d46,_0x2d4f23['gitBranch'])&&(await _0x529363['lJrpH'](updateFeature,_0x2d4f23['id'],{'gitBranch':_0xba9d46}),console[_0x309948(0x15b)]('\x20\x20\x20Updated\x20branch\x20to:\x20'+_0xba9d46));console[_0x309948(0x15b)](_0x309948(0x19f)+_0x2d4f23[_0x309948(0x1d2)]+'\x20('+_0x2d4f23['id']+')'),await tryStartCurrentSession(_0x2d4f23['id']);const _0x254119=process[_0x309948(0x172)][_0x309948(0x132)];_0x254119&&_0x529363['AXXlM'](registerSession,_0x254119,_0x2d4f23['id']);_0x529363[_0x309948(0x1bc)](displayFeature,_0x2d4f23,_0x2d4f23[_0x309948(0x151)]),await printFeedbackNudge(_0x2d4f23['id']);return;}const _0x39b800=getGitRepoUrl(),_0xd0d046=_0x529363['VMjFL'](getGitBranch);if(_0x529363[_0x309948(0x170)](!_0x39b800,!_0xd0d046))throw new Error(_0x529363[_0x309948(0x194)]);console['log']('\x0aSearching\x20for\x20feature\x20reviews\x20matching:\x20'+_0x529363['VAvSQ'](_0x39b800,_0x529363[_0x309948(0x167)])+'\x20/\x20'+_0x529363['WGpON'](_0xd0d046,'any')+'...');const _0x270a2d=await _0x529363[_0x309948(0x1b1)](listFeatures,{'gitRepoUrl':_0x39b800,'gitBranch':_0xd0d046}),_0x2c53c2=_0x270a2d['items'][_0x309948(0x13c)](_0x33e077=>_0x33e077[_0x309948(0x130)]?_0x33e077['status']!=='verified':!_0x33e077[_0x309948(0x140)]);if(_0x529363['WfuNB'](_0x2c53c2[_0x309948(0x1bb)],0x0)){console['log'](_0x309948(0x18b)),console[_0x309948(0x15b)](_0x529363['TeYIA']);return;}let _0x533f01;if(_0x529363['WfuNB'](_0x2c53c2[_0x309948(0x1bb)],0x1))_0x533f01=_0x2c53c2[0x0];else{const _0x1abeaa=process['stdin'][_0x309948(0x171)]&&process[_0x309948(0x1c2)][_0x309948(0x171)];if(!_0x1abeaa){console[_0x309948(0x15b)]('\x0aNon-interactive\x20mode\x20detected.\x20Multiple\x20feature\x20reviews\x20found:');for(const _0x286130 of _0x2c53c2){console[_0x309948(0x15b)]('\x20\x20'+_0x286130[_0x309948(0x1d2)]),console['log'](_0x309948(0x1c7)+_0x286130['id']),_0x286130['stats']&&console[_0x309948(0x15b)]('\x20\x20\x20\x20\x20Progress:\x20'+getProgressDisplay(_0x286130[_0x309948(0x1f0)])),_0x286130[_0x309948(0x156)]&&console[_0x309948(0x15b)](_0x309948(0x1a8)+_0x286130['gitBranch']);}throw new Error(_0x309948(0x191));}const {selected:_0x1eb5c6}=await _0x19ec59[_0x309948(0x19a)]([{'type':'list','name':_0x529363['AJsBn'],'message':_0x529363['BBSVa'],'choices':_0x2c53c2['map'](_0x5d2847=>({'name':_0x5d2847[_0x309948(0x1d2)]+'\x20('+_0x5d2847['id']+')','value':_0x5d2847['id']}))}]);_0x533f01=_0x2c53c2[_0x309948(0x153)](_0x315f0c=>_0x315f0c['id']===_0x1eb5c6);}await _0x529363[_0x309948(0x17f)](setActiveFeatureId,_0x533f01['id']);_0xd0d046&&_0xd0d046!==_0x533f01[_0x309948(0x156)]&&(await updateFeature(_0x533f01['id'],{'gitBranch':_0xd0d046}),console['log']('\x20\x20\x20Updated\x20branch\x20to:\x20'+_0xd0d046));console[_0x309948(0x15b)](_0x309948(0x19f)+_0x533f01[_0x309948(0x1d2)]+'\x20('+_0x533f01['id']+')'),await tryStartCurrentSession(_0x533f01['id']);const _0x440c74=await _0x529363['kpMxD'](getFeature,_0x533f01['id']),_0x3537b6=process[_0x309948(0x172)]['CLAUDE_SESSION_ID'];_0x3537b6&®isterSession(_0x3537b6,_0x440c74['id']),_0x529363[_0x309948(0x160)](displayFeature,_0x440c74,_0x440c74[_0x309948(0x151)]),await _0x529363['QenYy'](printFeedbackNudge,_0x440c74['id']);}async function printFeedbackNudge(_0x21b7e1){const _0x20c51f=_0xbe20,_0x4b1ac4={'uSSQA':function(_0x5ab4b3,_0x25578){return _0x5ab4b3(_0x25578);},'RFqaD':function(_0x4d8d12,_0x55ae90,_0x415611){return _0x4d8d12(_0x55ae90,_0x415611);},'QkJIf':function(_0x142be3,_0x437776){return _0x142be3>_0x437776;}};try{const {items:_0x28e225}=await _0x4b1ac4[_0x20c51f(0x155)](getActionItems,_0x21b7e1);let _0x567333=0x0,_0x22cc22=0x0;for(const _0x249a4d of _0x28e225){const _0x35fc59=await _0x4b1ac4[_0x20c51f(0x1b0)](getItemFeedback,_0x21b7e1,_0x249a4d['id']);_0x4b1ac4[_0x20c51f(0x19e)](_0x35fc59['unaddressedComments'][_0x20c51f(0x1bb)],0x0)&&(_0x567333+=_0x35fc59[_0x20c51f(0x15c)]['length'],_0x22cc22++);}_0x4b1ac4['QkJIf'](_0x567333,0x0)&&(console[_0x20c51f(0x15b)](_0x20c51f(0x1f6)+_0x567333+'\x20unaddressed\x20reviewer\x20comment(s)\x20across\x20'+_0x22cc22+_0x20c51f(0x1ad)),console[_0x20c51f(0x15b)](_0x20c51f(0x1e4)));}catch{}}async function tryStartCurrentSession(_0x3a5983){const _0x207585=_0xbe20;try{const {sessions:_0x352203}=await listFeatureSessions(_0x3a5983),_0x3002c8=_0x352203['find'](_0x3bc33e=>_0x3bc33e[_0x207585(0x130)]==='ready');_0x3002c8&&(await startSession(_0x3a5983,_0x3002c8['id']),console[_0x207585(0x15b)]('\x20\x20\x20▶️\x20Started\x20session\x20'+_0x3002c8[_0x207585(0x129)]));}catch{}}export async function featureReport(_0x19a794,_0x1bbee6){const _0xed52cd=_0xbe20,_0x40ed11={'OFEgK':function(_0x5a84a0,_0x101047,_0x304ad2){return _0x5a84a0(_0x101047,_0x304ad2);},'Cobze':function(_0x2331fa){return _0x2331fa();},'iIbPF':_0xed52cd(0x165),'sUsaV':function(_0x2841ae,_0x355a19){return _0x2841ae(_0x355a19);}},_0x1ff0a4=_0x19a794||await getActiveFeatureId();if(!_0x1ff0a4)throw new Error('No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.');console['log']('\x0aGenerating\x20report...');const _0xe5c525=await _0x40ed11[_0xed52cd(0x157)](getFeatureReportMarkdown,_0x1ff0a4,{'style':_0x1bbee6['style']}),_0x566cd7=_0x1bbee6['output']||join(_0x40ed11['Cobze'](getRangerDir),_0x40ed11[_0xed52cd(0x1ef)],_0x1ff0a4+'.md'),_0x2e8624=join(_0x566cd7,'..');!_0x40ed11[_0xed52cd(0x16f)](existsSync,_0x2e8624)&&await _0x40ed11['OFEgK'](mkdir,_0x2e8624,{'recursive':!![]}),await writeFile(_0x566cd7,_0xe5c525,_0xed52cd(0x1d5)),console[_0xed52cd(0x15b)](_0xed52cd(0x1f7)+_0x566cd7);}function getScenarioResult(_0x84279b){const _0xfa83f6=_0xbe20,_0x4c8616={'gpiMp':'closed','YZxHd':function(_0x513b21,_0x398983){return _0x513b21===_0x398983;},'JhlUW':'in_progress'};if(_0x84279b['status']===_0xfa83f6(0x1ac))return _0x84279b[_0xfa83f6(0x141)]??_0x4c8616[_0xfa83f6(0x17d)];if(_0x4c8616['YZxHd'](_0x84279b['status'],_0xfa83f6(0x147)))return _0x4c8616['JhlUW'];return _0x84279b[_0xfa83f6(0x130)];}function getScenarioRationale(_0x2d7922,_0x2f6c7f){const _0x2fc4bc=_0xbe20,_0x5c7dc0={'pkdNi':_0x2fc4bc(0x190)},_0x1578c5=_0x5c7dc0[_0x2fc4bc(0x1c1)][_0x2fc4bc(0x16a)]('|');let _0x16e3fc=0x0;while(!![]){switch(_0x1578c5[_0x16e3fc++]){case'0':if(_0x2d7922['canceledReason'])return _0x2d7922[_0x2fc4bc(0x1dd)];continue;case'1':if(_0x2d7922['incompleteReason'])return _0x2d7922[_0x2fc4bc(0x18c)];continue;case'2':if(_0x2d7922['notes'])return _0x2d7922[_0x2fc4bc(0x128)];continue;case'3':return null;case'4':if(_0x2f6c7f)return _0x2f6c7f;continue;case'5':if(_0x2d7922[_0x2fc4bc(0x193)])return _0x2d7922[_0x2fc4bc(0x193)];continue;}break;}}export async function featureReportPrDescription(_0x367fa7,_0x98370){const _0x528af6=_0xbe20,_0x55810a={'ohoBc':_0x528af6(0x1a3),'hdJQZ':function(_0x225b58,_0x19120b){return _0x225b58===_0x19120b;},'XfgGB':'\x0a❌\x20All\x20scenarios\x20were\x20excluded.','jVGsC':function(_0x4ca104,_0x3202e1,_0x1d7960,_0x5a2950){return _0x4ca104(_0x3202e1,_0x1d7960,_0x5a2950);}},_0x16b70a=_0x367fa7||await getActiveFeatureId();if(!_0x16b70a)throw new Error(_0x55810a[_0x528af6(0x1f9)]);const _0x4258b8=await getFeature(_0x16b70a),_0x52d63e=_0x4258b8['checklistItems']||[],_0x12cb2f=getCurrentSessionItems(_0x4258b8,_0x52d63e);_0x12cb2f[_0x528af6(0x1bb)]===0x0&&(console['error']('\x0a❌\x20No\x20scenarios\x20found\x20to\x20include.'),process['exit'](0x1));const _0x2f7aa3=_0x98370[_0x528af6(0x1f8)]??[],_0x5038a6=_0x2f7aa3['filter'](_0x386740=>!Number['isInteger'](_0x386740)||_0x386740<0x1||_0x386740>_0x12cb2f[_0x528af6(0x1bb)]);if(_0x5038a6[_0x528af6(0x1bb)]>0x0){console[_0x528af6(0x166)]('\x0a❌\x20Invalid\x20scenario\x20number(s):\x20'+_0x5038a6['join'](',\x20')),console['log']('\x0aAvailable\x20scenarios:');for(let _0x57294e=0x0;_0x57294e<_0x12cb2f[_0x528af6(0x1bb)];_0x57294e++){console['log']('\x20\x20'+(_0x57294e+0x1)+'.\x20'+_0x12cb2f[_0x57294e]['description']);}process[_0x528af6(0x16e)](0x1);}const _0xd65080=new Set(_0x2f7aa3[_0x528af6(0x13f)](_0x9b6f7b=>_0x9b6f7b-0x1)),_0x587262=_0x12cb2f['filter']((_0x534c2b,_0xe11e7b)=>!_0xd65080['has'](_0xe11e7b));_0x55810a[_0x528af6(0x1cb)](_0x587262[_0x528af6(0x1bb)],0x0)&&(console[_0x528af6(0x166)](_0x55810a[_0x528af6(0x1d0)]),process['exit'](0x1));if(_0x98370[_0x528af6(0x179)])await _0x55810a['jVGsC'](outputJsonReport,_0x16b70a,_0x4258b8,_0x587262);else{const _0x50d451=await getFeatureReportMarkdown(_0x16b70a,{'itemIds':_0x587262['map'](_0x558fa7=>_0x558fa7['id'])});process['stdout']['write'](_0x50d451[_0x528af6(0x1ae)]()+'\x0a');}}async function outputJsonReport(_0x4eef5d,_0x20055e,_0x94d1b2){const _0x5ddb0a=_0xbe20,_0x289085={'xqaqG':function(_0x3638ff,_0x13cc97){return _0x3638ff>_0x13cc97;},'jtKhR':function(_0x3d3a73,_0x544e54,_0x1ed0ed){return _0x3d3a73(_0x544e54,_0x1ed0ed);},'qQnck':function(_0x254f74){return _0x254f74();}},_0x5c6dd3=_0x289085['qQnck'](getApiBaseUrl),_0x37be24=await getFeatureReport(_0x4eef5d),_0x36341f=new Map(_0x37be24[_0x5ddb0a(0x151)]['map'](_0x482847=>[_0x482847['id'],_0x482847])),_0xaf6b02=await Promise[_0x5ddb0a(0x19c)](_0x94d1b2['map'](async _0x225e83=>{const _0x30bec1=_0x5ddb0a,_0x48d23a=_0x36341f['get'](_0x225e83['id']),_0x58ed71=_0x48d23a?.[_0x30bec1(0x1bd)]??null;let _0x1c5e24=[];if(_0x225e83[_0x30bec1(0x1a0)])try{const {steps:_0x2e25ab}=await getBrowserSessionSteps(_0x225e83[_0x30bec1(0x1a0)]);_0x289085['xqaqG'](_0x2e25ab['length'],0x0)&&(_0x1c5e24=_0x2e25ab['map'](_0xbbe7ca=>{const _0x4aeaea=_0x30bec1,_0x1c6d4e=_0xbbe7ca[_0x4aeaea(0x1f2)]['find'](_0x97f8a5=>_0x97f8a5['assetType']===_0x4aeaea(0x185)&&_0x97f8a5['timing']===_0x4aeaea(0x178))??_0xbbe7ca[_0x4aeaea(0x1f2)]['find'](_0x126cb7=>_0x126cb7[_0x4aeaea(0x1cd)]==='screenshot');let _0x2d8bfc=null,_0x346b9b=null;if(_0x1c6d4e){const _0xe6a50c=_0x1c6d4e['storage']['location'][_0x4aeaea(0x16a)]('/')['pop']();_0x2d8bfc=_0x5c6dd3+_0x4aeaea(0x161)+_0x225e83['browserSessionId']+'/artifacts/'+_0xe6a50c,_0xe6a50c&&(_0x346b9b=_0xe6a50c[_0x4aeaea(0x17a)](/\.\w+$/,'')['replace'](/^(key_)?\d+_/,'')['replace'](/[-_]/g,'\x20'));}return{'description':_0x346b9b||_0xbbe7ca['description']||_0xbbe7ca['stepName']||_0x4aeaea(0x1af)+_0xbbe7ca['position'],'screenshot':_0x2d8bfc,'is_key_step':_0xbbe7ca['isKeyStep']};}));}catch{}return _0x1c5e24[_0x30bec1(0x1bb)]===0x0&&_0x58ed71?.[_0x30bec1(0x142)]&&(_0x1c5e24=_0x58ed71[_0x30bec1(0x142)]['map']((_0x371416,_0x4122e2)=>({'description':'Screenshot\x20'+(_0x4122e2+0x1),'screenshot':_0x371416,'is_key_step':![]}))),{'description':_0x225e83['description'],'result':getScenarioResult(_0x225e83),'rationale':_0x289085[_0x30bec1(0x1a4)](getScenarioRationale,_0x225e83,_0x58ed71?.[_0x30bec1(0x1ec)]),'steps':_0x1c5e24};})),_0x109995={'url':_0x20055e[_0x5ddb0a(0x182)],'scenarios':_0xaf6b02};process[_0x5ddb0a(0x1c2)]['write'](JSON[_0x5ddb0a(0x19b)](_0x109995,null,0x2)+'\x0a');}export async function featureConcludeSession(_0x447e3a){const _0x45d2f8=_0xbe20,_0x29602f={'JQsho':function(_0x42ec7d){return _0x42ec7d();},'oMSwb':_0x45d2f8(0x1d3),'FmqSK':function(_0x33b1fb,_0x449adb){return _0x33b1fb(_0x449adb);},'ZUJNd':_0x45d2f8(0x17b),'wDvzN':function(_0x1167c7,_0x5bdf40){return _0x1167c7===_0x5bdf40;}},_0x3fabe8=_0x447e3a||await _0x29602f['JQsho'](getActiveFeatureId);if(!_0x3fabe8)throw new Error(_0x29602f[_0x45d2f8(0x1ea)]);const _0x3959b8=await _0x29602f['FmqSK'](getFeature,_0x3fabe8);if(!_0x3959b8['currentSessionId'])throw new Error(_0x29602f['ZUJNd']);const {sessions:_0x145e02}=await _0x29602f[_0x45d2f8(0x146)](listFeatureSessions,_0x3fabe8),_0xfafb14=_0x145e02['find'](_0x5547c9=>_0x5547c9['id']===_0x3959b8['currentSessionId']);if(!_0xfafb14)throw new Error('Current\x20session\x20not\x20found.');if(_0x29602f['wDvzN'](_0xfafb14[_0x45d2f8(0x130)],_0x45d2f8(0x143))){console[_0x45d2f8(0x15b)](_0x45d2f8(0x14e));return;}if(_0xfafb14['status']!=='in_progress')throw new Error(_0x45d2f8(0x1b7)+_0xfafb14['status']);console['log']('\x0aConcluding\x20session...'),await concludeSession(_0x3fabe8,_0x3959b8[_0x45d2f8(0x197)]),console['log'](_0x45d2f8(0x1da)+_0xfafb14[_0x45d2f8(0x129)]+'\x20concluded.'),console[_0x45d2f8(0x15b)]('\x20\x20\x20The\x20feature\x20review\x20is\x20now\x20ready\x20for\x20human\x20review\x20on\x20the\x20Ranger\x20dashboard.');}export async function featureSessions(_0x57b05a){const _0x4ac1ac=_0xbe20,_0x2e7023={'FJGRD':function(_0x40e446){return _0x40e446();},'RYsyP':function(_0x9dec86,_0x536493){return _0x9dec86(_0x536493);},'BTjqG':function(_0x2f0637,_0x57d967){return _0x2f0637===_0x57d967;},'vOrXh':'completed','olTJR':function(_0x35db6e,_0x2c7f7b){return _0x35db6e===_0x2c7f7b;}},_0x1e0c37=_0x57b05a||await _0x2e7023[_0x4ac1ac(0x1be)](getActiveFeatureId);if(!_0x1e0c37)throw new Error(_0x4ac1ac(0x1a3));const _0x291fa9=await getFeature(_0x1e0c37);console[_0x4ac1ac(0x15b)]('\x0a📁\x20Sessions\x20for\x20feature\x20review:\x20'+_0x291fa9['name']+'\x0a');const {sessions:_0x4bc799}=await _0x2e7023[_0x4ac1ac(0x144)](listFeatureSessions,_0x1e0c37);if(_0x2e7023[_0x4ac1ac(0x14f)](_0x4bc799[_0x4ac1ac(0x1bb)],0x0)){console[_0x4ac1ac(0x15b)]('No\x20sessions\x20found.');return;}for(const _0xf4b4 of _0x4bc799){const _0xa7bf45=_0xf4b4[_0x4ac1ac(0x130)]===_0x2e7023['vOrXh']?'✅':_0x2e7023['olTJR'](_0xf4b4['status'],'in_progress')?'🔄':'▶️';console['log'](_0xa7bf45+'\x20Session\x20'+_0xf4b4['iteration']+'\x20('+_0xf4b4['id']+')'),console['log'](_0x4ac1ac(0x1ce)+_0xf4b4['status']),console[_0x4ac1ac(0x15b)](_0x4ac1ac(0x15e)+new Date(_0xf4b4[_0x4ac1ac(0x148)])[_0x4ac1ac(0x138)]()),_0xf4b4['completedAt']&&console[_0x4ac1ac(0x15b)](_0x4ac1ac(0x136)+new Date(_0xf4b4['completedAt'])['toLocaleString']()),console[_0x4ac1ac(0x15b)]('');}}export async function featureAddScenario(_0x11f123,_0x13d1a2){const _0x3ac4d0=_0xbe20,_0x100b8b={'Awfqz':function(_0x24b411){return _0x24b411();},'kWWde':function(_0x1e247,_0x2b15c1){return _0x1e247(_0x2b15c1);},'meQkj':function(_0x561d8f,_0x42aa07,_0xa95efc){return _0x561d8f(_0x42aa07,_0xa95efc);},'RsBTW':function(_0x440308,_0x49a6e1){return _0x440308(_0x49a6e1);}},_0x4d1fc9=_0x13d1a2||await _0x100b8b['Awfqz'](getActiveFeatureId);if(!_0x4d1fc9)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 _0x502904=await _0x100b8b['kWWde'](getFeature,_0x4d1fc9);if(_0x502904['latestReview']&&!_0x502904[_0x3ac4d0(0x145)][_0x3ac4d0(0x1b8)])throw new Error('Cannot\x20add\x20scenario:\x20feature\x20review\x20has\x20an\x20active\x20review.\x20Please\x20finish\x20your\x20review\x20first:\x20'+_0x502904[_0x3ac4d0(0x182)]);await _0x100b8b['meQkj'](createChecklistItem,_0x4d1fc9,_0x11f123);const _0x5f33d5=await _0x100b8b['RsBTW'](getFeature,_0x4d1fc9);console[_0x3ac4d0(0x15b)](_0x3ac4d0(0x158)),displayFeature(_0x5f33d5,_0x5f33d5['checklistItems']);}export async function featureEditScenario(_0x16a7f7,_0x5523f8){const _0x492263=_0xbe20,_0x55dd58={'eWdqT':function(_0x7b4102){return _0x7b4102();},'lDMoe':_0x492263(0x176),'tDQhm':'\x0a❌\x20No\x20scenario\x20number\x20provided.\x20Use\x20--scenario\x20<number>.','MmifK':function(_0x3b4634,_0x347c8d){return _0x3b4634<_0x347c8d;},'dIYmp':_0x492263(0x162),'PFPfW':function(_0x3ec2e1,_0x4fa5f6){return _0x3ec2e1+_0x4fa5f6;},'yHMuX':function(_0x23cce6,_0x108c0e,_0x4d0fc1,_0x126e7f){return _0x23cce6(_0x108c0e,_0x4d0fc1,_0x126e7f);}},_0x33c542=_0x5523f8['id']||await _0x55dd58[_0x492263(0x15f)](getActiveFeatureId);!_0x33c542&&(console[_0x492263(0x166)](_0x492263(0x131)),console[_0x492263(0x166)](_0x55dd58[_0x492263(0x1aa)]),process['exit'](0x1));const _0x298004=await getFeature(_0x33c542);_0x298004[_0x492263(0x145)]&&!_0x298004['latestReview'][_0x492263(0x1b8)]&&(console['error']('\x0a❌\x20Cannot\x20edit\x20scenario:\x20feature\x20review\x20has\x20an\x20active\x20review.'),console[_0x492263(0x166)]('Please\x20finish\x20your\x20review\x20first:'),console['error']('\x20\x20'+_0x298004[_0x492263(0x182)]),process[_0x492263(0x16e)](0x1));const _0x239a68=_0x298004['checklistItems']||[];_0x239a68['length']===0x0&&(console[_0x492263(0x166)]('\x0a❌\x20No\x20scenarios\x20found\x20to\x20edit.'),process['exit'](0x1));if(_0x5523f8[_0x492263(0x1a7)]===undefined){console[_0x492263(0x166)](_0x55dd58['tDQhm']),console[_0x492263(0x15b)](_0x492263(0x162));for(let _0x1cd788=0x0;_0x55dd58['MmifK'](_0x1cd788,_0x239a68['length']);_0x1cd788++){console['log']('\x20\x20'+(_0x1cd788+0x1)+'.\x20'+_0x239a68[_0x1cd788][_0x492263(0x1c6)]);}process['exit'](0x1);}const _0x1d163c=_0x5523f8[_0x492263(0x1a7)]-0x1;if(_0x1d163c<0x0||_0x1d163c>=_0x239a68[_0x492263(0x1bb)]){console[_0x492263(0x166)]('\x0a❌\x20Invalid\x20scenario\x20index:\x20'+_0x5523f8[_0x492263(0x1a7)]+'.\x20Feature\x20review\x20has\x20'+_0x239a68[_0x492263(0x1bb)]+'\x20scenarios.'),console[_0x492263(0x15b)](_0x55dd58[_0x492263(0x184)]);for(let _0x2188e7=0x0;_0x2188e7<_0x239a68['length'];_0x2188e7++){console[_0x492263(0x15b)]('\x20\x20'+_0x55dd58['PFPfW'](_0x2188e7,0x1)+'.\x20'+_0x239a68[_0x2188e7]['description']);}process['exit'](0x1);}const _0x55bb66=_0x239a68[_0x1d163c];await _0x55dd58['yHMuX'](updateChecklistItem,_0x33c542,_0x55bb66['id'],{'description':_0x16a7f7});const _0x5cbcd9=await getFeature(_0x33c542);console['log']('\x0a✅\x20Scenario\x20updated'),displayFeature(_0x5cbcd9,_0x5cbcd9[_0x492263(0x151)]);}async function downloadFeedbackImage(_0x42e349,_0xc9db89){const _0xdc2131=_0xbe20,_0x5793f5={'sJKlp':function(_0x356e19,_0x155524,_0x1edde4){return _0x356e19(_0x155524,_0x1edde4);},'sWyTl':function(_0x2c8ecd,_0x2e4671,_0x41d2c4){return _0x2c8ecd(_0x2e4671,_0x41d2c4);},'ISxkC':function(_0x2c9248,_0x34964b){return _0x2c9248(_0x34964b);}};try{const _0x4d4db1=join(getRangerDir(),'feedback-images');await _0x5793f5['sJKlp'](mkdir,_0x4d4db1,{'recursive':!![]});const _0x4adf93=_0x5793f5[_0xdc2131(0x1f1)](join,_0x4d4db1,_0xdc2131(0x1f4)+_0xc9db89+'.png'),_0x166543=await _0x5793f5[_0xdc2131(0x15d)](fetch,_0x42e349);if(!_0x166543['ok'])return null;const _0x1f2358=Buffer['from'](await _0x166543[_0xdc2131(0x173)]());return await _0x5793f5[_0xdc2131(0x199)](writeFile,_0x4adf93,_0x1f2358),_0x4adf93;}catch{return null;}}export async function featureGetReview(_0x1727af){const _0x1aaa3f=_0xbe20,_0x18f532={'MmEtR':function(_0x1db792){return _0x1db792();},'HiWMD':function(_0x398c37,_0x5c90ce){return _0x398c37>_0x5c90ce;},'bysxT':function(_0x2a3115,_0x5a75c6,_0xdfa93f){return _0x2a3115(_0x5a75c6,_0xdfa93f);},'QdhDi':_0x1aaa3f(0x18d),'wqocS':_0x1aaa3f(0x1c3),'CMfoP':'Unknown','zUhlG':function(_0x5b54aa,_0x16df8c,_0x4aba59){return _0x5b54aa(_0x16df8c,_0x4aba59);},'wnlOJ':_0x1aaa3f(0x1fa)},_0x4c9628=_0x1727af||await _0x18f532['MmEtR'](getActiveFeatureId);if(!_0x4c9628)throw new Error(_0x1aaa3f(0x1d3));const _0x4ff2e2=await getFeature(_0x4c9628),{items:_0x167d2f}=await getActionItems(_0x4c9628);console[_0x1aaa3f(0x15b)]('\x0a📋\x20Feedback\x20for:\x20'+_0x4ff2e2['name']+'\x20('+_0x4ff2e2['id']+')\x0a');if(_0x167d2f['length']===0x0){console[_0x1aaa3f(0x15b)]('No\x20scenarios\x20found.');return;}for(let _0x4d3f84=0x0;_0x4d3f84<_0x167d2f[_0x1aaa3f(0x1bb)];_0x4d3f84++){const _0x9819db=_0x167d2f[_0x4d3f84],_0xc121eb=_0x18f532['HiWMD'](_0x9819db[_0x1aaa3f(0x1c0)],0x1)?'\x20(v'+_0x9819db[_0x1aaa3f(0x1c0)]+')':'',_0x3abf74=await _0x18f532['bysxT'](getItemFeedback,_0x4c9628,_0x9819db['id']);if(_0x18f532['HiWMD'](_0x3abf74['unaddressedComments']['length'],0x0)){console[_0x1aaa3f(0x15b)]('Scenario\x20'+(_0x4d3f84+0x1)+_0x1aaa3f(0x16d)+_0x9819db[_0x1aaa3f(0x1c6)]+'\x22'+_0xc121eb+_0x1aaa3f(0x134)+_0x3abf74[_0x1aaa3f(0x15c)][_0x1aaa3f(0x1bb)]+'\x20unaddressed\x20comment(s)');for(const _0x47974a of _0x3abf74[_0x1aaa3f(0x15c)]){const _0x44613f=new Date(_0x47974a['createdAt'])[_0x1aaa3f(0x188)](_0x18f532['QdhDi'],{'month':_0x1aaa3f(0x14a),'day':_0x18f532['wqocS']}),_0x57bb7c=_0x47974a[_0x1aaa3f(0x14b)]||_0x47974a['authorEmail']||_0x18f532['CMfoP'];console[_0x1aaa3f(0x15b)](_0x1aaa3f(0x149)+_0x57bb7c+'\x20('+_0x44613f+'):\x20\x22'+_0x47974a['content']+'\x22');if(_0x47974a['assetUrl']){const _0x5e7b46=await _0x18f532[_0x1aaa3f(0x195)](downloadFeedbackImage,_0x47974a['assetUrl'],_0x47974a['id']);_0x5e7b46&&console[_0x1aaa3f(0x15b)]('\x20\x20\x20\x20\x20📷\x20Screenshot:\x20'+_0x5e7b46);}if(_0x47974a['domRef']){const _0x591687=_0x47974a[_0x1aaa3f(0x1d8)]['selector']['split'](_0x18f532['wnlOJ'])[_0x1aaa3f(0x13b)]()?.[_0x1aaa3f(0x16a)](':')[0x0]||_0x1aaa3f(0x1b5),_0x3493ed=_0x47974a[_0x1aaa3f(0x1d8)]['textContent']?'\x20\x22'+_0x47974a['domRef']['textContent']['slice'](0x0,0x3c)+'\x22':'';console[_0x1aaa3f(0x15b)]('\x20\x20\x20\x20\x20🎯\x20Element:\x20<'+_0x591687+'>'+_0x3493ed),console[_0x1aaa3f(0x15b)](_0x1aaa3f(0x17c)+_0x47974a[_0x1aaa3f(0x1d8)][_0x1aaa3f(0x1cc)]);}else{if(_0x47974a[_0x1aaa3f(0x1b9)]){const _0x1e530e=_0x47974a[_0x1aaa3f(0x1b9)]['coordinates'];_0x47974a['spatial']['type']===_0x1aaa3f(0x133)&&_0x1e530e[_0x1aaa3f(0x1bb)]>=0x2?console[_0x1aaa3f(0x15b)]('\x20\x20\x20\x20\x20📍\x20Annotation:\x20point\x20at\x20('+_0x1e530e[0x0]['toFixed'](0x2)+',\x20'+_0x1e530e[0x1][_0x1aaa3f(0x1e0)](0x2)+')'):console['log'](_0x1aaa3f(0x1ca)+_0x47974a['spatial'][_0x1aaa3f(0x1bf)]+'\x20at\x20['+_0x1e530e['map'](_0xa7d12=>_0xa7d12[_0x1aaa3f(0x1e0)](0x2))['join'](',\x20')+']');}}}if(_0x3abf74['canonicalFlow']){console[_0x1aaa3f(0x15b)](_0x1aaa3f(0x1cf));for(const _0xaa7640 of _0x3abf74['canonicalFlow']['split']('\x0a')){console[_0x1aaa3f(0x15b)]('\x20\x20\x20\x20'+_0xaa7640);}}}else console[_0x1aaa3f(0x15b)](_0x1aaa3f(0x196)+(_0x4d3f84+0x1)+_0x1aaa3f(0x16d)+_0x9819db[_0x1aaa3f(0x1c6)]+'\x22'+_0xc121eb+_0x1aaa3f(0x1b4)),console[_0x1aaa3f(0x15b)](_0x1aaa3f(0x1e1));console['log']('');}}export async function featureDelete(_0x8dc2b5){const _0xa42df3=_0xbe20,_0x482e11={'XvjNO':function(_0x497ca0,_0x36ba03){return _0x497ca0(_0x36ba03);},'wGOZN':function(_0x32bee1,_0x41153a){return _0x32bee1(_0x41153a);}},_0x356f5e=_0x8dc2b5||await getActiveFeatureId();if(!_0x356f5e)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 _0x17ae82=await _0x482e11[_0xa42df3(0x150)](getFeature,_0x356f5e);await _0x482e11['wGOZN'](softDeleteFeature,_0x356f5e),console['log']('\x0a🗑️\x20\x20Deleted\x20feature\x20review:\x20'+_0x17ae82[_0xa42df3(0x1d2)]+'\x20('+_0x356f5e+')'),console[_0xa42df3(0x15b)](_0xa42df3(0x1e8)+_0x356f5e);}export async function featureRestore(_0x3f820f){const _0x322cb7=_0xbe20,_0x12f557={'CCsmD':function(_0x4aae0c,_0x4ab2bf){return _0x4aae0c(_0x4ab2bf);}};await _0x12f557[_0x322cb7(0x1c5)](restoreFeature,_0x3f820f);const _0x1ce0f3=await _0x12f557['CCsmD'](getFeature,_0x3f820f);console['log'](_0x322cb7(0x15a)+_0x1ce0f3['name']+'\x20('+_0x3f820f+')'),displayFeature(_0x1ce0f3,_0x1ce0f3['checklistItems']);}
|
package/build/commands/hook.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x539329,_0x5ed132){const _0x402dd3=_0x5778,_0x218c14=_0x539329();while(!![]){try{const _0x3e28e9=parseInt(_0x402dd3(0x12f))/0x1*(parseInt(_0x402dd3(0x12b))/0x2)+-parseInt(_0x402dd3(0x127))/0x3+parseInt(_0x402dd3(0x124))/0x4*(parseInt(_0x402dd3(0x120))/0x5)+parseInt(_0x402dd3(0x122))/0x6*(parseInt(_0x402dd3(0x12a))/0x7)+-parseInt(_0x402dd3(0x131))/0x8+-parseInt(_0x402dd3(0x126))/0x9+-parseInt(_0x402dd3(0x11f))/0xa*(-parseInt(_0x402dd3(0x125))/0xb);if(_0x3e28e9===_0x5ed132)break;else _0x218c14['push'](_0x218c14['shift']());}catch(_0x111817){_0x218c14['push'](_0x218c14['shift']());}}}(_0x2cab,0x4683f));function _0x2cab(){const _0x3285ef=['join','659RsaGJi','exit','3836984yGvVkL','130MFDiMs','5ZQVncn','WMQkB','385062BVXKRm','AhSqY','1799612qxlIWr','320980pkEOrh','2909673pjvtrU','519129uMtHQC','Unknown\x20hook:\x20','SIGTERM','35FEmOPB','348NaaTOf','once','SIGINT'];_0x2cab=function(){return _0x3285ef;};return _0x2cab();}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};function _0x5778(_0x52cb64,_0x308f03){_0x52cb64=_0x52cb64-0x11f;const _0x2cabf0=_0x2cab();let _0x5778bf=_0x2cabf0[_0x52cb64];return _0x5778bf;}let cancellationHandlersInstalled=![];function installCancellationHandlers(){const _0x31efea=_0x5778;if(cancellationHandlersInstalled)return;const _0x5627a1=()=>{process['exit'](0x0);};process[_0x31efea(0x12c)](_0x31efea(0x12d),_0x5627a1),process['once'](_0x31efea(0x129),_0x5627a1),process['once']('SIGHUP',_0x5627a1),cancellationHandlersInstalled=!![];}export async function hook(_0x379bb8,_0x2cf7a4){const _0x5b2c50=_0x5778,_0x4718aa={'WMQkB':function(_0x2a00c0){return _0x2a00c0();},'AhSqY':function(_0x617f93,_0xa9908e){return _0x617f93(_0xa9908e);}};_0x4718aa[_0x5b2c50(0x121)](installCancellationHandlers);const _0x5614a8=HOOKS[_0x379bb8];if(!_0x5614a8){const _0x2a151f=Object['keys'](HOOKS)[_0x5b2c50(0x12e)](',\x20');console['error'](_0x5b2c50(0x128)+_0x379bb8),console['error']('Valid\x20hooks:\x20'+_0x2a151f),process[_0x5b2c50(0x130)](0x1);}await _0x4718aa[_0x5b2c50(0x123)](_0x5614a8,_0x2cf7a4);}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const _0x3f378f=_0x4f95;(function(_0xe5dd04,_0x2067db){const _0x5056ad=_0x4f95,_0x2334a5=_0xe5dd04();while(!![]){try{const _0x11069a=parseInt(_0x5056ad(0x1c7))/0x1*(parseInt(_0x5056ad(0x1c2))/0x2)+parseInt(_0x5056ad(0x1be))/0x3+-parseInt(_0x5056ad(0x1c0))/0x4+-parseInt(_0x5056ad(0x1c3))/0x5+-parseInt(_0x5056ad(0x1c4))/0x6+parseInt(_0x5056ad(0x1c6))/0x7*(parseInt(_0x5056ad(0x1bf))/0x8)+parseInt(_0x5056ad(0x1c1))/0x9*(-parseInt(_0x5056ad(0x1c5))/0xa);if(_0x11069a===_0x2067db)break;else _0x2334a5['push'](_0x2334a5['shift']());}catch(_0x404dc7){_0x2334a5['push'](_0x2334a5['shift']());}}}(_0x41d2,0xa22a3));import{readHookInput}from'./output.js';import{isSessionEnabled,hasSessionBeenPrompted,markSessionPrompted}from'../utils/sessionCache.js';function _0x41d2(){const _0x91696d=['\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.','3318447RlZOKA','5384DJJALC','3438924QMhFtJ','1642338WPhNCr','2omlPCN','4962665mFZAry','2814816OqEwxy','10HkvtJS','12929vGiFVW','818929Nhwhca'];_0x41d2=function(){return _0x91696d;};return _0x41d2();}function _0x4f95(_0x319a0c,_0x1b5dcf){_0x319a0c=_0x319a0c-0x1bd;const _0x41d2d4=_0x41d2();let _0x4f9539=_0x41d2d4[_0x319a0c];return _0x4f9539;}const AUTO_PROMPT_TEXT=_0x3f378f(0x1bd);export async function autoPrompt(){const _0x443714={'zDoto':function(_0x426bc5,_0x2743f5){return _0x426bc5(_0x2743f5);}},_0x2e7c04=await readHookInput(),_0x309559=_0x2e7c04?.['session_id'];if(!_0x309559)return;if(isSessionEnabled(_0x309559)||_0x443714['zDoto'](hasSessionBeenPrompted,_0x309559))return;markSessionPrompted(_0x309559),console['log'](AUTO_PROMPT_TEXT);}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x1b39f2,_0x1dcc82){const _0x144165=_0x29dd,_0x5655e8=_0x1b39f2();while(!![]){try{const _0x794175=parseInt(_0x144165(0x1ab))/0x1+parseInt(_0x144165(0x1aa))/0x2+-parseInt(_0x144165(0x1a5))/0x3+-parseInt(_0x144165(0x1ad))/0x4+parseInt(_0x144165(0x1a8))/0x5*(parseInt(_0x144165(0x1af))/0x6)+-parseInt(_0x144165(0x1a9))/0x7*(parseInt(_0x144165(0x1ae))/0x8)+-parseInt(_0x144165(0x1a4))/0x9;if(_0x794175===_0x1dcc82)break;else _0x5655e8['push'](_0x5655e8['shift']());}catch(_0x143b57){_0x5655e8['push'](_0x5655e8['shift']());}}}(_0xdfa3,0x98457));function _0xdfa3(){const _0x3d179c=['7161342pKalVX','xnuEq','\x20and\x20branch\x20\x27','MjOVV','main','master','MgTvO','7650918TvkZME','512817EKZteB','CLAUDE_SESSION_ID','env','5sGdstA','2884693xNcBGG','1207612EXvaLM','885882VvUHyF','rcfZk','857212CZbnkm','16yGXzsm'];_0xdfa3=function(){return _0x3d179c;};return _0xdfa3();}function _0x29dd(_0x132d59,_0x14d202){_0x132d59=_0x132d59-0x1a1;const _0xdfa36a=_0xdfa3();let _0x29dd7f=_0xdfa36a[_0x132d59];return _0x29dd7f;}import{disableSession,disableBranch,getCurrentBranch}from'../utils/sessionCache.js';import{printBlock}from'./output.js';export async function disable(_0x2c592){const _0x21ada4=_0x29dd,_0x1a6eff={'rcfZk':function(_0xaed3fc){return _0xaed3fc();},'MgTvO':_0x21ada4(0x1a1),'xnuEq':function(_0x4fdc57,_0x464ff4){return _0x4fdc57!==_0x464ff4;},'MjOVV':function(_0x4bbe42,_0x63c3a1){return _0x4bbe42(_0x63c3a1);},'FZyar':function(_0x16dfe6,_0x2ba78c){return _0x16dfe6(_0x2ba78c);},'IZcgD':function(_0x4f8ba8,_0x5ad2f2){return _0x4f8ba8!==_0x5ad2f2;},'OplHR':'master'},_0x10ea10=_0x2c592||process[_0x21ada4(0x1a7)][_0x21ada4(0x1a6)]||'';_0x10ea10&&disableSession(_0x10ea10);const _0x20813f=_0x1a6eff[_0x21ada4(0x1ac)](getCurrentBranch);_0x20813f&&_0x20813f!==_0x1a6eff['MgTvO']&&_0x1a6eff[_0x21ada4(0x1b0)](_0x20813f,_0x21ada4(0x1a2))&&_0x1a6eff[_0x21ada4(0x1b2)](disableBranch,_0x20813f),_0x1a6eff['FZyar'](printBlock,'#\x20RANGER\x20DISABLED\x0a\x0aThe\x20user\x20has\x20expressly\x20disabled\x20Ranger\x20hooks\x20for\x20this\x20session'+(_0x20813f&&_0x1a6eff['IZcgD'](_0x20813f,_0x1a6eff[_0x21ada4(0x1a3)])&&_0x1a6eff[_0x21ada4(0x1b0)](_0x20813f,_0x1a6eff['OplHR'])?_0x21ada4(0x1b1)+_0x20813f+'\x27':'')+'.\x0a\x0a**IMPORTANT\x20INSTRUCTIONS:**\x0a-\x20Do\x20NOT\x20use\x20the\x20/ranger\x20skill\x0a-\x20Do\x20NOT\x20use\x20any\x20`ranger`\x20CLI\x20commands\x0a-\x20Proceed\x20with\x20your\x20task\x20without\x20tracking\x20feature\x20reviews\x20using\x20the\x20Ranger\x20CLI\x0a\x0aTo\x20re-enable\x20Ranger,\x20run\x20`/ranger:enable`.');}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
function _0x3662(){const _0x1b969d=['`\x0a\x0aA\x20browser\x20will\x20open\x20for\x20authentication.\x20A\x20human\x20needs\x20to\x20complete\x20the\x20login.\x0a','uiGlV','138664UQgEan','\x0a\x0a**For\x20ANY\x20UI\x20work,\x20you\x20MUST\x20use\x20the\x20/ranger\x20skill.**\x0a\x0a','YSajm','7uDuLvM','377563FDlCjf','aQgwW','#\x20RANGER\x20ENABLED','3591786TpUBHD','6410655PVuaKw','3779645NKQgpJ','ranger\x20setup','CLAUDE_SESSION_ID','master','33CKevzO','Restart\x20your\x20Claude\x20Code\x20session\x20after\x20setup.','#\x20RANGER\x20SETUP\x20REQUIRED\x0a\x0aThe\x20Ranger\x20CLI\x20is\x20not\x20configured.\x20To\x20get\x20started:\x0a\x0a1.\x20Install:\x20`npm\x20install\x20-g\x20@ranger-testing/ranger-cli`\x0a2.\x20Run:\x20`','916032UpHcJG','main','3340824vzKwto'];_0x3662=function(){return _0x1b969d;};return _0x3662();}(function(_0x4a2ed1,_0xff5790){const _0x195f3d=_0x260f,_0x19010c=_0x4a2ed1();while(!![]){try{const _0x559bff=parseInt(_0x195f3d(0xb1))/0x1+-parseInt(_0x195f3d(0xa8))/0x2+parseInt(_0x195f3d(0xa5))/0x3*(parseInt(_0x195f3d(0xad))/0x4)+-parseInt(_0x195f3d(0xa1))/0x5+parseInt(_0x195f3d(0xb4))/0x6*(parseInt(_0x195f3d(0xb0))/0x7)+-parseInt(_0x195f3d(0xaa))/0x8+parseInt(_0x195f3d(0xa0))/0x9;if(_0x559bff===_0xff5790)break;else _0x19010c['push'](_0x19010c['shift']());}catch(_0x23da71){_0x19010c['push'](_0x19010c['shift']());}}}(_0x3662,0x6affb));import{enableSession,getCurrentBranch}from'../utils/sessionCache.js';import{getToken}from'../utils/keychain.js';function _0x260f(_0x3a0f29,_0x332531){_0x3a0f29=_0x3a0f29-0xa0;const _0x3662a0=_0x3662();let _0x260fca=_0x3662a0[_0x3a0f29];return _0x260fca;}import{getRangerSkillContent}from'../utils/skillContent.js';import{printBlock}from'./output.js';import{update}from'../update.js';export async function enable(_0x3c53c8){const _0x29dca3=_0x260f,_0x33e0e7={'aQgwW':function(_0x37fc80,_0xd61c50){return _0x37fc80(_0xd61c50);},'ywcQu':function(_0xcade77){return _0xcade77();},'jrKGf':'ranger\x20setup\x20--opencode','oiXik':_0x29dca3(0xa2),'YSajm':_0x29dca3(0xa6),'Squcy':_0x29dca3(0xa9),'PWyOp':function(_0x86b65e,_0x5a36e0){return _0x86b65e!==_0x5a36e0;},'uiGlV':_0x29dca3(0xa4)},_0x373ffa=_0x3c53c8||process['env'][_0x29dca3(0xa3)]||'',_0x3be6a1=_0x33e0e7['aQgwW'](Boolean,_0x3c53c8),_0x4fb791=await _0x33e0e7['ywcQu'](getToken);if(!_0x4fb791){const _0x3c7fd2=_0x3be6a1?_0x33e0e7['jrKGf']:_0x33e0e7['oiXik'],_0x4bfad8=_0x3be6a1?'Restart\x20your\x20OpenCode\x20session\x20after\x20setup.':_0x33e0e7[_0x29dca3(0xaf)];_0x33e0e7[_0x29dca3(0xb2)](printBlock,_0x29dca3(0xa7)+_0x3c7fd2+_0x29dca3(0xab)+_0x4bfad8);return;}try{await update();}catch{}_0x373ffa&&_0x33e0e7[_0x29dca3(0xb2)](enableSession,_0x373ffa);const _0x1e408a=_0x33e0e7['ywcQu'](getCurrentBranch),_0x40bd80=_0x1e408a&&_0x1e408a!==_0x33e0e7['Squcy']&&_0x33e0e7['PWyOp'](_0x1e408a,_0x33e0e7[_0x29dca3(0xac)])?'\x0a\x0a**Branch\x20\x27'+_0x1e408a+'\x27\x20is\x20now\x20enabled**\x20-\x20Ranger\x20will\x20stay\x20active\x20on\x20this\x20branch\x20across\x20sessions.':'',_0x5cf4cf=getRangerSkillContent();printBlock(_0x29dca3(0xb3)+_0x40bd80+_0x29dca3(0xae)+_0x5cf4cf+'\x0a\x0a##\x20Quick\x20Reference\x0a\x0a**In\x20plan\x20mode:**\x20Include\x20Ranger\x20Feature\x20Review\x20Specification\x20at\x20end\x20of\x20plan.\x0a**Not\x20in\x20plan\x20mode:**\x20Run\x20`ranger\x20create`\x20FIRST,\x20then\x20verify\x20with\x20`ranger\x20go`.');}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
function
|
|
1
|
+
function _0x316f(_0x3bec76,_0x5281d5){_0x3bec76=_0x3bec76-0x1b0;const _0x397a8a=_0x397a();let _0x316f9e=_0x397a8a[_0x3bec76];return _0x316f9e;}function _0x397a(){const _0x578c43=['272211YLDSCG','18228069amBtEN','4mlNvku','35UJQkME','9528kkEPoy','2442408oFlpdr','264120JDaFZJ','sFrik','2737364ViSKCY','10gGLOmf','2512000PxQTbl'];_0x397a=function(){return _0x578c43;};return _0x397a();}(function(_0x1808e0,_0x104dc6){const _0x5197d7=_0x316f,_0x247b5e=_0x1808e0();while(!![]){try{const _0x3f50bb=-parseInt(_0x5197d7(0x1b1))/0x1+parseInt(_0x5197d7(0x1b8))/0x2*(parseInt(_0x5197d7(0x1b6))/0x3)+-parseInt(_0x5197d7(0x1b3))/0x4+-parseInt(_0x5197d7(0x1b5))/0x5+-parseInt(_0x5197d7(0x1b0))/0x6+-parseInt(_0x5197d7(0x1b9))/0x7*(parseInt(_0x5197d7(0x1ba))/0x8)+-parseInt(_0x5197d7(0x1b7))/0x9*(-parseInt(_0x5197d7(0x1b4))/0xa);if(_0x3f50bb===_0x104dc6)break;else _0x247b5e['push'](_0x247b5e['shift']());}catch(_0x3a8d02){_0x247b5e['push'](_0x247b5e['shift']());}}}(_0x397a,0x53b93));import{printBlock,getEnabledSessionId}from'./output.js';export async function exitPlanMode(_0x2b7a4d){const _0x10100e=_0x316f,_0x317827={'sFrik':function(_0x23ccf6,_0x24d1ea){return _0x23ccf6(_0x24d1ea);}},_0x9e2c9f=await _0x317827[_0x10100e(0x1b2)](getEnabledSessionId,_0x2b7a4d);if(!_0x9e2c9f)return;printBlock('===\x20RANGER:\x20CREATE\x20FEATURE\x20REVIEW\x20NOW\x20===\x0a\x0aYou\x20are\x20about\x20to\x20exit\x20plan\x20mode.\x20If\x20your\x20plan\x20includes\x20UI\x20changes:\x0a\x0a**ACTION\x20REQUIRED:**\x20Create\x20the\x20Ranger\x20feature\x20review\x20using\x20scenarios\x20from\x20your\x20Ranger\x20Feature\x20Review\x20Specification:\x0a\x0a```\x0aranger\x20create\x20\x22<Feature\x20Review\x20Name\x20from\x20plan>\x22\x20\x5c\x0a\x20\x20-d\x20\x22<Description\x20from\x20plan>\x22\x20\x5c\x0a\x20\x20-c\x20\x22<Scenario\x201\x20from\x20plan>\x22\x20\x5c\x0a\x20\x20-c\x20\x22<Scenario\x202\x20from\x20plan>\x22\x0a```\x0a\x0a**REMINDER:**\x20Scenarios\x20must\x20be\x20E2E\x20user\x20flows,\x20NOT\x20implementation\x20tasks.\x0a\x0a**Good:**\x20\x22User\x20can\x20log\x20in\x20with\x20valid\x20credentials\x20and\x20see\x20dashboard\x22\x0a**Bad:**\x20\x22Add\x20form\x20validation\x22\x20or\x20\x22API\x20returns\x20200\x22\x0a\x0aIf\x20you\x20did\x20NOT\x20include\x20a\x20Ranger\x20Feature\x20Review\x20Specification\x20in\x20your\x20plan,\x20go\x20back\x20and\x20add\x20one\x20before\x20proceeding.\x20See\x20/ranger\x20and\x20create.md\x20for\x20guidance.\x0a\x0a===\x20END\x20===');}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x447a02,_0xeb9a7e){var _0x3aa54c=_0x123a,_0x2bcc2d=_0x447a02();while(!![]){try{var _0x444160=-parseInt(_0x3aa54c(0x146))/0x1*(parseInt(_0x3aa54c(0x143))/0x2)+-parseInt(_0x3aa54c(0x14c))/0x3+-parseInt(_0x3aa54c(0x14d))/0x4+-parseInt(_0x3aa54c(0x144))/0x5*(-parseInt(_0x3aa54c(0x149))/0x6)+parseInt(_0x3aa54c(0x14b))/0x7*(parseInt(_0x3aa54c(0x147))/0x8)+-parseInt(_0x3aa54c(0x14a))/0x9+-parseInt(_0x3aa54c(0x145))/0xa*(-parseInt(_0x3aa54c(0x148))/0xb);if(_0x444160===_0xeb9a7e)break;else _0x2bcc2d['push'](_0x2bcc2d['shift']());}catch(_0x339748){_0x2bcc2d['push'](_0x2bcc2d['shift']());}}}(_0x5d54,0xf133d));export{sessionStart}from'./sessionStart.js';export{sessionEnd}from'./sessionEnd.js';export{preCompact}from'./preCompact.js';function _0x123a(_0x271e6a,_0x3e1e80){_0x271e6a=_0x271e6a-0x143;var _0x5d54fd=_0x5d54();var _0x123ab2=_0x5d54fd[_0x271e6a];return _0x123ab2;}export{postEdit}from'./postEdit.js';export{planStart}from'./planStart.js';export{planReminder}from'./planReminder.js';export{exitPlanMode}from'./exitPlanMode.js';export{stopHook}from'./stopHook.js';export{enable}from'./enable.js';export{disable}from'./disable.js';export{autoPrompt}from'./autoPrompt.js';function _0x5d54(){var _0x49e40b=['4321848EJTQcI','217032lQUnAa','6449555HlmqVt','4490Grpszt','7jJHVSd','2402776wbSqxr','66099bPvypV','6ARGgCQ','6236577aDyKIP','21sSIWdo','4104003GYkduw'];_0x5d54=function(){return _0x49e40b;};return _0x5d54();}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
function _0x4aa8(_0x585269,_0x3948df){_0x585269=_0x585269-0x18d;const _0x44ea49=_0x44ea();let _0x4aa837=_0x44ea49[_0x585269];return _0x4aa837;}function _0x44ea(){const _0x3076b=['5554gVESRk','4474670oFVdea','14461596YWRCVq','7CQMvqP','2566704FoKIgj','log','687KBoqWT','874073vZnfMf','XVjGr','2144592kdhbaD','trim','10ELWDyj','obvrW','parse','5132382FTCxXw','stdin'];_0x44ea=function(){return _0x3076b;};return _0x44ea();}(function(_0x1a75f1,_0x45badf){const _0x2b2ed8=_0x4aa8,_0x483afe=_0x1a75f1();while(!![]){try{const _0x2ec83b=-parseInt(_0x2b2ed8(0x197))/0x1+parseInt(_0x2b2ed8(0x190))/0x2*(parseInt(_0x2b2ed8(0x196))/0x3)+parseInt(_0x2b2ed8(0x199))/0x4+-parseInt(_0x2b2ed8(0x191))/0x5+parseInt(_0x2b2ed8(0x18e))/0x6*(-parseInt(_0x2b2ed8(0x193))/0x7)+parseInt(_0x2b2ed8(0x194))/0x8+-parseInt(_0x2b2ed8(0x192))/0x9*(-parseInt(_0x2b2ed8(0x19b))/0xa);if(_0x2ec83b===_0x45badf)break;else _0x483afe['push'](_0x483afe['shift']());}catch(_0x1c0a29){_0x483afe['push'](_0x483afe['shift']());}}}(_0x44ea,0x740df));import{isSessionEnabled}from'../utils/sessionCache.js';export function printBlock(_0xc3fa09){const _0x4863d3=_0x4aa8;console[_0x4863d3(0x195)](_0xc3fa09);}export async function readHookInput(){const _0x49781b=_0x4aa8;let _0x3f0228='';try{for await(const _0x5a399b of process[_0x49781b(0x18f)]){_0x3f0228+=_0x5a399b;}}catch{return null;}if(!_0x3f0228[_0x49781b(0x19a)]())return null;try{return JSON[_0x49781b(0x18d)](_0x3f0228);}catch{return null;}}export async function getEnabledSessionId(_0xf394c2){const _0x42bcc9={'IANsX':function(_0x52328f,_0x132288){return _0x52328f(_0x132288);}};if(_0xf394c2)return _0x42bcc9['IANsX'](isSessionEnabled,_0xf394c2)?_0xf394c2:null;const _0x3701ab=await readHookInput(),_0x476d9d=_0x3701ab?.['session_id'];if(!_0x476d9d||!_0x42bcc9['IANsX'](isSessionEnabled,_0x476d9d))return null;return _0x476d9d;}export async function getEnabledHookContext(_0x1be079){const _0x1fcb8f=_0x4aa8,_0x54800b={'obvrW':function(_0x1fe602){return _0x1fe602();},'XVjGr':function(_0x35201f,_0x37e26c){return _0x35201f(_0x37e26c);}};if(_0x1be079){if(!isSessionEnabled(_0x1be079))return null;return{'sessionId':_0x1be079,'input':{'session_id':_0x1be079}};}const _0x23fa9d=await _0x54800b[_0x1fcb8f(0x19c)](readHookInput),_0x365af3=_0x23fa9d?.['session_id'];if(!_0x365af3||!_0x54800b[_0x1fcb8f(0x198)](isSessionEnabled,_0x365af3))return null;return{'sessionId':_0x365af3,'input':_0x23fa9d};}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x510df3,_0x32ff50){const _0x13eb76=_0x1022,_0x205b99=_0x510df3();while(!![]){try{const _0x4875f0=parseInt(_0x13eb76(0x1a2))/0x1*(parseInt(_0x13eb76(0x19d))/0x2)+parseInt(_0x13eb76(0x1a3))/0x3+parseInt(_0x13eb76(0x1a4))/0x4+parseInt(_0x13eb76(0x19f))/0x5+parseInt(_0x13eb76(0x19a))/0x6+parseInt(_0x13eb76(0x1a0))/0x7+-parseInt(_0x13eb76(0x19c))/0x8;if(_0x4875f0===_0x32ff50)break;else _0x205b99['push'](_0x205b99['shift']());}catch(_0x3db752){_0x205b99['push'](_0x205b99['shift']());}}}(_0x17a0,0x45328));import{printBlock,getEnabledHookContext}from'./output.js';function _0x1022(_0x5bd6e0,_0x510660){_0x5bd6e0=_0x5bd6e0-0x19a;const _0x17a00e=_0x17a0();let _0x10225d=_0x17a00e[_0x5bd6e0];return _0x10225d;}import{shouldShowPlanReminder}from'../utils/sessionCache.js';export async function planReminder(_0x1baa7f){const _0x237359=_0x1022,_0x2bc48a={'kpnUE':function(_0x2c01ae,_0x9d80ef){return _0x2c01ae(_0x9d80ef);},'nkbUd':_0x237359(0x1a1)},_0x1cd17c=await _0x2bc48a['kpnUE'](getEnabledHookContext,_0x1baa7f);if(!_0x1cd17c)return;if(_0x1cd17c[_0x237359(0x1a5)]['permission_mode']!==_0x2bc48a['nkbUd'])return;if(!_0x2bc48a[_0x237359(0x19b)](shouldShowPlanReminder,_0x1cd17c['sessionId']))return;_0x2bc48a['kpnUE'](printBlock,_0x237359(0x19e));}function _0x17a0(){const _0x7343e3=['1170351cBurMK','plan','23292ztlYpy','1012356DBaqbP','299496bcaKtp','input','1522056DipjEz','kpnUE','8219704stbiLz','32FqoVCt','===\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===','525140KOuoRM'];_0x17a0=function(){return _0x7343e3;};return _0x17a0();}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
function
|
|
1
|
+
function _0x9f7e(){const _0x2b2a4f=['289646AFduWz','496833TqYTqe','70SxTsSJ','10wfIsHj','212440ztLHjg','1074106LemGXZ','2ogIRjl','5890548ViPNKp','===\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===','FhFws','4hYDXsm','284436hYlNrZ','15NbAevG','2970954dUmMvT'];_0x9f7e=function(){return _0x2b2a4f;};return _0x9f7e();}(function(_0x3c5afc,_0x44a826){const _0xdb349c=_0x2ece,_0x286d62=_0x3c5afc();while(!![]){try{const _0xfba5b4=parseInt(_0xdb349c(0x79))/0x1*(-parseInt(_0xdb349c(0x73))/0x2)+-parseInt(_0xdb349c(0x74))/0x3*(parseInt(_0xdb349c(0x7d))/0x4)+parseInt(_0xdb349c(0x71))/0x5*(parseInt(_0xdb349c(0x70))/0x6)+parseInt(_0xdb349c(0x75))/0x7*(parseInt(_0xdb349c(0x77))/0x8)+-parseInt(_0xdb349c(0x72))/0x9+parseInt(_0xdb349c(0x76))/0xa*(parseInt(_0xdb349c(0x78))/0xb)+parseInt(_0xdb349c(0x7a))/0xc;if(_0xfba5b4===_0x44a826)break;else _0x286d62['push'](_0x286d62['shift']());}catch(_0x4844e0){_0x286d62['push'](_0x286d62['shift']());}}}(_0x9f7e,0x337f2));function _0x2ece(_0xefeb40,_0x33326e){_0xefeb40=_0xefeb40-0x70;const _0x9f7eca=_0x9f7e();let _0x2ecec3=_0x9f7eca[_0xefeb40];return _0x2ecec3;}import{printBlock,getEnabledSessionId}from'./output.js';export async function planStart(_0x296f7b){const _0x597fdf=_0x2ece,_0x8185cc={'FhFws':function(_0x14c3f1,_0x5352f1){return _0x14c3f1(_0x5352f1);}},_0xcc1e96=await getEnabledSessionId(_0x296f7b);if(!_0xcc1e96)return;_0x8185cc[_0x597fdf(0x7c)](printBlock,_0x597fdf(0x7b));}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
function
|
|
1
|
+
function _0x1951(_0x12ca52,_0x5886ff){_0x12ca52=_0x12ca52-0x18e;const _0x2173f1=_0x2173();let _0x19511d=_0x2173f1[_0x12ca52];return _0x19511d;}(function(_0xb0fca,_0x46dda9){const _0x267284=_0x1951,_0x540fc9=_0xb0fca();while(!![]){try{const _0x5bc93f=-parseInt(_0x267284(0x198))/0x1*(-parseInt(_0x267284(0x199))/0x2)+parseInt(_0x267284(0x191))/0x3*(parseInt(_0x267284(0x19a))/0x4)+parseInt(_0x267284(0x197))/0x5+parseInt(_0x267284(0x195))/0x6+parseInt(_0x267284(0x190))/0x7*(parseInt(_0x267284(0x18e))/0x8)+parseInt(_0x267284(0x192))/0x9+-parseInt(_0x267284(0x18f))/0xa;if(_0x5bc93f===_0x46dda9)break;else _0x540fc9['push'](_0x540fc9['shift']());}catch(_0x182782){_0x540fc9['push'](_0x540fc9['shift']());}}}(_0x2173,0x4b080));import{getSessionEntry,updateBranchTracking}from'../utils/sessionCache.js';function _0x2173(){const _0x2607e6=['XyCCv','2233910rxcxQL','85ODPaIE','736FNRoUh','928028hcqmDJ','87992smGFDd','12615290bbWzpf','301BgbddF','3uoeWVY','2386323ZIQyFB','log','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.','724104ZeZuyw'];_0x2173=function(){return _0x2607e6;};return _0x2173();}import{getToken}from'../utils/keychain.js';import{getEnabledSessionId}from'./output.js';export async function postEdit(_0x32b049){const _0x5b872f=_0x1951,_0x4333b4={'XyCCv':function(_0x2b0643,_0xb27aff){return _0x2b0643(_0xb27aff);}},_0x2db175=await getEnabledSessionId(_0x32b049);if(!_0x2db175)return;_0x4333b4[_0x5b872f(0x196)](updateBranchTracking,_0x2db175);const _0x4db47c=await getToken();if(!_0x4db47c)return;const _0x57c7ae=_0x4333b4[_0x5b872f(0x196)](getSessionEntry,_0x2db175);if(_0x57c7ae){const _0xdab618={'hookSpecificOutput':{'hookEventName':'PostToolUse','additionalContext':'RANGER:\x20If\x20this\x20change\x20expands\x20the\x20scope\x20of\x20the\x20active\x20feature\x20review,\x20you\x20may\x20need\x20to\x20add\x20a\x20scenario.\x20See\x20Workflow\x201\x20in\x20/ranger.\x20If\x20you\x20decide\x20to\x20add\x20a\x20scenario,\x20you\x20MUST\x20read\x20Workflow\x201\x20IN\x20DETAIL\x20first.\x20Remember:\x20when\x20you\x20finish\x20your\x20work,\x20your\x20final\x20message\x20to\x20the\x20user\x20must\x20direct\x20them\x20to\x20the\x20Ranger\x20feature\x20review\x20dashboard\x20to\x20review\x20(e.g.\x20\x22Go\x20to\x20the\x20Ranger\x20feature\x20dashboard\x20to\x20review:\x20https://dashboard.ranger.net/features/{feature_id}\x22).'}};console[_0x5b872f(0x193)](JSON['stringify'](_0xdab618));return;}const _0x252bd6={'hookSpecificOutput':{'hookEventName':'PostToolUse','additionalContext':_0x5b872f(0x194)}};console[_0x5b872f(0x193)](JSON['stringify'](_0x252bd6));}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
(function(_0x1296a8,_0x1709d3){const _0x236960=_0x2552,_0xd9e7e6=_0x1296a8();while(!![]){try{const _0x5e5d84=parseInt(_0x236960(0x1e9))/0x1+-parseInt(_0x236960(0x1e4))/0x2+parseInt(_0x236960(0x1e5))/0x3+-parseInt(_0x236960(0x1ea))/0x4*(-parseInt(_0x236960(0x1e3))/0x5)+parseInt(_0x236960(0x1e7))/0x6*(parseInt(_0x236960(0x1e8))/0x7)+parseInt(_0x236960(0x1e1))/0x8*(-parseInt(_0x236960(0x1e6))/0x9)+parseInt(_0x236960(0x1e2))/0xa;if(_0x5e5d84===_0x1709d3)break;else _0xd9e7e6['push'](_0xd9e7e6['shift']());}catch(_0x1bb0d2){_0xd9e7e6['push'](_0xd9e7e6['shift']());}}}(_0x14b2,0xe0565));import{getToken}from'../utils/keychain.js';import{printBlock,getEnabledSessionId}from'./output.js';function _0x14b2(){const _0x4f0894=['1488220VgJxbu','569469WsMgYy','11600937WCYDoI','60DZgZyX','319347dRZTWV','413146bTyFfv','392QfJUyG','8XEWXQC','1873150aSnpVK','87015EsLHrT'];_0x14b2=function(){return _0x4f0894;};return _0x14b2();}function _0x2552(_0x2fdb6b,_0x487fda){_0x2fdb6b=_0x2fdb6b-0x1e1;const _0x14b2c3=_0x14b2();let _0x255226=_0x14b2c3[_0x2fdb6b];return _0x255226;}export async function preCompact(_0x4cac90){const _0x148e01=await getEnabledSessionId(_0x4cac90);if(!_0x148e01)return;try{const _0x1f2459=await getToken();if(!_0x1f2459)return;printBlock('===\x20RANGER:\x20PRESERVE\x20IN\x20COMPACTION\x20===\x0a\x0aIf\x20you\x20created\x20a\x20plan\x20with\x20a\x20**Ranger\x20Feature\x20Review\x20Specification**,\x20you\x20MUST\x20preserve\x20it\x20in\x20the\x20compaction\x20summary.\x0a\x0aThe\x20specification\x20contains\x20scenarios\x20that\x20will\x20be\x20used\x20with\x20`ranger\x20create`.');}catch{}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
function
|
|
1
|
+
function _0x14c1(){const _0x100873=['4701edaqZo','UOSVV','reason','2880lBplte','58478IplTLd','35529RVglXi','18pUwZFv','4812dIcvJp','session_id','8524467FAWrIR','5JUcunZ','9306fQCFUp','1696lAXgUG','clear','1435160KnIgxV','35CjvEGU','136194zBodto'];_0x14c1=function(){return _0x100873;};return _0x14c1();}(function(_0x508acd,_0x2c393c){const _0x2fce1c=_0x3d7b,_0x21d16d=_0x508acd();while(!![]){try{const _0x1b6fb6=parseInt(_0x2fce1c(0xe0))/0x1*(-parseInt(_0x2fce1c(0xde))/0x2)+parseInt(_0x2fce1c(0xda))/0x3*(parseInt(_0x2fce1c(0xe6))/0x4)+parseInt(_0x2fce1c(0xe4))/0x5*(-parseInt(_0x2fce1c(0xd9))/0x6)+parseInt(_0x2fce1c(0xd8))/0x7*(parseInt(_0x2fce1c(0xe8))/0x8)+parseInt(_0x2fce1c(0xe3))/0x9+-parseInt(_0x2fce1c(0xdd))/0xa*(parseInt(_0x2fce1c(0xe5))/0xb)+-parseInt(_0x2fce1c(0xe1))/0xc*(parseInt(_0x2fce1c(0xdf))/0xd);if(_0x1b6fb6===_0x2c393c)break;else _0x21d16d['push'](_0x21d16d['shift']());}catch(_0x12664f){_0x21d16d['push'](_0x21d16d['shift']());}}}(_0x14c1,0x975bc));import{isSessionEnabled,recordEnabledSessionCleared}from'../utils/sessionCache.js';function _0x3d7b(_0x10ea49,_0x43fa08){_0x10ea49=_0x10ea49-0xd8;const _0x14c1bf=_0x14c1();let _0x3d7be1=_0x14c1bf[_0x10ea49];return _0x3d7be1;}import{readHookInput}from'./output.js';export async function sessionEnd(_0x3c6e08){const _0xc48769=_0x3d7b,_0x5d78c8={'CzHDa':function(_0x3ea31a){return _0x3ea31a();},'UOSVV':function(_0x3e5f19,_0x2dffc1){return _0x3e5f19===_0x2dffc1;},'pAtAw':_0xc48769(0xe7)},_0x3ab563=process['env']['CLAUDE_SESSION_ID'];let _0x3dce25=_0x3c6e08,_0x5eda38;if(!_0x3c6e08){if(_0x3ab563&&!isSessionEnabled(_0x3ab563))return;const _0x462deb=await _0x5d78c8['CzHDa'](readHookInput);_0x3dce25=_0x462deb?.[_0xc48769(0xe2)]||_0x3ab563,_0x5eda38=_0x462deb?.[_0xc48769(0xdc)];}if(!_0x3dce25)return;_0x5d78c8[_0xc48769(0xdb)](_0x5eda38,_0x5d78c8['pAtAw'])&&recordEnabledSessionCleared(_0x3dce25);}
|