@ranger-testing/ranger-cli 2.5.0 → 2.5.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/cli.js +1 -1
- package/build/commands/addEnv.js +1 -1
- package/build/commands/authEncrypt.js +1 -1
- package/build/commands/clean.js +1 -1
- package/build/commands/config.js +1 -1
- package/build/commands/env.js +1 -1
- package/build/commands/feature.js +1 -1
- package/build/commands/hook.js +1 -1
- package/build/commands/hooks/autoPrompt.js +1 -1
- package/build/commands/hooks/disable.js +1 -1
- package/build/commands/hooks/enable.js +1 -1
- package/build/commands/hooks/exitPlanMode.js +1 -1
- package/build/commands/hooks/index.js +1 -1
- package/build/commands/hooks/output.js +1 -1
- package/build/commands/hooks/planReminder.js +1 -1
- package/build/commands/hooks/planStart.js +1 -1
- package/build/commands/hooks/postEdit.js +1 -1
- package/build/commands/hooks/preCompact.js +1 -1
- package/build/commands/hooks/sessionEnd.js +1 -1
- package/build/commands/hooks/sessionStart.js +1 -1
- package/build/commands/hooks/stopHook.js +1 -1
- package/build/commands/index.js +1 -1
- package/build/commands/login.js +1 -1
- package/build/commands/mcpBootstrap.js +1 -0
- 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/fixWebmDuration.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/retry.js +1 -1
- package/build/commands/utils/sessionCache.js +1 -1
- package/build/commands/utils/settings.js +1 -1
- package/build/commands/utils/skillContent.js +1 -1
- package/build/commands/utils/skills.js +1 -1
- package/build/commands/utils/stitchWebmFiles.js +1 -1
- package/build/commands/utils/telemetry.js +1 -1
- package/build/commands/utils/tokenRefresh.js +1 -1
- package/build/commands/utils/traceSnapshotMapper.js +1 -1
- package/build/commands/utils/userApi.js +1 -1
- package/build/commands/utils/version.js +1 -1
- package/build/commands/verifyFeature.js +1 -1
- package/build/commands/verifyFeatureCli.js +1 -1
- package/package.json +1 -1
- package/build/commands/utils/featureReportGenerator.js +0 -1
- package/build/commands/utils/git.js +0 -1
- package/build/commands/utils/reportGenerator.js +0 -1
- package/build/commands/verifyInBrowser.js +0 -1
package/build/commands/config.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
(function(_0xa44878,_0x4d2cb7){const _0x5427c8=_0x3c7d,_0x4a6807=_0xa44878();while(!![]){try{const _0x2c2570=parseInt(_0x5427c8(0x15a))/0x1*(-parseInt(_0x5427c8(0x164))/0x2)+parseInt(_0x5427c8(0x14f))/0x3+-parseInt(_0x5427c8(0x15d))/0x4*(-parseInt(_0x5427c8(0x14e))/0x5)+-parseInt(_0x5427c8(0x160))/0x6*(-parseInt(_0x5427c8(0x151))/0x7)+-parseInt(_0x5427c8(0x159))/0x8*(parseInt(_0x5427c8(0x153))/0x9)+parseInt(_0x5427c8(0x15c))/0xa+parseInt(_0x5427c8(0x156))/0xb*(-parseInt(_0x5427c8(0x158))/0xc);if(_0x2c2570===_0x4d2cb7)break;else _0x4a6807['push'](_0x4a6807['shift']());}catch(_0x357fc0){_0x4a6807['push'](_0x4a6807['shift']());}}}(_0x1c32,0xdf29d));import{existsSync}from'fs';import{loadSettings,saveSettings,getNestedValue,setNestedValue,deleteNestedValue,formatSettings,getSettingsPath,getEnvDir}from'./utils/settings.js';function _0x1c32(){const _0x3bddf6=['2057XCLlGv','LdDSg','91092GZCmSo','1787984lxbLzb','88225mKPJYG','stringify','12973450Hisjxv','788OwmScu','MmKaQ','Set\x20','215148ipnUMd','\x22\x20does\x20not\x20exist.\x20Run:\x20ranger\x20profile\x20add\x20','log','object','14zRVBFm','false','qQSTu','No\x20configuration\x20set\x20for\x20\x22','Invalid\x20value\x20for\x20','POCYr','35185sragbX','2706513rIzuao','pJVaM','7SguJmI','(not\x20set)','27aXVoCC','Profile\x20\x22','CZIpW'];_0x1c32=function(){return _0x3bddf6;};return _0x1c32();}const BOOLEAN_KEYS=['headless','allowInsecureLocalhost'];function parseValue(_0xcfebaa,_0x343cb2){const _0x3708ef=_0x3c7d,_0x52b306={'MmKaQ':function(_0x1c6f54,_0x46bf23){return _0x1c6f54===_0x46bf23;},'veOBz':'true','ONBhe':_0x3708ef(0x165)};if(BOOLEAN_KEYS['includes'](_0xcfebaa)){if(_0x52b306[_0x3708ef(0x15e)](_0x343cb2,_0x52b306['veOBz']))return!![];if(_0x343cb2===_0x52b306['ONBhe'])return![];throw new Error(_0x3708ef(0x168)+_0xcfebaa+':\x20expected\x20\x22true\x22\x20or\x20\x22false\x22');}return _0x343cb2;}export async function configSet(_0x3bb1b5,_0xacf3d,_0x1cb2ba){const _0x178ef6=_0x3c7d,_0x547f0c={'zPBNG':function(_0x5daa08,_0x30eafe){return _0x5daa08(_0x30eafe);},'UpcJo':function(_0x146d93,_0x1c510c){return _0x146d93(_0x1c510c);},'POCYr':function(_0x383a0e,_0x224d5d,_0x154778){return _0x383a0e(_0x224d5d,_0x154778);}},_0x147c1b=_0x547f0c['zPBNG'](getEnvDir,_0x3bb1b5);if(!existsSync(_0x147c1b))throw new Error('Profile\x20\x22'+_0x3bb1b5+_0x178ef6(0x161)+_0x3bb1b5);const _0x5768c4=await _0x547f0c['UpcJo'](loadSettings,_0x3bb1b5),_0xc8abf0=_0x547f0c[_0x178ef6(0x14d)](parseValue,_0xacf3d,_0x1cb2ba);setNestedValue(_0x5768c4,_0xacf3d,_0xc8abf0),await _0x547f0c[_0x178ef6(0x14d)](saveSettings,_0x3bb1b5,_0x5768c4),console[_0x178ef6(0x162)](_0x178ef6(0x15f)+_0xacf3d+'\x20=\x20'+_0xc8abf0);}export async function configGet(_0x5267a6,_0x57d328){const _0x3eadd8=_0x3c7d,_0x57083b={'CZIpW':function(_0x479d48,_0x48594c){return _0x479d48===_0x48594c;},'LdDSg':_0x3eadd8(0x163)},_0x31e3f4=getEnvDir(_0x5267a6);if(!existsSync(_0x31e3f4))throw new Error(_0x3eadd8(0x154)+_0x5267a6+'\x22\x20does\x20not\x20exist.');const _0x1fdfc5=await loadSettings(_0x5267a6),_0x23b320=getNestedValue(_0x1fdfc5,_0x57d328);if(_0x57083b[_0x3eadd8(0x155)](_0x23b320,undefined))console[_0x3eadd8(0x162)](_0x3eadd8(0x152));else _0x57083b['CZIpW'](typeof _0x23b320,_0x57083b[_0x3eadd8(0x157)])?console['log'](JSON[_0x3eadd8(0x15b)](_0x23b320,null,0x2)):console['log'](_0x23b320);}export async function configList(_0x2d5ef1){const _0x50ecf1=_0x3c7d,_0xfb533a={'qQSTu':function(_0x206a74,_0x30481a){return _0x206a74(_0x30481a);}},_0x71e2d1=getSettingsPath(_0x2d5ef1);if(!_0xfb533a['qQSTu'](existsSync,_0x71e2d1)){const _0x184425=getEnvDir(_0x2d5ef1);if(!_0xfb533a['qQSTu'](existsSync,_0x184425))throw new Error('Profile\x20\x22'+_0x2d5ef1+'\x22\x20does\x20not\x20exist.');console['log']('No\x20configuration\x20set\x20for\x20\x22'+_0x2d5ef1+'\x22');return;}const _0x1b3305=await loadSettings(_0x2d5ef1),_0x546786=_0xfb533a[_0x50ecf1(0x166)](formatSettings,_0x1b3305);!_0x546786?console['log'](_0x50ecf1(0x167)+_0x2d5ef1+'\x22'):console['log'](_0x546786);}function _0x3c7d(_0x50d0f5,_0x4ebed5){_0x50d0f5=_0x50d0f5-0x14d;const _0x1c32f9=_0x1c32();let _0x3c7d08=_0x1c32f9[_0x50d0f5];return _0x3c7d08;}export async function configUnset(_0x3edfc6,_0x4e4a80){const _0x46ed74=_0x3c7d,_0x3d4766={'jbAux':function(_0x1832ce,_0x6816ce){return _0x1832ce(_0x6816ce);},'pJVaM':function(_0x394b90,_0x407893){return _0x394b90(_0x407893);}},_0x565cd0=getEnvDir(_0x3edfc6);if(!_0x3d4766['jbAux'](existsSync,_0x565cd0))throw new Error(_0x46ed74(0x154)+_0x3edfc6+'\x22\x20does\x20not\x20exist.');const _0x3f5cf5=await _0x3d4766[_0x46ed74(0x150)](loadSettings,_0x3edfc6),_0x56c378=deleteNestedValue(_0x3f5cf5,_0x4e4a80);_0x56c378?(await saveSettings(_0x3edfc6,_0x3f5cf5),console[_0x46ed74(0x162)]('Removed\x20'+_0x4e4a80)):console['log']('Key\x20\x22'+_0x4e4a80+'\x22\x20not\x20found');}
|
package/build/commands/env.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
function _0x2cec(){const _0x56ab20=['sessions','.txt','local','isDirectory','90392FbdEqy','zvDUM','reports','Run:\x20ranger\x20profile\x20add\x20<profile-name>','20536eQLhRu','1233cnChqf','12EVQWAJ','\x20\x20\x20\x20\x20\x20Details:\x20','5724985JBAKqq','txrLO','\x0a*\x20=\x20active\x20profile','iSRio','6732TQhNGz','baseUrl','83yVzvMo','HWhsM','fbRfQ','qAyXe','636600xzOIPV','VzFfx','sort','51986zQpXka','Jakfl','FUSBr','fpdAw','2124oQChCc','length','8707395MEPJfb','6284cakcMv','settings.json','log'];_0x2cec=function(){return _0x56ab20;};return _0x2cec();}const _0x4b473d=_0x21fc;(function(_0x940b58,_0x5bc2e0){const _0xdbeb9=_0x21fc,_0x187255=_0x940b58();while(!![]){try{const _0x21f975=parseInt(_0xdbeb9(0x117))/0x1*(parseInt(_0xdbeb9(0x10d))/0x2)+parseInt(_0xdbeb9(0x122))/0x3*(parseInt(_0xdbeb9(0x125))/0x4)+parseInt(_0xdbeb9(0x124))/0x5+-parseInt(_0xdbeb9(0x10f))/0x6*(parseInt(_0xdbeb9(0x111))/0x7)+parseInt(_0xdbeb9(0x12c))/0x8*(parseInt(_0xdbeb9(0x10e))/0x9)+-parseInt(_0xdbeb9(0x11b))/0xa+parseInt(_0xdbeb9(0x11e))/0xb*(-parseInt(_0xdbeb9(0x115))/0xc);if(_0x21f975===_0x5bc2e0)break;else _0x187255['push'](_0x187255['shift']());}catch(_0x5b6aea){_0x187255['push'](_0x187255['shift']());}}}(_0x2cec,0xdc882));import{readdir,stat}from'fs/promises';import{join}from'path';import{existsSync}from'fs';import{getRangerDir}from'./utils/rangerRoot.js';function _0x21fc(_0x158414,_0x2b16da){_0x158414=_0x158414-0x10d;const _0x2cece6=_0x2cec();let _0x21fc58=_0x2cece6[_0x158414];return _0x21fc58;}import{loadSettings}from'./utils/settings.js';import{readActiveProfileName}from'./utils/activeProfile.js';const NON_ENV_DIRS=[_0x4b473d(0x128),'bug-bashes',_0x4b473d(0x12e),_0x4b473d(0x12a),'ci'];export async function getEnvNames(){const _0x104399=_0x4b473d,_0x16d65a={'txrLO':function(_0x558264,_0x7291dd){return _0x558264(_0x7291dd);},'tlBmo':function(_0x3e4d40){return _0x3e4d40();},'fbRfQ':function(_0x4050a8,_0x3888a1){return _0x4050a8(_0x3888a1);},'HWhsM':function(_0x5922a7,_0x5eb9c7){return _0x5922a7(_0x5eb9c7);},'zvDUM':function(_0x2e804a,_0x30f5ac,_0x4207d1){return _0x2e804a(_0x30f5ac,_0x4207d1);},'fpdAw':function(_0x4e2eec,_0x5b4760){return _0x4e2eec(_0x5b4760);},'LFjmg':function(_0x92f3f1,_0x5e262e){return _0x92f3f1(_0x5e262e);},'qAyXe':_0x104399(0x129),'FUSBr':function(_0x388077,_0xfacf7f,_0x2300c5){return _0x388077(_0xfacf7f,_0x2300c5);},'Jakfl':'legacy'},_0x533604=getRangerDir();if(!_0x16d65a['txrLO'](existsSync,_0x533604))return{'envNames':[],'activeEnv':null,'envTypes':{}};const _0x51b34c=await _0x16d65a['tlBmo'](readActiveProfileName),_0x5a5518=[],_0x2d3e61={},_0x12adc7=join(_0x533604,'local');if(_0x16d65a['fbRfQ'](existsSync,_0x12adc7)){const _0xe126d2=await _0x16d65a[_0x104399(0x119)](readdir,_0x12adc7);for(const _0x41f99a of _0xe126d2){const _0x5c3943=join(_0x12adc7,_0x41f99a),_0x3a7b2c=await _0x16d65a[_0x104399(0x112)](stat,_0x5c3943);_0x3a7b2c['isDirectory']()&&(_0x5a5518['push'](_0x41f99a),_0x2d3e61[_0x41f99a]='local');}}const _0x1d208e=join(_0x533604,'ci');if(existsSync(_0x1d208e)){const _0x541525=await _0x16d65a[_0x104399(0x118)](readdir,_0x1d208e);for(const _0x2cd5f9 of _0x541525){const _0x4e9524=_0x16d65a[_0x104399(0x12d)](join,_0x1d208e,_0x2cd5f9),_0xb037e1=await _0x16d65a[_0x104399(0x121)](stat,_0x4e9524);_0xb037e1['isDirectory']()&&(_0x5a5518['push'](_0x2cd5f9),_0x2d3e61[_0x2cd5f9]='ci');}}const _0x421df2=await _0x16d65a['LFjmg'](readdir,_0x533604);for(const _0x46e5c7 of _0x421df2){if(NON_ENV_DIRS['includes'](_0x46e5c7))continue;if(_0x46e5c7['startsWith']('.'))continue;if(_0x46e5c7['endsWith'](_0x16d65a[_0x104399(0x11a)]))continue;const _0xbebd4d=join(_0x533604,_0x46e5c7),_0x41522e=await stat(_0xbebd4d);_0x41522e[_0x104399(0x12b)]()&&existsSync(_0x16d65a[_0x104399(0x120)](join,_0xbebd4d,_0x104399(0x126)))&&(!_0x5a5518['includes'](_0x46e5c7)&&(_0x5a5518['push'](_0x46e5c7),_0x2d3e61[_0x46e5c7]=_0x16d65a[_0x104399(0x11f)]));}return{'envNames':_0x5a5518,'activeEnv':_0x51b34c,'envTypes':_0x2d3e61};}export async function envList(){const _0x14b622=_0x4b473d,_0x588231={'TgAAe':'\x0aNo\x20profiles\x20found.','VzFfx':function(_0x1e952e,_0x3ce0dc){return _0x1e952e===_0x3ce0dc;},'iSRio':'local','eyqaH':'legacy'},{envNames:_0x255741,activeEnv:_0x343b9e,envTypes:_0x17b226}=await getEnvNames();if(_0x255741[_0x14b622(0x123)]===0x0){console['log'](_0x588231['TgAAe']),console[_0x14b622(0x127)](_0x14b622(0x12f));return;}console['log']('\x0aProfiles:');for(const _0x1603c3 of _0x255741[_0x14b622(0x11d)]()){const _0x315052=_0x588231[_0x14b622(0x11c)](_0x1603c3,_0x343b9e),_0x24c183=_0x17b226[_0x1603c3]||_0x588231[_0x14b622(0x114)],_0x1eb4fe=await loadSettings(_0x1603c3),_0x1dc7b2=_0x588231[_0x14b622(0x11c)](_0x24c183,_0x588231['eyqaH'])?'':'\x20['+_0x24c183+']';console[_0x14b622(0x127)]('\x20\x20'+(_0x315052?'*\x20':'\x20\x20')+_0x1603c3+_0x1dc7b2),_0x1eb4fe[_0x14b622(0x116)]&&console[_0x14b622(0x127)]('\x20\x20\x20\x20\x20\x20URL:\x20'+_0x1eb4fe['baseUrl']),_0x1eb4fe['environmentDetails']&&console[_0x14b622(0x127)](_0x14b622(0x110)+_0x1eb4fe['environmentDetails']);}_0x343b9e&&console['log'](_0x14b622(0x113));}
|
|
@@ -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
|
+
const _0x302fd9=_0x2325;(function(_0x134cdd,_0x472bb8){const _0x32a180=_0x2325,_0x32366e=_0x134cdd();while(!![]){try{const _0x18254b=-parseInt(_0x32a180(0x28c))/0x1+parseInt(_0x32a180(0x2b4))/0x2+parseInt(_0x32a180(0x2c9))/0x3*(parseInt(_0x32a180(0x2b8))/0x4)+-parseInt(_0x32a180(0x261))/0x5+parseInt(_0x32a180(0x1f6))/0x6*(parseInt(_0x32a180(0x222))/0x7)+-parseInt(_0x32a180(0x2ba))/0x8*(-parseInt(_0x32a180(0x24d))/0x9)+parseInt(_0x32a180(0x27d))/0xa;if(_0x18254b===_0x472bb8)break;else _0x32366e['push'](_0x32366e['shift']());}catch(_0x3ef9cc){_0x32366e['push'](_0x32366e['shift']());}}}(_0x3c21,0xe8cce));import{readFile,writeFile,mkdir}from'fs/promises';function _0x3c21(){const _0x66dfe2=['/api/v1/mcp/browser-sessions/','\x0a❌\x20Invalid\x20scenario\x20index:\x20','\x20—\x20no\x20comments','scenarios','THVlH','\x20\x20Expected\x20flow:','\x20of\x20','PbHTC','PFgUR','RNhvZ','RfnXY','SDBRc','unaddressedComments','\x20scenario(s).','27PoByCr','.md','join','OwASm','\x0aSearching\x20for\x20feature\x20reviews\x20matching:\x20','kQiec','status','SRfgc','kpfZZ','error','No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.','map','\x20scenarios.','iqfNw','toLocaleString','\x1b[0m','pJbGU','\x20\x20\x20Run\x20`ranger\x20get-review`\x20to\x20see\x20what\x20needs\x20to\x20be\x20fixed.','incomplete','verified','5713920PUAHDg','AuVla','trim','xGCmd','No\x20active\x20session\x20for\x20this\x20feature\x20review.','GsRJF','\x20incomplete','any','round','\x0a✅\x20Resumed\x20feature\x20review:\x20','gitBranch','zVQPM','\x20\x20\x20\x20\x20📍\x20Annotation:\x20point\x20at\x20(','position','\x20at\x20[','pipe','shFQP','verificationInProgressItems','\x0a✅\x20Report\x20generated:\x20','\x20\x20\x20Created:\x20','latestReview','SdXhM','scenario','toLocaleDateString','\x20\x20\x20Progress:\x20','canonicalFlow','completed','dRzBI','22185340oSURqR','\x20blocked','element','\x20--current-branch','HCDak','\x20feature\x20review(s)\x20found','Step\x20','blockedItems','type','dashboardUrl','lsNoz','utf-8','Current\x20session\x20not\x20found.','limit','CLAUDE_SESSION_ID','1881299zEpeqW','createdAt','git\x20remote\x20get-url\x20origin','screenshotUrls','\x0a⚠️\x20\x20','\x0a📋\x20Feedback\x20for:\x20','output','domRef','authorEmail','bftDv','browserSessionId','\x20\x20💬\x20','\x20\x20\x20Status:\x20','kHeuZ','checklistItems','UQScC','\x20\x20\x20The\x20feature\x20review\x20is\x20now\x20ready\x20for\x20human\x20review\x20on\x20the\x20Ranger\x20dashboard.','style','offset','write','filter','No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','XRdRX','active-feature.txt','totalCount','\x20\x20\x20\x20\x20\x20Cancelled:\x20','isInteger','\x20\x20\x20Updated\x20branch\x20to:\x20','currentBranch','split','wHlBI','\x20\x20\x20ID:\x20','\x20>\x20','CUJJC','\x0a❌\x20All\x20scenarios\x20were\x20excluded.','exit','mdSpp','\x20\x20\x20\x20\x20🎯\x20Element:\x20<','dpQWU','wlRgn','915892vZBmLO','pop','selector','name','1655164ktyche','sessionId','2077256fyljwo','stats','Bbzqf','oatVr','\x20\x20\x20Branch:\x20','\x0a📁\x20Sessions\x20for\x20feature\x20review:\x20','NJgLc','all','repeat','stdout','coordinates','KVKat','find','\x20\x20\x20Repository:\x20','textContent','3ZjkuYn','nEQCJ','\x1b[1m','canceledReason','eRMic','650346jHZNuK','short','log','\x20\x20\x20Completed:\x20','version','linkedSession','\x0a➡️\x20\x20Set\x20as\x20active\x20feature\x20review','dapjo','agentResponse','screenshot','toFixed','wrKUE','\x0a✅\x20Scenario\x20added','/artifacts/','dSKwO','BAJYK','length','Cannot\x20add\x20scenario:\x20feature\x20review\x20has\x20an\x20active\x20review.\x20Please\x20finish\x20your\x20review\x20first:\x20','Wvtie','Cannot\x20conclude\x20session\x20with\x20status:\x20','assetType','pIhew','\x20\x20✅\x20No\x20feedback\x20to\x20address','iurVr','blockedReason','FYBHM','replace','\x20\x20\x20\x20\x20📍\x20Annotation:\x20','description','trimEnd','spatial','\x0a❌\x20Invalid\x20scenario\x20number(s):\x20','jVKis','Showing\x20','\x0a❌\x20No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.','incompleteReason','feedback-images','warn','\x20\x20\x20\x20\x20📋\x20Selector:\x20','currentSessionId','completedAt','in_progress','env','assetUrl','7NBzdsC','\x0a❌\x20Cannot\x20edit\x20scenario:\x20feature\x20review\x20has\x20an\x20active\x20review.','kwwnA','\x20[has\x20reviewer\x20feedback]','ukIrx','GLviq','\x20\x20\x20Description:\x20','pAwEB','\x0a✅\x20Restored\x20feature\x20review:\x20','XojyL','gitRepoUrl','No\x20scenarios\x20found.','hNRDa','Unknown',':\x20\x22','\x0a🗑️\x20\x20Deleted\x20feature\x20review:\x20','isTTY','AywlW','dhkIr','items','jYRZi','qGktc','Next\x20page:\x20ranger\x20list\x20--offset\x20','1|3|4|0|2|5','json','\x20verified','llcdm','\x0aAvailable\x20scenarios:','has'];_0x3c21=function(){return _0x66dfe2;};return _0x3c21();}import{join}from'path';import{existsSync}from'fs';import{execSync}from'child_process';import _0x5053a8 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=_0x302fd9(0x2a3),bold=_0xf52ce7=>_0x302fd9(0x2cb)+_0xf52ce7+_0x302fd9(0x25c);function getGitRepoUrl(){const _0x50afad=_0x302fd9,_0x14786f={'kQiec':function(_0x201754,_0x39d272,_0x219971){return _0x201754(_0x39d272,_0x219971);},'PFgUR':'pipe'};try{const _0x5b38be=_0x14786f[_0x50afad(0x252)](execSync,_0x50afad(0x28e),{'encoding':'utf-8','stdio':[_0x14786f[_0x50afad(0x247)],_0x50afad(0x270),_0x14786f[_0x50afad(0x247)]]})['trim']();return _0x5b38be[_0x50afad(0x210)](/\.git$/,'')[_0x50afad(0x210)](/^git@github\.com:/,'github.com/')[_0x50afad(0x210)](/^https?:\/\//,'');}catch{return undefined;}}function getGitBranch(){const _0x13c2b3=_0x302fd9,_0x704c81={'lgXih':_0x13c2b3(0x270)};try{return execSync('git\x20rev-parse\x20--abbrev-ref\x20HEAD',{'encoding':'utf-8','stdio':['pipe',_0x704c81['lgXih'],_0x704c81['lgXih']]})[_0x13c2b3(0x263)]();}catch{return undefined;}}export async function getActiveFeatureId(){const _0x46420c=_0x302fd9,_0x29971c={'Bbzqf':function(_0x1e46ba){return _0x1e46ba();},'OAupU':function(_0x4b6b89,_0x40fc26,_0x18fcc4){return _0x4b6b89(_0x40fc26,_0x18fcc4);},'AfzmW':_0x46420c(0x288)},_0x47ecac=join(_0x29971c[_0x46420c(0x2bc)](getRangerDir),ACTIVE_FEATURE_FILE);if(!existsSync(_0x47ecac))return null;try{const _0x1437bf=await _0x29971c['OAupU'](readFile,_0x47ecac,_0x29971c['AfzmW']);return _0x1437bf['trim']()||null;}catch{return null;}}async function setActiveFeatureId(_0x154b0f){const _0x1cc611=_0x302fd9,_0x43ff4e={'hNRDa':function(_0x133b0d){return _0x133b0d();},'jvIfc':function(_0x2a6b85,_0x2f5ba7,_0x55ef55){return _0x2a6b85(_0x2f5ba7,_0x55ef55);},'ukIrx':function(_0x3566f0,_0x4e0b99,_0x1e9f5f){return _0x3566f0(_0x4e0b99,_0x1e9f5f);},'xXdcX':function(_0x2c67e3,_0x4f879a,_0x310202,_0x2dcb9b){return _0x2c67e3(_0x4f879a,_0x310202,_0x2dcb9b);}},_0x4b69f9=_0x43ff4e[_0x1cc611(0x22e)](getRangerDir),_0x6f1c76=_0x43ff4e['jvIfc'](join,_0x4b69f9,ACTIVE_FEATURE_FILE);!existsSync(_0x4b69f9)&&await _0x43ff4e[_0x1cc611(0x226)](mkdir,_0x4b69f9,{'recursive':!![]}),await _0x43ff4e['xXdcX'](writeFile,_0x6f1c76,_0x154b0f,_0x1cc611(0x288));}function getProgressDisplay(_0x3e2da6){const _0x4026b3=_0x302fd9,_0xd840ac={'yQXzq':function(_0x25cf2e,_0x179263){return _0x25cf2e===_0x179263;},'QPuoi':function(_0x3a177e,_0x33beb4){return _0x3a177e+_0x33beb4;},'TwTnT':function(_0x231f90,_0x56b9ef){return _0x231f90>_0x56b9ef;}},_0x50d3b3=_0x3e2da6['verifiedItems']||0x0,_0xdee0d4=_0x3e2da6[_0x4026b3(0x272)]||0x0,_0x319c30=_0x3e2da6[_0x4026b3(0x284)]||0x0,_0xf63cc3=_0x3e2da6['incompleteItems']||0x0,_0x19c446=_0x3e2da6['pendingItems']||0x0,_0x50af05=_0x50d3b3+_0xdee0d4+_0x319c30+_0xf63cc3+_0x19c446;if(_0xd840ac['yQXzq'](_0x50af05,0x0))return'-';const _0x29ad2c=0xa,_0x3469c2=Math[_0x4026b3(0x269)](_0x50d3b3/_0x50af05*_0x29ad2c),_0x250ab3=_0xd840ac['QPuoi']('█'[_0x4026b3(0x2c2)](_0x3469c2),'░'[_0x4026b3(0x2c2)](_0x29ad2c-_0x3469c2)),_0x529bd1=[];if(_0xd840ac['TwTnT'](_0x319c30,0x0))_0x529bd1['push'](_0x319c30+_0x4026b3(0x27e));if(_0xf63cc3>0x0)_0x529bd1['push'](_0xf63cc3+_0x4026b3(0x267));if(_0xd840ac['TwTnT'](_0xdee0d4,0x0))_0x529bd1['push'](_0xdee0d4+'\x20in\x20progress');const _0x1735ef=_0xd840ac['TwTnT'](_0x529bd1['length'],0x0)?'\x20('+_0x529bd1['join'](',\x20')+')':'';return _0x250ab3+'\x20'+_0x50d3b3+'/'+_0x50af05+_0x4026b3(0x23b)+_0x1735ef;}function getCurrentSessionItems(_0x2959ad,_0x1a9f98){const _0x39ff75=_0x302fd9;if(!_0x2959ad[_0x39ff75(0x21d)])return _0x1a9f98['filter'](_0x275bac=>!_0x275bac[_0x39ff75(0x2b9)]);return _0x1a9f98['filter'](_0x2e64c1=>_0x2e64c1[_0x39ff75(0x2b9)]===_0x2959ad['currentSessionId']||!_0x2e64c1[_0x39ff75(0x2b9)]);}function displayFeature(_0x180ff3,_0x2a9fda){const _0x5a6338=_0x302fd9,_0x35ff7f={'OwASm':function(_0x507137,_0x4e0f25){return _0x507137>_0x4e0f25;},'selmm':'\x0a\x20\x20\x20Scenarios:','oatVr':'closed','dhkIr':function(_0x3188cb,_0x255a1c){return _0x3188cb===_0x255a1c;},'THVlH':function(_0x29e042,_0x31b23e){return _0x29e042===_0x31b23e;},'FfnWU':'blocked','lgZUR':function(_0x580c05,_0x549d8e){return _0x580c05!==_0x549d8e;},'eRMic':_0x5a6338(0x225),'jVKis':function(_0x5ab693,_0x5ce1c7){return _0x5ab693===_0x5ce1c7;}};console['log']('\x0a'+_0x180ff3[_0x5a6338(0x2b7)]+'\x20('+_0x180ff3['dashboardUrl']+')');_0x180ff3[_0x5a6338(0x2bb)]&&console[_0x5a6338(0x1f8)](_0x5a6338(0x279)+getProgressDisplay(_0x180ff3['stats']));_0x180ff3[_0x5a6338(0x212)]&&console[_0x5a6338(0x1f8)](_0x5a6338(0x228)+_0x180ff3['description']);_0x180ff3[_0x5a6338(0x22c)]&&console[_0x5a6338(0x1f8)](_0x5a6338(0x2c7)+_0x180ff3['gitRepoUrl']);_0x180ff3['gitBranch']&&console['log'](_0x5a6338(0x2be)+_0x180ff3['gitBranch']);console[_0x5a6338(0x1f8)]('\x20\x20\x20Created:\x20'+new Date(_0x180ff3['createdAt'])['toLocaleString']());_0x180ff3['completedAt']&&console['log'](_0x5a6338(0x1f9)+new Date(_0x180ff3['completedAt'])['toLocaleString']());if(_0x2a9fda&&_0x35ff7f['OwASm'](_0x2a9fda['length'],0x0)){console[_0x5a6338(0x1f8)](_0x35ff7f['selmm']);for(let _0x4b8962=0x0;_0x4b8962<_0x2a9fda[_0x5a6338(0x206)];_0x4b8962++){const _0x422a62=_0x2a9fda[_0x4b8962];let _0xa4fbb8;if(_0x422a62[_0x5a6338(0x253)]===_0x35ff7f[_0x5a6338(0x2bd)]&&_0x35ff7f[_0x5a6338(0x234)](_0x422a62['terminalReason'],'approved'))_0xa4fbb8='✅';else{if(_0x35ff7f[_0x5a6338(0x243)](_0x422a62[_0x5a6338(0x253)],_0x5a6338(0x260)))_0xa4fbb8='🟢';else{if(_0x422a62[_0x5a6338(0x253)]==='incomplete')_0xa4fbb8='🟠';else{if(_0x422a62['status']===_0x35ff7f['FfnWU'])_0xa4fbb8='🛑';else{if(_0x422a62[_0x5a6338(0x253)]===_0x35ff7f['oatVr'])_0xa4fbb8='⛔';else _0x422a62['status']==='verification_in_progress'?_0xa4fbb8='⏳':_0xa4fbb8='⬜';}}}}const _0x232de8=_0x35ff7f[_0x5a6338(0x250)](_0x422a62['version'],0x1)?'\x20(v'+_0x422a62['version']+')':'',_0x3abab5=_0x422a62[_0x5a6338(0x1fa)]>0x1&&_0x422a62['parentItemId']&&_0x35ff7f['lgZUR'](_0x422a62['status'],_0x35ff7f[_0x5a6338(0x2bd)])&&_0x422a62[_0x5a6338(0x253)]!==_0x5a6338(0x260)?_0x35ff7f[_0x5a6338(0x1f5)]:'';console[_0x5a6338(0x1f8)]('\x20\x20\x20'+(_0x4b8962+0x1)+'.\x20'+_0xa4fbb8+'\x20'+_0x422a62[_0x5a6338(0x212)]+_0x232de8+_0x3abab5);_0x35ff7f['THVlH'](_0x422a62[_0x5a6338(0x253)],'blocked')&&_0x422a62[_0x5a6338(0x20e)]&&console['log']('\x20\x20\x20\x20\x20\x20Blocked:\x20'+_0x422a62[_0x5a6338(0x20e)]);_0x422a62['status']===_0x5a6338(0x25f)&&_0x422a62['incompleteReason']&&console[_0x5a6338(0x1f8)]('\x20\x20\x20\x20\x20\x20Incomplete:\x20'+_0x422a62[_0x5a6338(0x219)]);if(_0x35ff7f['THVlH'](_0x422a62[_0x5a6338(0x253)],_0x35ff7f['oatVr'])&&_0x35ff7f['dhkIr'](_0x422a62['terminalReason'],'approved'))console[_0x5a6338(0x1f8)]('\x20\x20\x20\x20\x20\x20Approved');else _0x35ff7f[_0x5a6338(0x216)](_0x422a62['status'],'closed')&&_0x422a62['canceledReason']&&console[_0x5a6338(0x1f8)](_0x5a6338(0x2a5)+_0x422a62['canceledReason']);}}}export async function featureCreate(_0x114132,_0x21fcf8){const _0x49f5b2=_0x302fd9,_0x1083bb={'RcPIi':function(_0x130660){return _0x130660();},'pIhew':function(_0x4a9099,_0x5c9a21){return _0x4a9099===_0x5c9a21;},'RfnXY':function(_0x51b5d4,_0x5aa7bc){return _0x51b5d4(_0x5aa7bc);},'qGktc':function(_0x48ac83){return _0x48ac83();},'KlliD':function(_0x285610,_0x4f2351){return _0x285610(_0x4f2351);},'RuwUO':function(_0x34ec36,_0xd39e0a,_0x1945a5){return _0x34ec36(_0xd39e0a,_0x1945a5);}},{envNames:_0x4b9393}=await _0x1083bb['RcPIi'](getEnvNames);_0x1083bb[_0x49f5b2(0x20b)](_0x4b9393['length'],0x0)&&console[_0x49f5b2(0x21b)]('\x0a'+_0x1083bb[_0x49f5b2(0x249)](formatProfileRequiredMessage,_0x27807f=>bold(_0x27807f)));const _0xe30fb0=_0x21fcf8['scenarios']?_0x21fcf8[_0x49f5b2(0x242)]['map'](_0x5aba9c=>_0x5aba9c[_0x49f5b2(0x263)]()):[],_0x395157=_0x1083bb[_0x49f5b2(0x237)](getGitRepoUrl),_0x43af98=getGitBranch();console[_0x49f5b2(0x1f8)]('\x0aCreating\x20feature\x20review...');const _0x2c2311=await _0x1083bb['KlliD'](createFeature,{'name':_0x114132,'description':_0x21fcf8['description'],'checklist':_0xe30fb0,'gitRepoUrl':_0x395157,'gitBranch':_0x43af98});await setActiveFeatureId(_0x2c2311['id']),await _0x1083bb['KlliD'](tryStartCurrentSession,_0x2c2311['id']);const _0x43f3a6=process['env'][_0x49f5b2(0x28b)];_0x43f3a6&®isterSession(_0x43f3a6,_0x2c2311['id']),console[_0x49f5b2(0x1f8)]('\x0a✅\x20Feature\x20review\x20created:\x20'+_0x2c2311['id']),_0x1083bb['RuwUO'](displayFeature,_0x2c2311,_0x2c2311[_0x49f5b2(0x29a)]),console['log'](_0x49f5b2(0x1fc));}export async function featureList(_0x41d90c){const _0x2c9b47=_0x302fd9,_0x39458f={'uSFHN':function(_0x4fac0f){return _0x4fac0f();},'vuUiq':function(_0x2e94cf,_0x30004d){return _0x2e94cf(_0x30004d);},'GsRJF':function(_0x1c9537,_0x3fc442){return _0x1c9537===_0x3fc442;},'WBgnn':function(_0x54c233,_0xb5d361){return _0x54c233>_0xb5d361;},'IThgk':function(_0x49bdb7,_0x3540e6){return _0x49bdb7(_0x3540e6);},'zQjaJ':'\x20--include-deleted'},_0x20a7fc={'limit':_0x41d90c[_0x2c9b47(0x28a)]??0xa,'offset':_0x41d90c['offset']??0x0,'includeDeleted':_0x41d90c['includeDeleted']};_0x41d90c[_0x2c9b47(0x2a8)]&&(_0x20a7fc[_0x2c9b47(0x22c)]=_0x39458f['uSFHN'](getGitRepoUrl),_0x20a7fc[_0x2c9b47(0x26b)]=getGitBranch());const _0x2a396f=await _0x39458f['vuUiq'](listFeatures,_0x20a7fc);if(_0x39458f[_0x2c9b47(0x266)](_0x2a396f['items']['length'],0x0)){console['log']('\x0aNo\x20feature\x20reviews\x20found.');return;}const _0x166e95=_0x39458f['WBgnn'](_0x2a396f['totalCount'],_0x2a396f['items'][_0x2c9b47(0x206)])?_0x2c9b47(0x217)+_0x2a396f[_0x2c9b47(0x235)]['length']+_0x2c9b47(0x245)+_0x2a396f[_0x2c9b47(0x2a4)]:_0x2a396f['totalCount']+_0x2c9b47(0x282);console['log']('\x0a'+_0x166e95+':\x0a');for(const _0x2060e7 of _0x2a396f['items']){const _0x800b84=_0x2c9b47(0x239)[_0x2c9b47(0x2a9)]('|');let _0x21559b=0x0;while(!![]){switch(_0x800b84[_0x21559b++]){case'0':_0x2060e7['gitBranch']&&console[_0x2c9b47(0x1f8)]('\x20\x20\x20Branch:\x20'+_0x2060e7['gitBranch']);continue;case'1':console['log'](''+_0x2060e7['name']);continue;case'2':console[_0x2c9b47(0x1f8)](_0x2c9b47(0x274)+new Date(_0x2060e7[_0x2c9b47(0x28d)])[_0x2c9b47(0x278)]());continue;case'3':console[_0x2c9b47(0x1f8)](_0x2c9b47(0x2ab)+_0x2060e7['id']);continue;case'4':_0x2060e7['stats']&&console['log'](_0x2c9b47(0x279)+_0x39458f['IThgk'](getProgressDisplay,_0x2060e7['stats']));continue;case'5':console['log']('');continue;}break;}}const _0xc7c64d=_0x20a7fc['limit']??0xa,_0x4b3537=(_0x20a7fc[_0x2c9b47(0x29e)]??0x0)+_0x2a396f['items']['length'];if(_0x4b3537<_0x2a396f[_0x2c9b47(0x2a4)]){const _0x3d789a=_0xc7c64d!==0xa?'\x20--limit\x20'+_0xc7c64d:'',_0x576e5d=_0x41d90c[_0x2c9b47(0x2a8)]?_0x2c9b47(0x280):'',_0x4cd646=_0x41d90c['includeDeleted']?_0x39458f['zQjaJ']:'';console[_0x2c9b47(0x1f8)](_0x2c9b47(0x238)+_0x4b3537+_0x3d789a+_0x576e5d+_0x4cd646);}}export async function featureShow(_0xb1ff50){const _0x38e770=_0x302fd9,_0x412ddd={'YpcEv':_0x38e770(0x2a1),'MIdvK':function(_0x4b4485,_0x199136){return _0x4b4485(_0x199136);}},_0x4ee5fb=_0xb1ff50||await getActiveFeatureId();if(!_0x4ee5fb)throw new Error(_0x412ddd['YpcEv']);const _0x1c998b=await _0x412ddd['MIdvK'](getFeature,_0x4ee5fb);displayFeature(_0x1c998b,_0x1c998b[_0x38e770(0x29a)]);}export async function featureResume(_0x3a5cd1){const _0x31dc61=_0x302fd9,_0x5556f7={'yHiEz':function(_0x17eabe){return _0x17eabe();},'ERwNj':function(_0x292ea2,_0x5be588,_0x52a51f){return _0x292ea2(_0x5be588,_0x52a51f);},'IGPZq':function(_0x269950,_0x19e675){return _0x269950(_0x19e675);},'OBOTf':'Not\x20in\x20a\x20git\x20repository.','FRVOf':function(_0x54c275,_0x1af825){return _0x54c275||_0x1af825;},'Wvtie':'Run:\x20ranger\x20create\x20\x22<name>\x22\x20to\x20create\x20a\x20new\x20feature\x20review','SRfgc':function(_0x1ac292,_0x3e8718){return _0x1ac292===_0x3e8718;},'dapjo':'Please\x20specify\x20the\x20feature\x20review\x20ID:\x20ranger\x20resume\x20<id>','AuVla':'Multiple\x20feature\x20reviews\x20found.\x20Select\x20one:','PbHTC':function(_0x24e677,_0x14075b){return _0x24e677(_0x14075b);},'mdSpp':function(_0xe51489,_0x1f275d){return _0xe51489!==_0x1f275d;},'NJgLc':function(_0x30755c,_0x50dd81){return _0x30755c(_0x50dd81);}};if(_0x3a5cd1){const _0x1fd9b5=await getFeature(_0x3a5cd1);await setActiveFeatureId(_0x1fd9b5['id']);const _0x1110e5=_0x5556f7['yHiEz'](getGitBranch);_0x1110e5&&_0x1110e5!==_0x1fd9b5[_0x31dc61(0x26b)]&&(await _0x5556f7['ERwNj'](updateFeature,_0x1fd9b5['id'],{'gitBranch':_0x1110e5}),console[_0x31dc61(0x1f8)](_0x31dc61(0x2a7)+_0x1110e5));console[_0x31dc61(0x1f8)](_0x31dc61(0x26a)+_0x1fd9b5[_0x31dc61(0x2b7)]+'\x20('+_0x1fd9b5['id']+')'),await tryStartCurrentSession(_0x1fd9b5['id']);const _0x4d4ece=process['env']['CLAUDE_SESSION_ID'];_0x4d4ece&&_0x5556f7['ERwNj'](registerSession,_0x4d4ece,_0x1fd9b5['id']);displayFeature(_0x1fd9b5,_0x1fd9b5[_0x31dc61(0x29a)]),await _0x5556f7['IGPZq'](printFeedbackNudge,_0x1fd9b5['id']);return;}const _0x46b8f5=getGitRepoUrl(),_0x53414c=getGitBranch();if(!_0x46b8f5&&!_0x53414c)throw new Error(_0x5556f7['OBOTf']);console['log'](_0x31dc61(0x251)+_0x5556f7['FRVOf'](_0x46b8f5,'any')+'\x20/\x20'+(_0x53414c||_0x31dc61(0x268))+'...');const _0x262b84=await listFeatures({'gitRepoUrl':_0x46b8f5,'gitBranch':_0x53414c}),_0x16d439=_0x262b84['items']['filter'](_0x19d139=>_0x19d139['status']?_0x19d139['status']!=='verified':!_0x19d139['completedAt']);if(_0x16d439[_0x31dc61(0x206)]===0x0){console['log']('\x0aNo\x20matching\x20active\x20feature\x20reviews\x20found.'),console['log'](_0x5556f7[_0x31dc61(0x208)]);return;}let _0x55348e;if(_0x5556f7[_0x31dc61(0x254)](_0x16d439['length'],0x1))_0x55348e=_0x16d439[0x0];else{const _0x32c816=process['stdin'][_0x31dc61(0x232)]&&process[_0x31dc61(0x2c3)][_0x31dc61(0x232)];if(!_0x32c816){console[_0x31dc61(0x1f8)]('\x0aNon-interactive\x20mode\x20detected.\x20Multiple\x20feature\x20reviews\x20found:');for(const _0x4d0ade of _0x16d439){console[_0x31dc61(0x1f8)]('\x20\x20'+_0x4d0ade['name']),console['log']('\x20\x20\x20\x20\x20ID:\x20'+_0x4d0ade['id']),_0x4d0ade['stats']&&console['log']('\x20\x20\x20\x20\x20Progress:\x20'+getProgressDisplay(_0x4d0ade['stats'])),_0x4d0ade[_0x31dc61(0x26b)]&&console['log']('\x20\x20\x20\x20\x20Branch:\x20'+_0x4d0ade['gitBranch']);}throw new Error(_0x5556f7[_0x31dc61(0x1fd)]);}const {selected:_0xd811c5}=await _0x5053a8['prompt']([{'type':'list','name':'selected','message':_0x5556f7[_0x31dc61(0x262)],'choices':_0x16d439['map'](_0x1aa6f3=>({'name':_0x1aa6f3[_0x31dc61(0x2b7)]+'\x20('+_0x1aa6f3['id']+')','value':_0x1aa6f3['id']}))}]);_0x55348e=_0x16d439['find'](_0x3370e3=>_0x3370e3['id']===_0xd811c5);}await _0x5556f7[_0x31dc61(0x246)](setActiveFeatureId,_0x55348e['id']);_0x53414c&&_0x5556f7[_0x31dc61(0x2b0)](_0x53414c,_0x55348e['gitBranch'])&&(await updateFeature(_0x55348e['id'],{'gitBranch':_0x53414c}),console[_0x31dc61(0x1f8)](_0x31dc61(0x2a7)+_0x53414c));console[_0x31dc61(0x1f8)]('\x0a✅\x20Resumed\x20feature\x20review:\x20'+_0x55348e['name']+'\x20('+_0x55348e['id']+')'),await _0x5556f7[_0x31dc61(0x2c0)](tryStartCurrentSession,_0x55348e['id']);const _0x16fbcb=await getFeature(_0x55348e['id']),_0x101f64=process[_0x31dc61(0x220)]['CLAUDE_SESSION_ID'];_0x101f64&&_0x5556f7['ERwNj'](registerSession,_0x101f64,_0x16fbcb['id']),_0x5556f7['ERwNj'](displayFeature,_0x16fbcb,_0x16fbcb['checklistItems']),await printFeedbackNudge(_0x16fbcb['id']);}async function printFeedbackNudge(_0x26c882){const _0x3d32e0=_0x302fd9,_0x2dc10={'KVKat':function(_0x42350e,_0x2bd03e){return _0x42350e(_0x2bd03e);},'iqfNw':function(_0x510499,_0x2958fa){return _0x510499>_0x2958fa;},'dRzBI':_0x3d32e0(0x25e)};try{const {items:_0x2c7732}=await _0x2dc10[_0x3d32e0(0x2c5)](getActionItems,_0x26c882);let _0x52f1f6=0x0,_0x492bfd=0x0;for(const _0x281ae6 of _0x2c7732){const _0x3bdbde=await getItemFeedback(_0x26c882,_0x281ae6['id']);_0x2dc10[_0x3d32e0(0x25a)](_0x3bdbde[_0x3d32e0(0x24b)]['length'],0x0)&&(_0x52f1f6+=_0x3bdbde['unaddressedComments'][_0x3d32e0(0x206)],_0x492bfd++);}_0x52f1f6>0x0&&(console[_0x3d32e0(0x1f8)](_0x3d32e0(0x290)+_0x52f1f6+'\x20unaddressed\x20reviewer\x20comment(s)\x20across\x20'+_0x492bfd+_0x3d32e0(0x24c)),console['log'](_0x2dc10[_0x3d32e0(0x27c)]));}catch{}}async function tryStartCurrentSession(_0x1cabd6){const _0x26e84d=_0x302fd9,_0x160599={'SDBRc':function(_0x463034,_0x409348,_0x5375bc){return _0x463034(_0x409348,_0x5375bc);}};try{const {sessions:_0x23ef20}=await listFeatureSessions(_0x1cabd6),_0x3ae793=_0x23ef20[_0x26e84d(0x2c6)](_0xe017f7=>_0xe017f7[_0x26e84d(0x253)]==='ready');_0x3ae793&&(await _0x160599[_0x26e84d(0x24a)](startSession,_0x1cabd6,_0x3ae793['id']),console[_0x26e84d(0x1f8)]('\x20\x20\x20▶️\x20Started\x20session\x20'+_0x3ae793['iteration']));}catch{}}export async function featureReport(_0x248f28,_0x16dac6){const _0x32e489=_0x302fd9,_0x19b755={'RrJiE':'No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.','eANQA':function(_0x1328ea){return _0x1328ea();},'ltwvk':'reports','kJlxn':function(_0x1afa07,_0x41ed1b,_0x5ea0af){return _0x1afa07(_0x41ed1b,_0x5ea0af);},'GMfVZ':function(_0x2bb357,_0x575dc1){return _0x2bb357(_0x575dc1);},'kwwnA':function(_0x1c7227,_0x48085e,_0x297b53,_0x1cd35b){return _0x1c7227(_0x48085e,_0x297b53,_0x1cd35b);}},_0xc0f7fc=_0x248f28||await getActiveFeatureId();if(!_0xc0f7fc)throw new Error(_0x19b755['RrJiE']);console[_0x32e489(0x1f8)]('\x0aGenerating\x20report...');const _0x257674=await getFeatureReportMarkdown(_0xc0f7fc,{'style':_0x16dac6[_0x32e489(0x29d)]}),_0x5348b6=_0x16dac6[_0x32e489(0x292)]||join(_0x19b755['eANQA'](getRangerDir),_0x19b755['ltwvk'],_0xc0f7fc+_0x32e489(0x24e)),_0x1e99cf=_0x19b755['kJlxn'](join,_0x5348b6,'..');!_0x19b755['GMfVZ'](existsSync,_0x1e99cf)&&await mkdir(_0x1e99cf,{'recursive':!![]}),await _0x19b755[_0x32e489(0x224)](writeFile,_0x5348b6,_0x257674,'utf-8'),console['log'](_0x32e489(0x273)+_0x5348b6);}function getScenarioResult(_0x4602af){const _0x5cdd1e=_0x302fd9,_0x57d014={'kpfZZ':function(_0x59b65e,_0x2fb122){return _0x59b65e===_0x2fb122;},'SdXhM':function(_0x5da745,_0x4fbb0b){return _0x5da745===_0x4fbb0b;}};if(_0x57d014[_0x5cdd1e(0x255)](_0x4602af[_0x5cdd1e(0x253)],'closed'))return _0x4602af['terminalReason']??'closed';if(_0x57d014[_0x5cdd1e(0x276)](_0x4602af['status'],'verification_in_progress'))return _0x5cdd1e(0x21f);return _0x4602af['status'];}function getScenarioRationale(_0x348347,_0x458af3){const _0xf110f2=_0x302fd9;if(_0x458af3)return _0x458af3;if(_0x348347['blockedReason'])return _0x348347[_0xf110f2(0x20e)];if(_0x348347[_0xf110f2(0x219)])return _0x348347['incompleteReason'];if(_0x348347['canceledReason'])return _0x348347[_0xf110f2(0x1f4)];if(_0x348347['notes'])return _0x348347['notes'];return null;}export async function featureReportPrDescription(_0x3f9a3f,_0x46e63a){const _0x4b8bef=_0x302fd9,_0x3a2ebe={'eKmjA':function(_0x25e779,_0x10e8c1,_0x2d654e){return _0x25e779(_0x10e8c1,_0x2d654e);},'BAJYK':function(_0x1d8438,_0x3f74d1){return _0x1d8438===_0x3f74d1;},'zVQPM':_0x4b8bef(0x2ae)},_0x25c8ee=_0x3f9a3f||await getActiveFeatureId();if(!_0x25c8ee)throw new Error('No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.');const _0x515f39=await getFeature(_0x25c8ee),_0x5820e8=_0x515f39[_0x4b8bef(0x29a)]||[],_0x1f2e5e=_0x3a2ebe['eKmjA'](getCurrentSessionItems,_0x515f39,_0x5820e8);_0x1f2e5e['length']===0x0&&(console[_0x4b8bef(0x256)]('\x0a❌\x20No\x20scenarios\x20found\x20to\x20include.'),process['exit'](0x1));const _0x23038c=_0x46e63a['excludeScenarios']??[],_0xeb2c5c=_0x23038c[_0x4b8bef(0x2a0)](_0x415c66=>!Number[_0x4b8bef(0x2a6)](_0x415c66)||_0x415c66<0x1||_0x415c66>_0x1f2e5e['length']);if(_0xeb2c5c['length']>0x0){console['error'](_0x4b8bef(0x215)+_0xeb2c5c['join'](',\x20')),console[_0x4b8bef(0x1f8)]('\x0aAvailable\x20scenarios:');for(let _0x2051d5=0x0;_0x2051d5<_0x1f2e5e[_0x4b8bef(0x206)];_0x2051d5++){console[_0x4b8bef(0x1f8)]('\x20\x20'+(_0x2051d5+0x1)+'.\x20'+_0x1f2e5e[_0x2051d5]['description']);}process[_0x4b8bef(0x2af)](0x1);}const _0x315b7f=new Set(_0x23038c['map'](_0x352bc9=>_0x352bc9-0x1)),_0x111c5f=_0x1f2e5e['filter']((_0x3c742e,_0x462bd0)=>!_0x315b7f[_0x4b8bef(0x23e)](_0x462bd0));_0x3a2ebe[_0x4b8bef(0x205)](_0x111c5f['length'],0x0)&&(console['error'](_0x3a2ebe[_0x4b8bef(0x26c)]),process[_0x4b8bef(0x2af)](0x1));if(_0x46e63a[_0x4b8bef(0x23a)])await outputJsonReport(_0x25c8ee,_0x515f39,_0x111c5f);else{const _0x34ff6e=await getFeatureReportMarkdown(_0x25c8ee,{'itemIds':_0x111c5f[_0x4b8bef(0x258)](_0x348b5b=>_0x348b5b['id'])});process['stdout'][_0x4b8bef(0x29f)](_0x34ff6e[_0x4b8bef(0x213)]()+'\x0a');}}async function outputJsonReport(_0x2b8261,_0x5b6520,_0x589bcf){const _0x3d974b=_0x302fd9,_0x15bea6={'lsNoz':function(_0xab0b11,_0x437000){return _0xab0b11(_0x437000);},'qVoxr':function(_0x1af1a1,_0x5dabc0){return _0x1af1a1+_0x5dabc0;}},_0x14f1fd=getApiBaseUrl(),_0x1a2442=await getFeatureReport(_0x2b8261),_0x4dcea5=new Map(_0x1a2442[_0x3d974b(0x29a)]['map'](_0x65ad3a=>[_0x65ad3a['id'],_0x65ad3a])),_0x451610=await Promise[_0x3d974b(0x2c1)](_0x589bcf['map'](async _0x5d885c=>{const _0x1d8c8c=_0x3d974b,_0x359caa=_0x4dcea5['get'](_0x5d885c['id']),_0x260fc7=_0x359caa?.[_0x1d8c8c(0x1fb)]??null;let _0x103a5e=[];if(_0x5d885c[_0x1d8c8c(0x296)])try{const {steps:_0x3d5593}=await getBrowserSessionSteps(_0x5d885c['browserSessionId']);_0x3d5593[_0x1d8c8c(0x206)]>0x0&&(_0x103a5e=_0x3d5593['map'](_0xe99f19=>{const _0x5b779c=_0x1d8c8c,_0x386e46=_0xe99f19['assets'][_0x5b779c(0x2c6)](_0x35bce5=>_0x35bce5['assetType']===_0x5b779c(0x1ff)&&_0x35bce5['timing']==='after')??_0xe99f19['assets']['find'](_0x356166=>_0x356166[_0x5b779c(0x20a)]===_0x5b779c(0x1ff));let _0xf0a209=null,_0x2200f0=null;if(_0x386e46){const _0x4e6a3b=_0x386e46['storage']['location']['split']('/')[_0x5b779c(0x2b5)]();_0xf0a209=_0x14f1fd+_0x5b779c(0x23f)+_0x5d885c['browserSessionId']+_0x5b779c(0x203)+_0x4e6a3b,_0x4e6a3b&&(_0x2200f0=_0x4e6a3b[_0x5b779c(0x210)](/\.\w+$/,'')[_0x5b779c(0x210)](/^(key_)?\d+_/,'')['replace'](/[-_]/g,'\x20'));}return{'description':_0x2200f0||_0xe99f19['description']||_0xe99f19['stepName']||_0x5b779c(0x283)+_0xe99f19[_0x5b779c(0x26e)],'screenshot':_0xf0a209,'is_key_step':_0xe99f19['isKeyStep']};}));}catch{}return _0x103a5e[_0x1d8c8c(0x206)]===0x0&&_0x260fc7?.['screenshotUrls']&&(_0x103a5e=_0x260fc7[_0x1d8c8c(0x28f)][_0x1d8c8c(0x258)]((_0x26c797,_0x12c0b8)=>({'description':'Screenshot\x20'+(_0x12c0b8+0x1),'screenshot':_0x26c797,'is_key_step':![]}))),{'description':_0x5d885c['description'],'result':_0x15bea6[_0x1d8c8c(0x287)](getScenarioResult,_0x5d885c),'rationale':getScenarioRationale(_0x5d885c,_0x260fc7?.[_0x1d8c8c(0x1fe)]),'steps':_0x103a5e};})),_0x2dfefb={'url':_0x5b6520[_0x3d974b(0x286)],'scenarios':_0x451610};process[_0x3d974b(0x2c3)][_0x3d974b(0x29f)](_0x15bea6['qVoxr'](JSON['stringify'](_0x2dfefb,null,0x2),'\x0a'));}export async function featureConcludeSession(_0x3c07b9){const _0x4db102=_0x302fd9,_0x11feca={'llcdm':function(_0x5c7ff7){return _0x5c7ff7();},'XRdRX':'No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','QlpgH':_0x4db102(0x265),'iurVr':function(_0x262a8c,_0x35ed5d){return _0x262a8c(_0x35ed5d);},'pJbGU':_0x4db102(0x289),'dSKwO':function(_0x5b8e5a,_0x3ca6cd){return _0x5b8e5a===_0x3ca6cd;},'wXxvD':_0x4db102(0x27b),'OAynC':'in_progress','CUJJC':'\x0aConcluding\x20session...','wrKUE':function(_0x20e816,_0x2106da,_0x50399f){return _0x20e816(_0x2106da,_0x50399f);}},_0x2ed829=_0x3c07b9||await _0x11feca[_0x4db102(0x23c)](getActiveFeatureId);if(!_0x2ed829)throw new Error(_0x11feca[_0x4db102(0x2a2)]);const _0x38cde0=await getFeature(_0x2ed829);if(!_0x38cde0[_0x4db102(0x21d)])throw new Error(_0x11feca['QlpgH']);const {sessions:_0x305db9}=await _0x11feca[_0x4db102(0x20d)](listFeatureSessions,_0x2ed829),_0xe94cb6=_0x305db9['find'](_0x419054=>_0x419054['id']===_0x38cde0['currentSessionId']);if(!_0xe94cb6)throw new Error(_0x11feca[_0x4db102(0x25d)]);if(_0x11feca[_0x4db102(0x204)](_0xe94cb6['status'],_0x11feca['wXxvD'])){console['log']('\x0a✅\x20Session\x20is\x20already\x20completed.');return;}if(_0xe94cb6[_0x4db102(0x253)]!==_0x11feca['OAynC'])throw new Error(_0x4db102(0x209)+_0xe94cb6['status']);console[_0x4db102(0x1f8)](_0x11feca[_0x4db102(0x2ad)]),await _0x11feca[_0x4db102(0x201)](concludeSession,_0x2ed829,_0x38cde0[_0x4db102(0x21d)]),console[_0x4db102(0x1f8)]('\x0a✅\x20Session\x20'+_0xe94cb6['iteration']+'\x20concluded.'),console['log'](_0x4db102(0x29c));}export async function featureSessions(_0x1c52b9){const _0x1d413e=_0x302fd9,_0x528c61={'jRKFG':function(_0x152270,_0x4f9c1d){return _0x152270(_0x4f9c1d);},'kHeuZ':function(_0x4f0fbd,_0x22a464){return _0x4f0fbd===_0x22a464;},'nEQCJ':'completed'},_0x19fd8c=_0x1c52b9||await getActiveFeatureId();if(!_0x19fd8c)throw new Error(_0x1d413e(0x257));const _0x5a1338=await _0x528c61['jRKFG'](getFeature,_0x19fd8c);console['log'](_0x1d413e(0x2bf)+_0x5a1338[_0x1d413e(0x2b7)]+'\x0a');const {sessions:_0x4b7b94}=await _0x528c61['jRKFG'](listFeatureSessions,_0x19fd8c);if(_0x4b7b94[_0x1d413e(0x206)]===0x0){console['log']('No\x20sessions\x20found.');return;}for(const _0x12a662 of _0x4b7b94){const _0x2c8a40=_0x528c61[_0x1d413e(0x299)](_0x12a662['status'],_0x528c61[_0x1d413e(0x2ca)])?'✅':_0x12a662['status']==='in_progress'?'🔄':'▶️';console['log'](_0x2c8a40+'\x20Session\x20'+_0x12a662['iteration']+'\x20('+_0x12a662['id']+')'),console['log'](_0x1d413e(0x298)+_0x12a662['status']),console[_0x1d413e(0x1f8)]('\x20\x20\x20Created:\x20'+new Date(_0x12a662['createdAt'])[_0x1d413e(0x25b)]()),_0x12a662['completedAt']&&console['log']('\x20\x20\x20Completed:\x20'+new Date(_0x12a662[_0x1d413e(0x21e)])['toLocaleString']()),console[_0x1d413e(0x1f8)]('');}}export async function featureAddScenario(_0xff3516,_0x522596){const _0x32fc60=_0x302fd9,_0x128084={'WUvBC':function(_0x11abf7){return _0x11abf7();},'bftDv':_0x32fc60(0x2a1)},_0x2c8b1f=_0x522596||await _0x128084['WUvBC'](getActiveFeatureId);if(!_0x2c8b1f)throw new Error(_0x128084[_0x32fc60(0x295)]);const _0x5189a0=await getFeature(_0x2c8b1f);if(_0x5189a0['latestReview']&&!_0x5189a0['latestReview']['submittedAt'])throw new Error(_0x32fc60(0x207)+_0x5189a0['dashboardUrl']);await createChecklistItem(_0x2c8b1f,_0xff3516);const _0x18c647=await getFeature(_0x2c8b1f);console[_0x32fc60(0x1f8)](_0x32fc60(0x202)),displayFeature(_0x18c647,_0x18c647['checklistItems']);}export async function featureEditScenario(_0xc48507,_0xd8d213){const _0x3f6548=_0x302fd9,_0x2e424e={'qbsjc':function(_0x2fcc43){return _0x2fcc43();},'xGCmd':function(_0x9322,_0x1d9eef){return _0x9322(_0x1d9eef);},'xdlTK':_0x3f6548(0x223),'gAwtd':'\x0a❌\x20No\x20scenarios\x20found\x20to\x20edit.','FYBHM':function(_0x59c008,_0x216fd5){return _0x59c008===_0x216fd5;},'XojyL':function(_0x49a778,_0x5f0388){return _0x49a778-_0x5f0388;},'NbcJt':_0x3f6548(0x23d),'wHlBI':function(_0x4dada0,_0x578fc3){return _0x4dada0+_0x578fc3;}},_0x36e844=_0xd8d213['id']||await _0x2e424e['qbsjc'](getActiveFeatureId);!_0x36e844&&(console[_0x3f6548(0x256)](_0x3f6548(0x218)),console[_0x3f6548(0x256)]('Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review'),process[_0x3f6548(0x2af)](0x1));const _0x4692ed=await _0x2e424e[_0x3f6548(0x264)](getFeature,_0x36e844);_0x4692ed[_0x3f6548(0x275)]&&!_0x4692ed[_0x3f6548(0x275)]['submittedAt']&&(console[_0x3f6548(0x256)](_0x2e424e['xdlTK']),console[_0x3f6548(0x256)]('Please\x20finish\x20your\x20review\x20first:'),console[_0x3f6548(0x256)]('\x20\x20'+_0x4692ed[_0x3f6548(0x286)]),process['exit'](0x1));const _0x17de6e=_0x4692ed[_0x3f6548(0x29a)]||[];_0x17de6e[_0x3f6548(0x206)]===0x0&&(console['error'](_0x2e424e['gAwtd']),process['exit'](0x1));if(_0x2e424e[_0x3f6548(0x20f)](_0xd8d213[_0x3f6548(0x277)],undefined)){console['error']('\x0a❌\x20No\x20scenario\x20number\x20provided.\x20Use\x20--scenario\x20<number>.'),console['log'](_0x3f6548(0x23d));for(let _0x2cb214=0x0;_0x2cb214<_0x17de6e['length'];_0x2cb214++){console['log']('\x20\x20'+(_0x2cb214+0x1)+'.\x20'+_0x17de6e[_0x2cb214][_0x3f6548(0x212)]);}process[_0x3f6548(0x2af)](0x1);}const _0x3bd48a=_0x2e424e[_0x3f6548(0x22b)](_0xd8d213['scenario'],0x1);if(_0x3bd48a<0x0||_0x3bd48a>=_0x17de6e['length']){console[_0x3f6548(0x256)](_0x3f6548(0x240)+_0xd8d213[_0x3f6548(0x277)]+'.\x20Feature\x20review\x20has\x20'+_0x17de6e['length']+_0x3f6548(0x259)),console['log'](_0x2e424e['NbcJt']);for(let _0x240daf=0x0;_0x240daf<_0x17de6e['length'];_0x240daf++){console[_0x3f6548(0x1f8)]('\x20\x20'+_0x2e424e[_0x3f6548(0x2aa)](_0x240daf,0x1)+'.\x20'+_0x17de6e[_0x240daf]['description']);}process[_0x3f6548(0x2af)](0x1);}const _0x3cbcd7=_0x17de6e[_0x3bd48a];await updateChecklistItem(_0x36e844,_0x3cbcd7['id'],{'description':_0xc48507});const _0x4cd8de=await getFeature(_0x36e844);console['log']('\x0a✅\x20Scenario\x20updated'),displayFeature(_0x4cd8de,_0x4cd8de['checklistItems']);}async function downloadFeedbackImage(_0x1a68dd,_0x15d208){const _0x525bec=_0x302fd9,_0x263775={'GLviq':function(_0x1b2952,_0x3b879e,_0x648c46){return _0x1b2952(_0x3b879e,_0x648c46);},'OloOp':function(_0x20d068){return _0x20d068();},'RNhvZ':_0x525bec(0x21a),'shFQP':function(_0x488c88,_0x4d12ca){return _0x488c88(_0x4d12ca);}};try{const _0xfaf4f1=_0x263775['GLviq'](join,_0x263775['OloOp'](getRangerDir),_0x263775[_0x525bec(0x248)]);await _0x263775[_0x525bec(0x227)](mkdir,_0xfaf4f1,{'recursive':!![]});const _0x50a2d5=join(_0xfaf4f1,'comment_'+_0x15d208+'.png'),_0xc30079=await _0x263775[_0x525bec(0x271)](fetch,_0x1a68dd);if(!_0xc30079['ok'])return null;const _0x11df3c=Buffer['from'](await _0xc30079['arrayBuffer']());return await writeFile(_0x50a2d5,_0x11df3c),_0x50a2d5;}catch{return null;}}export async function featureGetReview(_0x3c55a0){const _0xaba81c=_0x302fd9,_0x31054b={'xLBGx':function(_0x54ef73){return _0x54ef73();},'HCDak':'No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','FsLEB':function(_0xcefc5,_0x33cc63){return _0xcefc5(_0x33cc63);},'dpQWU':function(_0x26f618,_0x5c9378){return _0x26f618>_0x5c9378;},'pAwEB':function(_0x2c9ede,_0x27475b){return _0x2c9ede+_0x27475b;},'uhRdO':'numeric','jYRZi':_0xaba81c(0x22f),'AywlW':function(_0x4bc692,_0x1bb2cb,_0x88a283){return _0x4bc692(_0x1bb2cb,_0x88a283);},'UQScC':function(_0x2fd29a,_0x5dfee7){return _0x2fd29a===_0x5dfee7;},'wlRgn':'point'},_0x5e8587=_0x3c55a0||await _0x31054b['xLBGx'](getActiveFeatureId);if(!_0x5e8587)throw new Error(_0x31054b[_0xaba81c(0x281)]);const _0x11bdc2=await _0x31054b['FsLEB'](getFeature,_0x5e8587),{items:_0x258b53}=await getActionItems(_0x5e8587);console[_0xaba81c(0x1f8)](_0xaba81c(0x291)+_0x11bdc2[_0xaba81c(0x2b7)]+'\x20('+_0x11bdc2['id']+')\x0a');if(_0x258b53['length']===0x0){console[_0xaba81c(0x1f8)](_0xaba81c(0x22d));return;}for(let _0x5d600e=0x0;_0x5d600e<_0x258b53[_0xaba81c(0x206)];_0x5d600e++){const _0x55d908=_0x258b53[_0x5d600e],_0x25073f=_0x55d908['version']>0x1?'\x20(v'+_0x55d908[_0xaba81c(0x1fa)]+')':'',_0x104cac=await getItemFeedback(_0x5e8587,_0x55d908['id']);if(_0x31054b[_0xaba81c(0x2b2)](_0x104cac['unaddressedComments'][_0xaba81c(0x206)],0x0)){console['log']('Scenario\x20'+_0x31054b[_0xaba81c(0x229)](_0x5d600e,0x1)+':\x20\x22'+_0x55d908['description']+'\x22'+_0x25073f+'\x20—\x20'+_0x104cac[_0xaba81c(0x24b)]['length']+'\x20unaddressed\x20comment(s)');for(const _0xca3470 of _0x104cac['unaddressedComments']){const _0x22f0a0=new Date(_0xca3470['createdAt'])['toLocaleDateString']('en-US',{'month':_0xaba81c(0x1f7),'day':_0x31054b['uhRdO']}),_0x4713f2=_0xca3470['authorName']||_0xca3470[_0xaba81c(0x294)]||_0x31054b[_0xaba81c(0x236)];console['log'](_0xaba81c(0x297)+_0x4713f2+'\x20('+_0x22f0a0+'):\x20\x22'+_0xca3470['content']+'\x22');if(_0xca3470[_0xaba81c(0x221)]){const _0x12967a=await _0x31054b[_0xaba81c(0x233)](downloadFeedbackImage,_0xca3470['assetUrl'],_0xca3470['id']);_0x12967a&&console[_0xaba81c(0x1f8)]('\x20\x20\x20\x20\x20📷\x20Screenshot:\x20'+_0x12967a);}if(_0xca3470['domRef']){const _0x1aece4=_0xca3470['domRef']['selector']['split'](_0xaba81c(0x2ac))['pop']()?.[_0xaba81c(0x2a9)](':')[0x0]||_0xaba81c(0x27f),_0x583e58=_0xca3470[_0xaba81c(0x293)]['textContent']?'\x20\x22'+_0xca3470['domRef'][_0xaba81c(0x2c8)]['slice'](0x0,0x3c)+'\x22':'';console[_0xaba81c(0x1f8)](_0xaba81c(0x2b1)+_0x1aece4+'>'+_0x583e58),console['log'](_0xaba81c(0x21c)+_0xca3470[_0xaba81c(0x293)][_0xaba81c(0x2b6)]);}else{if(_0xca3470[_0xaba81c(0x214)]){const _0x176cba=_0xca3470['spatial'][_0xaba81c(0x2c4)];_0x31054b[_0xaba81c(0x29b)](_0xca3470[_0xaba81c(0x214)]['type'],_0x31054b[_0xaba81c(0x2b3)])&&_0x176cba[_0xaba81c(0x206)]>=0x2?console[_0xaba81c(0x1f8)](_0xaba81c(0x26d)+_0x176cba[0x0]['toFixed'](0x2)+',\x20'+_0x176cba[0x1]['toFixed'](0x2)+')'):console['log'](_0xaba81c(0x211)+_0xca3470[_0xaba81c(0x214)][_0xaba81c(0x285)]+_0xaba81c(0x26f)+_0x176cba['map'](_0x1ae843=>_0x1ae843[_0xaba81c(0x200)](0x2))[_0xaba81c(0x24f)](',\x20')+']');}}}if(_0x104cac[_0xaba81c(0x27a)]){console[_0xaba81c(0x1f8)](_0xaba81c(0x244));for(const _0x165140 of _0x104cac[_0xaba81c(0x27a)][_0xaba81c(0x2a9)]('\x0a')){console[_0xaba81c(0x1f8)]('\x20\x20\x20\x20'+_0x165140);}}}else console['log']('Scenario\x20'+(_0x5d600e+0x1)+_0xaba81c(0x230)+_0x55d908[_0xaba81c(0x212)]+'\x22'+_0x25073f+_0xaba81c(0x241)),console[_0xaba81c(0x1f8)](_0xaba81c(0x20c));console['log']('');}}function _0x2325(_0x10cb2a,_0x2fc9e4){_0x10cb2a=_0x10cb2a-0x1f4;const _0x3c21f3=_0x3c21();let _0x23251d=_0x3c21f3[_0x10cb2a];return _0x23251d;}export async function featureDelete(_0x54c853){const _0x5ef539=_0x302fd9,_0x2db804={'NIyPg':'No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review'},_0x1def5c=_0x54c853||await getActiveFeatureId();if(!_0x1def5c)throw new Error(_0x2db804['NIyPg']);const _0x35f72b=await getFeature(_0x1def5c);await softDeleteFeature(_0x1def5c),console[_0x5ef539(0x1f8)](_0x5ef539(0x231)+_0x35f72b[_0x5ef539(0x2b7)]+'\x20('+_0x1def5c+')'),console[_0x5ef539(0x1f8)]('\x20\x20\x20To\x20restore\x20it,\x20run:\x20ranger\x20restore\x20'+_0x1def5c);}export async function featureRestore(_0x32dd0e){const _0x461fb1=_0x302fd9,_0xd7f2e7={'iXLOY':function(_0xfd744b,_0x3e3272){return _0xfd744b(_0x3e3272);},'zvxFN':function(_0x5353cc,_0x389d50,_0x23030f){return _0x5353cc(_0x389d50,_0x23030f);}};await _0xd7f2e7['iXLOY'](restoreFeature,_0x32dd0e);const _0x36db66=await _0xd7f2e7['iXLOY'](getFeature,_0x32dd0e);console[_0x461fb1(0x1f8)](_0x461fb1(0x22a)+_0x36db66[_0x461fb1(0x2b7)]+'\x20('+_0x32dd0e+')'),_0xd7f2e7['zvxFN'](displayFeature,_0x36db66,_0x36db66[_0x461fb1(0x29a)]);}
|
package/build/commands/hook.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x38686a,_0x4d4555){const _0x12bcb8=_0x2f8c,_0x549fd1=_0x38686a();while(!![]){try{const _0x1f8f68=parseInt(_0x12bcb8(0x1eb))/0x1+parseInt(_0x12bcb8(0x1e4))/0x2*(-parseInt(_0x12bcb8(0x1f3))/0x3)+parseInt(_0x12bcb8(0x1e8))/0x4+-parseInt(_0x12bcb8(0x1ee))/0x5+-parseInt(_0x12bcb8(0x1e9))/0x6+parseInt(_0x12bcb8(0x1e3))/0x7+-parseInt(_0x12bcb8(0x1e6))/0x8*(-parseInt(_0x12bcb8(0x1f4))/0x9);if(_0x1f8f68===_0x4d4555)break;else _0x549fd1['push'](_0x549fd1['shift']());}catch(_0x26ae7a){_0x549fd1['push'](_0x549fd1['shift']());}}}(_0xb9ae,0xe86c8));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 _0x2f8c(_0x4c196c,_0x239944){_0x4c196c=_0x4c196c-0x1e3;const _0xb9ae1a=_0xb9ae();let _0x2f8cd6=_0xb9ae1a[_0x4c196c];return _0x2f8cd6;}let cancellationHandlersInstalled=![];function installCancellationHandlers(){const _0x4f4009=_0x2f8c,_0x178918={'wzGwB':_0x4f4009(0x1ed)};if(cancellationHandlersInstalled)return;const _0x47bb8d=()=>{const _0x834e13=_0x4f4009;process[_0x834e13(0x1e7)](0x0);};process['once'](_0x178918['wzGwB'],_0x47bb8d),process['once'](_0x4f4009(0x1ea),_0x47bb8d),process[_0x4f4009(0x1e5)]('SIGHUP',_0x47bb8d),cancellationHandlersInstalled=!![];}export async function hook(_0x420878,_0x37b81e){const _0x2552e3=_0x2f8c,_0x5320e5={'owsoG':function(_0x3450ee){return _0x3450ee();},'xgFFw':function(_0x2220bf,_0x491766){return _0x2220bf(_0x491766);}};_0x5320e5['owsoG'](installCancellationHandlers);const _0x5ed2e5=HOOKS[_0x420878];if(!_0x5ed2e5){const _0x37ce2f=Object[_0x2552e3(0x1f2)](HOOKS)[_0x2552e3(0x1f0)](',\x20');console[_0x2552e3(0x1ef)]('Unknown\x20hook:\x20'+_0x420878),console['error'](_0x2552e3(0x1f1)+_0x37ce2f),process[_0x2552e3(0x1e7)](0x1);}await _0x5320e5[_0x2552e3(0x1ec)](_0x5ed2e5,_0x37b81e);}function _0xb9ae(){const _0x440c95=['2509125NMGfrg','error','join','Valid\x20hooks:\x20','keys','2945433tLVfQO','9HpLsZl','5589087mtYHmM','2GEofpc','once','5900344WsuZby','exit','1430148WYMFAi','4878576SRBKmu','SIGTERM','1355219zvcfUr','xgFFw','SIGINT'];_0xb9ae=function(){return _0x440c95;};return _0xb9ae();}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
function _0x315d(_0x5aae8e,_0x83e7bd){_0x5aae8e=_0x5aae8e-0x1f1;const _0x3cbc2e=_0x3cbc();let _0x315ddb=_0x3cbc2e[_0x5aae8e];return _0x315ddb;}(function(_0x453542,_0x452d1f){const _0x493620=_0x315d,_0x7dce12=_0x453542();while(!![]){try{const _0x41ba4b=-parseInt(_0x493620(0x1f5))/0x1+parseInt(_0x493620(0x1fc))/0x2*(-parseInt(_0x493620(0x1f4))/0x3)+parseInt(_0x493620(0x1f9))/0x4*(-parseInt(_0x493620(0x1f3))/0x5)+parseInt(_0x493620(0x1fb))/0x6+-parseInt(_0x493620(0x1f2))/0x7*(-parseInt(_0x493620(0x1f8))/0x8)+parseInt(_0x493620(0x1f6))/0x9+parseInt(_0x493620(0x1f1))/0xa*(parseInt(_0x493620(0x1fd))/0xb);if(_0x41ba4b===_0x452d1f)break;else _0x7dce12['push'](_0x7dce12['shift']());}catch(_0x44c382){_0x7dce12['push'](_0x7dce12['shift']());}}}(_0x3cbc,0x872a0));import{readHookInput}from'./output.js';function _0x3cbc(){const _0x2b13b0=['1809876OIFkji','XwMau','2046918UdFmFB','31458oUcACL','110LDbkjh','913340suMFTl','423906OHcLMs','5APlDcQ','153ooDNQs','1057434BeJFuJ','6870681xvJaAY','aJGXZ','112ddBqyM'];_0x3cbc=function(){return _0x2b13b0;};return _0x3cbc();}import{isSessionEnabled,hasSessionBeenPrompted,markSessionPrompted}from'../utils/sessionCache.js';const AUTO_PROMPT_TEXT='\x0a🚨\x20🚨\x20[ACTION\x20REQUIRED]\x20🚨\x20🚨\x0aBefore\x20responding\x20to\x20the\x20user\x27s\x20message,\x20consider\x20whether\x20this\x20task\x20will\x20involve\x20ANY\x20frontend,\x20UI,\x20or\x20browser\x20work.\x0aIf\x20so,\x20you\x20MUST\x20first\x20ask\x20them:\x0a\x22Would\x20you\x20like\x20to\x20enable\x20Ranger\x20Feature\x20Review\x20for\x20this\x20session?\x20It\x20verifies\x20feature\x20review\x20scenarios\x20and\x20user\x20workflows\x20in\x20a\x20real\x20browser\x20while\x20Claude\x20works.\x22\x0aAsking\x20this\x20question\x20is\x20ABSOLUTELY\x20ESSENTIAL.\x20DO\x20NOT\x20SKIP\x20THIS\x20STEP.\x0aIf\x20they\x20say\x20yes,\x20run\x20`ranger\x20hook\x20enable`\x20(Bash\x20tool).\x0aIf\x20they\x20say\x20no,\x20say\x20\x22Sounds\x20good.\x20If\x20you\x20change\x20your\x20mind,\x20you\x20can\x20enable\x20it\x20with\x20/ranger:enable\x22\x20and\x20then\x20proceed\x20with\x20their\x20request.\x0aThis\x20is\x20mandatory\x20—\x20do\x20not\x20skip\x20this\x20step.';export async function autoPrompt(){const _0x1fc82d=_0x315d,_0xd1b07a={'Lvdyw':function(_0xc87681){return _0xc87681();},'XwMau':function(_0x2aa69d,_0x161f22){return _0x2aa69d(_0x161f22);},'aJGXZ':function(_0x463f8d,_0x5bcc7c){return _0x463f8d(_0x5bcc7c);}},_0x43c884=await _0xd1b07a['Lvdyw'](readHookInput),_0x1cff0e=_0x43c884?.['session_id'];if(!_0x1cff0e)return;if(_0xd1b07a[_0x1fc82d(0x1fa)](isSessionEnabled,_0x1cff0e)||hasSessionBeenPrompted(_0x1cff0e))return;_0xd1b07a[_0x1fc82d(0x1f7)](markSessionPrompted,_0x1cff0e),console['log'](AUTO_PROMPT_TEXT);}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x48be51,_0x179a4e){const _0x4f223e=_0x1b19,_0x544328=_0x48be51();while(!![]){try{const _0x5b14f0=-parseInt(_0x4f223e(0x6d))/0x1*(parseInt(_0x4f223e(0x6e))/0x2)+-parseInt(_0x4f223e(0x70))/0x3*(parseInt(_0x4f223e(0x71))/0x4)+-parseInt(_0x4f223e(0x6c))/0x5+parseInt(_0x4f223e(0x76))/0x6*(-parseInt(_0x4f223e(0x69))/0x7)+parseInt(_0x4f223e(0x6f))/0x8+-parseInt(_0x4f223e(0x73))/0x9*(parseInt(_0x4f223e(0x68))/0xa)+parseInt(_0x4f223e(0x72))/0xb;if(_0x5b14f0===_0x179a4e)break;else _0x544328['push'](_0x544328['shift']());}catch(_0xc28046){_0x544328['push'](_0x544328['shift']());}}}(_0x1c8c,0x2ca42));import{disableSession,disableBranch,getCurrentBranch}from'../utils/sessionCache.js';import{printBlock}from'./output.js';function _0x1b19(_0x45a848,_0xd8c3cf){_0x45a848=_0x45a848-0x67;const _0x1c8cb1=_0x1c8c();let _0x1b19ca=_0x1c8cb1[_0x45a848];return _0x1b19ca;}function _0x1c8c(){const _0x33e7bd=['env','main','6lhUvOw','WiZTD','#\x20RANGER\x20DISABLED\x0a\x0aThe\x20user\x20has\x20expressly\x20disabled\x20Ranger\x20hooks\x20for\x20this\x20session','szOHp','3362060mcuJGN','1984675nkPBGS','\x20and\x20branch\x20\x27','dkPbK','189745lVYeKX','48oyGZGE','5708MJeyMM','2209936YFrbxW','36TmmHGh','106388hjVFRk','11224884bbSavq','9iYYVqY'];_0x1c8c=function(){return _0x33e7bd;};return _0x1c8c();}export async function disable(_0x38a340){const _0xb4b6a5=_0x1b19,_0x38d8aa={'dkPbK':function(_0x43f36a,_0x30dd82){return _0x43f36a(_0x30dd82);},'xrZBT':'master','WiZTD':function(_0x3571a1,_0x3c5d16){return _0x3571a1(_0x3c5d16);},'vZgUd':function(_0xa3ebbf,_0x302b2b){return _0xa3ebbf!==_0x302b2b;},'szOHp':_0xb4b6a5(0x75)},_0x12dc90=_0x38a340||process[_0xb4b6a5(0x74)]['CLAUDE_SESSION_ID']||'';_0x12dc90&&_0x38d8aa[_0xb4b6a5(0x6b)](disableSession,_0x12dc90);const _0x4a1119=getCurrentBranch();_0x4a1119&&_0x4a1119!==_0xb4b6a5(0x75)&&_0x4a1119!==_0x38d8aa['xrZBT']&&_0x38d8aa[_0xb4b6a5(0x77)](disableBranch,_0x4a1119),printBlock(_0xb4b6a5(0x78)+(_0x4a1119&&_0x38d8aa['vZgUd'](_0x4a1119,_0x38d8aa[_0xb4b6a5(0x67)])&&_0x4a1119!==_0x38d8aa['xrZBT']?_0xb4b6a5(0x6a)+_0x4a1119+'\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(_0x2fc110,_0x29dd2a){const _0x3bac22=_0xb488,_0x337956=_0x2fc110();while(!![]){try{const _0x319545=parseInt(_0x3bac22(0x161))/0x1+-parseInt(_0x3bac22(0x157))/0x2+-parseInt(_0x3bac22(0x164))/0x3*(parseInt(_0x3bac22(0x15b))/0x4)+parseInt(_0x3bac22(0x155))/0x5+parseInt(_0x3bac22(0x163))/0x6*(parseInt(_0x3bac22(0x156))/0x7)+-parseInt(_0x3bac22(0x15e))/0x8+parseInt(_0x3bac22(0x158))/0x9;if(_0x319545===_0x29dd2a)break;else _0x337956['push'](_0x337956['shift']());}catch(_0x1e1407){_0x337956['push'](_0x337956['shift']());}}}(_0x5b80,0xdbf26));function _0xb488(_0x4df0df,_0x58fb4a){_0x4df0df=_0x4df0df-0x154;const _0x5b8068=_0x5b80();let _0xb488d0=_0x5b8068[_0x4df0df];return _0xb488d0;}import{enableSession,getCurrentBranch}from'../utils/sessionCache.js';import{getToken}from'../utils/keychain.js';import{getRangerSkillContent}from'../utils/skillContent.js';import{printBlock}from'./output.js';function _0x5b80(){const _0x5d6bb7=['9123HwiDgx','`\x0a\x0aA\x20browser\x20will\x20open\x20for\x20authentication.\x20A\x20human\x20needs\x20to\x20complete\x20the\x20login.\x0a','\x0a\x0a**For\x20ANY\x20UI\x20work,\x20you\x20MUST\x20use\x20the\x20/ranger\x20skill.**\x0a\x0a','189940fbuuzm','4564798kbVKXN','1721078dMfPlE','8653608ZjdAmi','Restart\x20your\x20OpenCode\x20session\x20after\x20setup.','KLjwc','100lLXHSY','ptQSU','master','11022632fQkRql','FWCsL','ranger\x20setup\x20--opencode','1563681ODOFoJ','env','6UxPCzF'];_0x5b80=function(){return _0x5d6bb7;};return _0x5b80();}import{update}from'../update.js';export async function enable(_0x5ebb64){const _0x3b7669=_0xb488,_0x4e4c50={'ptQSU':function(_0x457a15,_0x56efa2){return _0x457a15(_0x56efa2);},'aUZCO':'ranger\x20setup','KLjwc':function(_0xf790c8,_0x1006aa){return _0xf790c8(_0x1006aa);},'FWCsL':function(_0x1a922a){return _0x1a922a();},'yTYVW':'main','opila':_0x3b7669(0x15d),'OXyux':function(_0x5f5c05){return _0x5f5c05();}},_0x524489=_0x5ebb64||process[_0x3b7669(0x162)]['CLAUDE_SESSION_ID']||'',_0xba2ae5=_0x4e4c50[_0x3b7669(0x15c)](Boolean,_0x5ebb64),_0x1414c1=await getToken();if(!_0x1414c1){const _0x1352e9=_0xba2ae5?_0x3b7669(0x160):_0x4e4c50['aUZCO'],_0xdcbc63=_0xba2ae5?_0x3b7669(0x159):'Restart\x20your\x20Claude\x20Code\x20session\x20after\x20setup.';_0x4e4c50[_0x3b7669(0x15a)](printBlock,'#\x20RANGER\x20SETUP\x20REQUIRED\x0a\x0aThe\x20Ranger\x20CLI\x20is\x20not\x20configured.\x20To\x20get\x20started:\x0a\x0a1.\x20Install:\x20`npm\x20install\x20-g\x20@ranger-testing/ranger-cli`\x0a2.\x20Run:\x20`'+_0x1352e9+_0x3b7669(0x165)+_0xdcbc63);return;}try{await update();}catch{}_0x524489&&_0x4e4c50['ptQSU'](enableSession,_0x524489);const _0x5e343c=_0x4e4c50[_0x3b7669(0x15f)](getCurrentBranch),_0x27a54c=_0x5e343c&&_0x5e343c!==_0x4e4c50['yTYVW']&&_0x5e343c!==_0x4e4c50['opila']?'\x0a\x0a**Branch\x20\x27'+_0x5e343c+'\x27\x20is\x20now\x20enabled**\x20-\x20Ranger\x20will\x20stay\x20active\x20on\x20this\x20branch\x20across\x20sessions.':'',_0xf2c1fc=_0x4e4c50['OXyux'](getRangerSkillContent);printBlock('#\x20RANGER\x20ENABLED'+_0x27a54c+_0x3b7669(0x154)+_0xf2c1fc+'\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(_0x2f3b16,_0x3895f6){const _0x2057ef=_0x463b,_0x42e739=_0x2f3b16();while(!![]){try{const _0x2070cb=parseInt(_0x2057ef(0x1ca))/0x1*(parseInt(_0x2057ef(0x1cc))/0x2)+-parseInt(_0x2057ef(0x1d1))/0x3+parseInt(_0x2057ef(0x1d0))/0x4*(parseInt(_0x2057ef(0x1c9))/0x5)+-parseInt(_0x2057ef(0x1c7))/0x6*(parseInt(_0x2057ef(0x1cf))/0x7)+-parseInt(_0x2057ef(0x1cb))/0x8*(parseInt(_0x2057ef(0x1c8))/0x9)+-parseInt(_0x2057ef(0x1ce))/0xa+parseInt(_0x2057ef(0x1cd))/0xb;if(_0x2070cb===_0x3895f6)break;else _0x42e739['push'](_0x42e739['shift']());}catch(_0x5002c0){_0x42e739['push'](_0x42e739['shift']());}}}(_0x6762,0x78b2b));function _0x6762(){const _0x5897d4=['7567479qWiOqD','192145nqnHQf','6tfLnRL','8faWbrX','195506AxbZnK','9108649Epvjuj','137080ayGVtK','7HAbvFD','12uycwpa','394269orVtbo','297138WANmgZ'];_0x6762=function(){return _0x5897d4;};return _0x6762();}import{printBlock,getEnabledSessionId}from'./output.js';function _0x463b(_0x5157be,_0x2196f8){_0x5157be=_0x5157be-0x1c7;const _0x676257=_0x6762();let _0x463b90=_0x676257[_0x5157be];return _0x463b90;}export async function exitPlanMode(_0x51156a){const _0x3e3a44=await getEnabledSessionId(_0x51156a);if(!_0x3e3a44)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(_0x5634db,_0x2a63d3){var _0x2c6181=_0xdf67,_0x1f1755=_0x5634db();while(!![]){try{var _0x27e76b=-parseInt(_0x2c6181(0xd5))/0x1+-parseInt(_0x2c6181(0xdb))/0x2*(-parseInt(_0x2c6181(0xd9))/0x3)+parseInt(_0x2c6181(0xde))/0x4+parseInt(_0x2c6181(0xdc))/0x5*(parseInt(_0x2c6181(0xd8))/0x6)+-parseInt(_0x2c6181(0xd6))/0x7+-parseInt(_0x2c6181(0xda))/0x8+-parseInt(_0x2c6181(0xd7))/0x9*(-parseInt(_0x2c6181(0xdd))/0xa);if(_0x27e76b===_0x2a63d3)break;else _0x1f1755['push'](_0x1f1755['shift']());}catch(_0x3931b0){_0x1f1755['push'](_0x1f1755['shift']());}}}(_0x59ce,0x64c66));function _0x59ce(){var _0x426447=['4662642eLcOEa','386448cnVkhV','1264656evHsbw','4JnebPv','5OxdSnd','2690zvAyUa','1779512oThLBn','329066GGjljP','4722564pkdSDh','3177ABoJuz'];_0x59ce=function(){return _0x426447;};return _0x59ce();}export{sessionStart}from'./sessionStart.js';export{sessionEnd}from'./sessionEnd.js';export{preCompact}from'./preCompact.js';export{postEdit}from'./postEdit.js';export{planStart}from'./planStart.js';export{planReminder}from'./planReminder.js';export{exitPlanMode}from'./exitPlanMode.js';function _0xdf67(_0x4753f2,_0x2fbf1a){_0x4753f2=_0x4753f2-0xd5;var _0x59cecc=_0x59ce();var _0xdf6768=_0x59cecc[_0x4753f2];return _0xdf6768;}export{stopHook}from'./stopHook.js';export{enable}from'./enable.js';export{disable}from'./disable.js';export{autoPrompt}from'./autoPrompt.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x3f03f6,_0x230548){const _0x4315a0=_0x4cc8,_0x353eb1=_0x3f03f6();while(!![]){try{const _0x43bb36=parseInt(_0x4315a0(0xda))/0x1+-parseInt(_0x4315a0(0xdb))/0x2+-parseInt(_0x4315a0(0xd6))/0x3*(parseInt(_0x4315a0(0xd5))/0x4)+parseInt(_0x4315a0(0xd3))/0x5+-parseInt(_0x4315a0(0xd9))/0x6*(parseInt(_0x4315a0(0xdd))/0x7)+parseInt(_0x4315a0(0xdc))/0x8*(-parseInt(_0x4315a0(0xdf))/0x9)+parseInt(_0x4315a0(0xe0))/0xa;if(_0x43bb36===_0x230548)break;else _0x353eb1['push'](_0x353eb1['shift']());}catch(_0x199a30){_0x353eb1['push'](_0x353eb1['shift']());}}}(_0x5707,0x33e9d));function _0x4cc8(_0x4cb780,_0x17c701){_0x4cb780=_0x4cb780-0xd3;const _0x570733=_0x5707();let _0x4cc8d3=_0x570733[_0x4cb780];return _0x4cc8d3;}import{isSessionEnabled}from'../utils/sessionCache.js';export function printBlock(_0x54ec7a){const _0x7c2e7c=_0x4cc8;console[_0x7c2e7c(0xd8)](_0x54ec7a);}export async function readHookInput(){const _0x12e6fa=_0x4cc8;let _0x445510='';try{for await(const _0x42c316 of process[_0x12e6fa(0xd7)]){_0x445510+=_0x42c316;}}catch{return null;}if(!_0x445510['trim']())return null;try{return JSON['parse'](_0x445510);}catch{return null;}}export async function getEnabledSessionId(_0x1a8794){const _0xaade58=_0x4cc8,_0x1517b8={'AaFqj':function(_0x4f3e0f,_0x528433){return _0x4f3e0f(_0x528433);},'NAOpO':function(_0x29ab02){return _0x29ab02();}};if(_0x1a8794)return _0x1517b8[_0xaade58(0xd4)](isSessionEnabled,_0x1a8794)?_0x1a8794:null;const _0x5b2880=await _0x1517b8['NAOpO'](readHookInput),_0x26b855=_0x5b2880?.[_0xaade58(0xde)];if(!_0x26b855||!isSessionEnabled(_0x26b855))return null;return _0x26b855;}function _0x5707(){const _0x5cbbef=['36uGGOBm','7391340HzMLHt','1686550lyXpGr','AaFqj','4jmYdnS','504291eQOAsY','stdin','log','1674174AQPaub','59289eStrel','787548pduFrM','164392IFVjua','7vRnTqp','session_id'];_0x5707=function(){return _0x5cbbef;};return _0x5707();}export async function getEnabledHookContext(_0x349609){const _0x5a5058=_0x4cc8,_0x56d2db={'lVnbC':function(_0x49ec46){return _0x49ec46();}};if(_0x349609){if(!isSessionEnabled(_0x349609))return null;return{'sessionId':_0x349609,'input':{'session_id':_0x349609}};}const _0x836632=await _0x56d2db['lVnbC'](readHookInput),_0x1578e0=_0x836632?.[_0x5a5058(0xde)];if(!_0x1578e0||!isSessionEnabled(_0x1578e0))return null;return{'sessionId':_0x1578e0,'input':_0x836632};}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x549fd1,_0x16c795){const _0xf7bf1a=_0x2284,_0x24dc22=_0x549fd1();while(!![]){try{const _0x537d2f=-parseInt(_0xf7bf1a(0x133))/0x1*(parseInt(_0xf7bf1a(0x129))/0x2)+-parseInt(_0xf7bf1a(0x12d))/0x3+parseInt(_0xf7bf1a(0x12b))/0x4*(parseInt(_0xf7bf1a(0x134))/0x5)+parseInt(_0xf7bf1a(0x12c))/0x6+-parseInt(_0xf7bf1a(0x131))/0x7+parseInt(_0xf7bf1a(0x12e))/0x8*(parseInt(_0xf7bf1a(0x12f))/0x9)+-parseInt(_0xf7bf1a(0x132))/0xa*(parseInt(_0xf7bf1a(0x130))/0xb);if(_0x537d2f===_0x16c795)break;else _0x24dc22['push'](_0x24dc22['shift']());}catch(_0x145194){_0x24dc22['push'](_0x24dc22['shift']());}}}(_0x5701,0x280e0));function _0x2284(_0x386701,_0x36bfd9){_0x386701=_0x386701-0x129;const _0x57019e=_0x5701();let _0x2284bc=_0x57019e[_0x386701];return _0x2284bc;}import{printBlock,getEnabledHookContext}from'./output.js';import{shouldShowPlanReminder}from'../utils/sessionCache.js';export async function planReminder(_0x4f2efc){const _0x3542fb=_0x2284,_0xe01b0f={'ZHRnt':function(_0x304343,_0x1c019b){return _0x304343(_0x1c019b);},'HNvKg':function(_0x4032cd,_0x255331){return _0x4032cd!==_0x255331;}},_0x31489f=await _0xe01b0f['ZHRnt'](getEnabledHookContext,_0x4f2efc);if(!_0x31489f)return;if(_0xe01b0f[_0x3542fb(0x135)](_0x31489f['input']['permission_mode'],'plan'))return;if(!_0xe01b0f[_0x3542fb(0x136)](shouldShowPlanReminder,_0x31489f['sessionId']))return;printBlock(_0x3542fb(0x12a));}function _0x5701(){const _0x543841=['124168xRkTAg','1657218PtJxEC','214032DvBhBn','1994776xvFkSe','9BETSzK','517VpzVZD','1812419DxFodQ','10610JLZJBD','21721WldSGX','10gzNyfu','HNvKg','ZHRnt','4ZZRHAr','===\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==='];_0x5701=function(){return _0x543841;};return _0x5701();}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
function
|
|
1
|
+
function _0x3157(){const _0x475a61=['3599340vITDPN','3KuAhoS','8PVFhMz','1326KRCIzx','5315HyadRk','113054vADcMp','11741730SljXEE','2368872vROSfF','===\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===','13gezkJX','27ShXoHq','2920610JFhjmJ','487156wyVMnN','NJWMf','30aPtlgw'];_0x3157=function(){return _0x475a61;};return _0x3157();}(function(_0x403943,_0x344696){const _0x183b03=_0x5446,_0x6836a8=_0x403943();while(!![]){try{const _0x34cc7e=-parseInt(_0x183b03(0x1a0))/0x1*(-parseInt(_0x183b03(0x195))/0x2)+parseInt(_0x183b03(0x19a))/0x3*(-parseInt(_0x183b03(0x19c))/0x4)+parseInt(_0x183b03(0x1a3))/0x5*(-parseInt(_0x183b03(0x1a2))/0x6)+-parseInt(_0x183b03(0x19b))/0x7*(parseInt(_0x183b03(0x1a1))/0x8)+-parseInt(_0x183b03(0x197))/0x9*(-parseInt(_0x183b03(0x19e))/0xa)+parseInt(_0x183b03(0x196))/0xb+-parseInt(_0x183b03(0x19f))/0xc*(-parseInt(_0x183b03(0x199))/0xd);if(_0x34cc7e===_0x344696)break;else _0x6836a8['push'](_0x6836a8['shift']());}catch(_0x18fa7e){_0x6836a8['push'](_0x6836a8['shift']());}}}(_0x3157,0x8d316));import{printBlock,getEnabledSessionId}from'./output.js';function _0x5446(_0xba1e98,_0x194c31){_0xba1e98=_0xba1e98-0x195;const _0x3157d5=_0x3157();let _0x544640=_0x3157d5[_0xba1e98];return _0x544640;}export async function planStart(_0x229543){const _0xd9e4a8=_0x5446,_0x403800={'BRlFH':function(_0x41ff0b,_0x1765a8){return _0x41ff0b(_0x1765a8);},'NJWMf':function(_0x279ab7,_0x4bf82d){return _0x279ab7(_0x4bf82d);}},_0x1f9c29=await _0x403800['BRlFH'](getEnabledSessionId,_0x229543);if(!_0x1f9c29)return;_0x403800[_0xd9e4a8(0x19d)](printBlock,_0xd9e4a8(0x198));}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
(function(_0x40354a,_0xc753f7){const _0xe70be7=_0x3a1c,_0x1e0bf4=_0x40354a();while(!![]){try{const _0x51c442=parseInt(_0xe70be7(0x13d))/0x1+-parseInt(_0xe70be7(0x13a))/0x2+-parseInt(_0xe70be7(0x13c))/0x3+parseInt(_0xe70be7(0x136))/0x4*(-parseInt(_0xe70be7(0x140))/0x5)+-parseInt(_0xe70be7(0x137))/0x6+parseInt(_0xe70be7(0x13b))/0x7+parseInt(_0xe70be7(0x139))/0x8;if(_0x51c442===_0xc753f7)break;else _0x1e0bf4['push'](_0x1e0bf4['shift']());}catch(_0x1b3374){_0x1e0bf4['push'](_0x1e0bf4['shift']());}}}(_0x40e6,0x80cb6));import{getSessionEntry,updateBranchTracking}from'../utils/sessionCache.js';import{getToken}from'../utils/keychain.js';import{getEnabledSessionId}from'./output.js';export async function postEdit(_0x463985){const _0x2a56b0=_0x3a1c,_0x54bbdb={'YkDsL':function(_0x5d8ad7,_0xe71066){return _0x5d8ad7(_0xe71066);},'iyxVS':_0x2a56b0(0x13f)},_0x33ee69=await getEnabledSessionId(_0x463985);if(!_0x33ee69)return;updateBranchTracking(_0x33ee69);const _0x5ae216=await getToken();if(!_0x5ae216)return;const _0x26d331=_0x54bbdb[_0x2a56b0(0x142)](getSessionEntry,_0x33ee69);if(_0x26d331){const _0x17739a={'hookSpecificOutput':{'hookEventName':'PostToolUse','additionalContext':_0x2a56b0(0x138)}};console['log'](JSON[_0x2a56b0(0x141)](_0x17739a));return;}const _0x578f92={'hookSpecificOutput':{'hookEventName':_0x54bbdb['iyxVS'],'additionalContext':_0x2a56b0(0x13e)}};console[_0x2a56b0(0x135)](JSON[_0x2a56b0(0x141)](_0x578f92));}function _0x3a1c(_0x299b09,_0x30ed8e){_0x299b09=_0x299b09-0x135;const _0x40e600=_0x40e6();let _0x3a1c3b=_0x40e600[_0x299b09];return _0x3a1c3b;}function _0x40e6(){const _0x40128f=['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).','20199896FcuIjw','2035488JdstBO','2017603SjtOdP','1023438nUiHbh','467455xERzEO','RANGER:\x20If\x20this\x20is\x20for\x20a\x20UI\x20feature,\x20you\x20MUST\x20use\x20/ranger\x20to\x20either\x20create\x20a\x20new\x20feature\x20review\x20or\x20resume\x20an\x20existing\x20one.','PostToolUse','100tnOJLb','stringify','YkDsL','log','75364rIENaU','6104514lzueqf'];_0x40e6=function(){return _0x40128f;};return _0x40e6();}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
(function(_0x10f094,_0x927813){const _0x105833=_0x3934,_0x58a633=_0x10f094();while(!![]){try{const _0x3c51bb=parseInt(_0x105833(0x190))/0x1*(parseInt(_0x105833(0x199))/0x2)+parseInt(_0x105833(0x198))/0x3*(parseInt(_0x105833(0x196))/0x4)+parseInt(_0x105833(0x18e))/0x5+parseInt(_0x105833(0x193))/0x6+-parseInt(_0x105833(0x192))/0x7*(parseInt(_0x105833(0x18f))/0x8)+-parseInt(_0x105833(0x194))/0x9*(-parseInt(_0x105833(0x191))/0xa)+-parseInt(_0x105833(0x19a))/0xb;if(_0x3c51bb===_0x927813)break;else _0x58a633['push'](_0x58a633['shift']());}catch(_0x3dda47){_0x58a633['push'](_0x58a633['shift']());}}}(_0x157e,0x9ec11));import{getToken}from'../utils/keychain.js';function _0x3934(_0x2a7736,_0x38fc38){_0x2a7736=_0x2a7736-0x18e;const _0x157e0a=_0x157e();let _0x39346c=_0x157e0a[_0x2a7736];return _0x39346c;}import{printBlock,getEnabledSessionId}from'./output.js';export async function preCompact(_0x27cd90){const _0x340202=_0x3934,_0x2afc83={'ljSOS':function(_0x551149,_0x48cab7){return _0x551149(_0x48cab7);},'LIoNm':function(_0x1ec6bd){return _0x1ec6bd();}},_0x3e4554=await _0x2afc83[_0x340202(0x197)](getEnabledSessionId,_0x27cd90);if(!_0x3e4554)return;try{const _0x5f40f1=await _0x2afc83['LIoNm'](getToken);if(!_0x5f40f1)return;printBlock(_0x340202(0x195));}catch{}}function _0x157e(){const _0x283dc8=['4383463goBDPJ','1744440gRtybH','639ygjzLJ','===\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`.','3398396JdUwSp','ljSOS','3qYOEED','4XTlOpE','25303058njeTbD','5416240qssmBK','16mNuMbl','558358mKMxiv','121500fPPmll'];_0x157e=function(){return _0x283dc8;};return _0x157e();}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
(function(_0x3e2ab1,_0x3b1dfc){const _0x329b29=_0x5cc8,_0x9df6ff=_0x3e2ab1();while(!![]){try{const _0x2e8293=-parseInt(_0x329b29(0x1ab))/0x1*(-parseInt(_0x329b29(0x1a9))/0x2)+parseInt(_0x329b29(0x1a3))/0x3+-parseInt(_0x329b29(0x1a4))/0x4+-parseInt(_0x329b29(0x19f))/0x5*(parseInt(_0x329b29(0x1a7))/0x6)+-parseInt(_0x329b29(0x1a1))/0x7*(-parseInt(_0x329b29(0x1a8))/0x8)+-parseInt(_0x329b29(0x1a2))/0x9*(-parseInt(_0x329b29(0x1a6))/0xa)+parseInt(_0x329b29(0x1a0))/0xb*(parseInt(_0x329b29(0x1a5))/0xc);if(_0x2e8293===_0x3b1dfc)break;else _0x9df6ff['push'](_0x9df6ff['shift']());}catch(_0x15ab98){_0x9df6ff['push'](_0x9df6ff['shift']());}}}(_0x43e0,0x7915c));import{isSessionEnabled,recordEnabledSessionCleared}from'../utils/sessionCache.js';import{readHookInput}from'./output.js';function _0x5cc8(_0x49306c,_0x61b379){_0x49306c=_0x49306c-0x19e;const _0x43e004=_0x43e0();let _0x5cc8e4=_0x43e004[_0x49306c];return _0x5cc8e4;}export async function sessionEnd(_0x395649){const _0x5667c5=_0x5cc8,_0x35a725={'aiQew':function(_0x5f5224,_0x636e7b){return _0x5f5224(_0x636e7b);}},_0x43ae27=process['env']['CLAUDE_SESSION_ID'];let _0x25c945=_0x395649,_0x4e9eee;if(!_0x395649){if(_0x43ae27&&!isSessionEnabled(_0x43ae27))return;const _0x53fc95=await readHookInput();_0x25c945=_0x53fc95?.[_0x5667c5(0x1aa)]||_0x43ae27,_0x4e9eee=_0x53fc95?.['reason'];}if(!_0x25c945)return;_0x4e9eee===_0x5667c5(0x19e)&&_0x35a725['aiQew'](recordEnabledSessionCleared,_0x25c945);}function _0x43e0(){const _0x243321=['1637343HMrpkB','305022ToVvPT','3294332rMlYPp','4992CbxQou','30wwEXRQ','6QnxDDe','6152WOKTTu','12nqkrLo','session_id','37270VUIJwS','clear','4049110yYNgzO','19811dNGJwg','4634NMSOZt'];_0x43e0=function(){return _0x243321;};return _0x43e0();}
|