@ranger-testing/ranger-cli 2.5.1 → 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
|
-
(function(_0xe6b822,_0x59bb4f){const _0x3fe67d=_0xbe20,_0x366d32=_0xe6b822();while(!![]){try{const _0x3eb149=parseInt(_0x3fe67d(0x1d9))/0x1*(parseInt(_0x3fe67d(0x137))/0x2)+parseInt(_0x3fe67d(0x12f))/0x3+-parseInt(_0x3fe67d(0x1ee))/0x4*(-parseInt(_0x3fe67d(0x1a6))/0x5)+-parseInt(_0x3fe67d(0x1b6))/0x6+-parseInt(_0x3fe67d(0x1b2))/0x7+-parseInt(_0x3fe67d(0x1db))/0x8+parseInt(_0x3fe67d(0x1a5))/0x9;if(_0x3eb149===_0x59bb4f)break;else _0x366d32['push'](_0x366d32['shift']());}catch(_0x13021b){_0x366d32['push'](_0x366d32['shift']());}}}(_0x2fda,0xd57cd));import{readFile,writeFile,mkdir}from'fs/promises';import{join}from'path';import{existsSync}from'fs';import{execSync}from'child_process';import _0x19ec59 from'inquirer';import{createFeature,listFeatures,getFeature,updateFeature,getFeatureReport,getFeatureReportMarkdown,listFeatureSessions,startSession,concludeSession,createChecklistItem,getActionItems,getItemFeedback,softDeleteFeature,restoreFeature,updateChecklistItem}from'./utils/featureApi.js';import{getBrowserSessionSteps}from'./utils/browserSessionsApi.js';import{getApiBaseUrl}from'./utils/environment.js';import{getRangerDir}from'./utils/rangerRoot.js';import{registerSession}from'./utils/sessionCache.js';import{getEnvNames}from'./env.js';import{formatProfileRequiredMessage}from'./utils/profileMessages.js';const ACTIVE_FEATURE_FILE='active-feature.txt',bold=_0x3d65ae=>'\x1b[1m'+_0x3d65ae+'\x1b[0m';function _0xbe20(_0x4d4d78,_0x4b6947){_0x4d4d78=_0x4d4d78-0x128;const _0x2fdabb=_0x2fda();let _0xbe20cf=_0x2fdabb[_0x4d4d78];return _0xbe20cf;}function getGitRepoUrl(){const _0x77975b=_0xbe20,_0x266a43={'bOrwF':function(_0x3245da,_0x36f148,_0x2938f5){return _0x3245da(_0x36f148,_0x2938f5);},'trFLy':_0x77975b(0x159),'qBmlq':_0x77975b(0x1f3)};try{const _0x574f3d=_0x266a43[_0x77975b(0x18e)](execSync,_0x266a43['trFLy'],{'encoding':_0x77975b(0x1d5),'stdio':[_0x266a43['qBmlq'],_0x266a43[_0x77975b(0x1ab)],_0x77975b(0x1f3)]})[_0x77975b(0x180)]();return _0x574f3d['replace'](/\.git$/,'')['replace'](/^git@github\.com:/,'github.com/')['replace'](/^https?:\/\//,'');}catch{return undefined;}}function getGitBranch(){const _0x3fccc8=_0xbe20,_0x5d0e0d={'ctPXE':function(_0x36a0ec,_0xcc6a12,_0x146771){return _0x36a0ec(_0xcc6a12,_0x146771);},'wPaQP':'pipe'};try{return _0x5d0e0d[_0x3fccc8(0x13e)](execSync,_0x3fccc8(0x12d),{'encoding':'utf-8','stdio':[_0x5d0e0d['wPaQP'],_0x3fccc8(0x1f3),_0x5d0e0d['wPaQP']]})[_0x3fccc8(0x180)]();}catch{return undefined;}}export async function getActiveFeatureId(){const _0x5a2db0=_0xbe20,_0x2b1e34=join(getRangerDir(),ACTIVE_FEATURE_FILE);if(!existsSync(_0x2b1e34))return null;try{const _0x4b235d=await readFile(_0x2b1e34,_0x5a2db0(0x1d5));return _0x4b235d['trim']()||null;}catch{return null;}}async function setActiveFeatureId(_0x1df752){const _0x2eb3c8={'LFZLy':function(_0x15f835,_0x2e7af3){return _0x15f835(_0x2e7af3);}},_0x1f0fd5=getRangerDir(),_0x3e59d4=join(_0x1f0fd5,ACTIVE_FEATURE_FILE);!_0x2eb3c8['LFZLy'](existsSync,_0x1f0fd5)&&await mkdir(_0x1f0fd5,{'recursive':!![]}),await writeFile(_0x3e59d4,_0x1df752,'utf-8');}function getProgressDisplay(_0x39f99e){const _0x429436=_0xbe20,_0x13f850={'QJeiG':function(_0x33f708,_0x1f0b6d){return _0x33f708+_0x1f0b6d;},'VqabE':function(_0x59fb2f,_0x5e94ad){return _0x59fb2f*_0x5e94ad;},'nWhPa':function(_0x1ac8de,_0x806c18){return _0x1ac8de/_0x806c18;},'WLVVk':function(_0x5cca1c,_0x289bef){return _0x5cca1c-_0x289bef;},'exgFi':function(_0x46b236,_0x14bd76){return _0x46b236>_0x14bd76;},'zcwwi':function(_0x29d220,_0x3991b3){return _0x29d220>_0x3991b3;}},_0x9e980d=_0x39f99e['verifiedItems']||0x0,_0x5b21a0=_0x39f99e['verificationInProgressItems']||0x0,_0x16bb99=_0x39f99e['blockedItems']||0x0,_0x15164e=_0x39f99e[_0x429436(0x192)]||0x0,_0x4abf8c=_0x39f99e['pendingItems']||0x0,_0x363d15=_0x13f850[_0x429436(0x186)](_0x13f850['QJeiG'](_0x9e980d+_0x5b21a0+_0x16bb99,_0x15164e),_0x4abf8c);if(_0x363d15===0x0)return'-';const _0x3e291b=0xa,_0x26009b=Math[_0x429436(0x12c)](_0x13f850[_0x429436(0x189)](_0x13f850['nWhPa'](_0x9e980d,_0x363d15),_0x3e291b)),_0x16e5f3=_0x13f850['QJeiG']('█'['repeat'](_0x26009b),'░'[_0x429436(0x19d)](_0x13f850['WLVVk'](_0x3e291b,_0x26009b))),_0x3b0880=[];if(_0x13f850[_0x429436(0x12e)](_0x16bb99,0x0))_0x3b0880[_0x429436(0x174)](_0x16bb99+_0x429436(0x175));if(_0x15164e>0x0)_0x3b0880['push'](_0x15164e+_0x429436(0x1e2));if(_0x5b21a0>0x0)_0x3b0880['push'](_0x5b21a0+_0x429436(0x1a2));const _0x32ac2c=_0x13f850[_0x429436(0x1de)](_0x3b0880[_0x429436(0x1bb)],0x0)?'\x20('+_0x3b0880['join'](',\x20')+')':'';return _0x16e5f3+'\x20'+_0x9e980d+'/'+_0x363d15+'\x20verified'+_0x32ac2c;}function getCurrentSessionItems(_0x3a66dd,_0xaa33dc){const _0x2df6f0=_0xbe20;if(!_0x3a66dd[_0x2df6f0(0x197)])return _0xaa33dc['filter'](_0x4779f7=>!_0x4779f7['sessionId']);return _0xaa33dc['filter'](_0x4962b9=>_0x4962b9[_0x2df6f0(0x181)]===_0x3a66dd['currentSessionId']||!_0x4962b9['sessionId']);}function displayFeature(_0x5a000a,_0x11e19c){const _0x1a6a45=_0xbe20,_0x5ae336={'nKnpR':function(_0x1ab022,_0x125d30){return _0x1ab022<_0x125d30;},'xTmgr':function(_0x100ce1,_0x12c577){return _0x100ce1===_0x12c577;},'nvzIP':'approved','IujmJ':'verified','bGrJL':function(_0x2ff2b1,_0x438ed5){return _0x2ff2b1===_0x438ed5;},'gHPFM':'closed','kNCPb':_0x1a6a45(0x147),'ZrYvR':function(_0x1561ea,_0x512c7d){return _0x1561ea!==_0x512c7d;},'kwRrB':function(_0x53079c,_0x40748d){return _0x53079c+_0x40748d;},'RPLbx':function(_0x49bdc6,_0x43b51c){return _0x49bdc6===_0x43b51c;},'fWEjC':'incomplete','dOqGL':function(_0x1fccf5,_0x2970e5){return _0x1fccf5===_0x2970e5;},'ndPcR':function(_0x4ab203,_0x14ef79){return _0x4ab203===_0x14ef79;}};console['log']('\x0a'+_0x5a000a['name']+'\x20('+_0x5a000a['dashboardUrl']+')');_0x5a000a[_0x1a6a45(0x1f0)]&&console['log'](_0x1a6a45(0x187)+getProgressDisplay(_0x5a000a[_0x1a6a45(0x1f0)]));_0x5a000a['description']&&console['log']('\x20\x20\x20Description:\x20'+_0x5a000a[_0x1a6a45(0x1c6)]);_0x5a000a[_0x1a6a45(0x17e)]&&console[_0x1a6a45(0x15b)]('\x20\x20\x20Repository:\x20'+_0x5a000a[_0x1a6a45(0x17e)]);_0x5a000a[_0x1a6a45(0x156)]&&console['log'](_0x1a6a45(0x139)+_0x5a000a['gitBranch']);console['log']('\x20\x20\x20Created:\x20'+new Date(_0x5a000a[_0x1a6a45(0x148)])[_0x1a6a45(0x138)]());_0x5a000a['completedAt']&&console[_0x1a6a45(0x15b)]('\x20\x20\x20Completed:\x20'+new Date(_0x5a000a['completedAt'])['toLocaleString']());if(_0x11e19c&&_0x11e19c['length']>0x0){console[_0x1a6a45(0x15b)]('\x0a\x20\x20\x20Scenarios:');for(let _0x573718=0x0;_0x5ae336[_0x1a6a45(0x18a)](_0x573718,_0x11e19c['length']);_0x573718++){const _0x51db8=_0x11e19c[_0x573718];let _0x42350e;if(_0x5ae336[_0x1a6a45(0x1f5)](_0x51db8['status'],_0x1a6a45(0x1ac))&&_0x51db8['terminalReason']===_0x5ae336[_0x1a6a45(0x1c4)])_0x42350e='✅';else{if(_0x5ae336['xTmgr'](_0x51db8['status'],_0x5ae336[_0x1a6a45(0x1d7)]))_0x42350e='🟢';else{if(_0x51db8['status']==='incomplete')_0x42350e='🟠';else{if(_0x5ae336['bGrJL'](_0x51db8[_0x1a6a45(0x130)],_0x1a6a45(0x198)))_0x42350e='🛑';else{if(_0x51db8['status']===_0x5ae336['gHPFM'])_0x42350e='⛔';else _0x51db8[_0x1a6a45(0x130)]===_0x5ae336[_0x1a6a45(0x1e3)]?_0x42350e='⏳':_0x42350e='⬜';}}}}const _0x42f931=_0x51db8['version']>0x1?'\x20(v'+_0x51db8['version']+')':'',_0x52e8f2=_0x51db8[_0x1a6a45(0x1c0)]>0x1&&_0x51db8['parentItemId']&&_0x5ae336[_0x1a6a45(0x14d)](_0x51db8[_0x1a6a45(0x130)],_0x5ae336['gHPFM'])&&_0x5ae336[_0x1a6a45(0x14d)](_0x51db8['status'],_0x1a6a45(0x16c))?_0x1a6a45(0x154):'';console[_0x1a6a45(0x15b)](_0x1a6a45(0x183)+_0x5ae336[_0x1a6a45(0x16b)](_0x573718,0x1)+'.\x20'+_0x42350e+'\x20'+_0x51db8['description']+_0x42f931+_0x52e8f2);_0x5ae336[_0x1a6a45(0x1ed)](_0x51db8['status'],_0x1a6a45(0x198))&&_0x51db8['blockedReason']&&console['log'](_0x1a6a45(0x1e5)+_0x51db8[_0x1a6a45(0x193)]);_0x5ae336[_0x1a6a45(0x12b)](_0x51db8[_0x1a6a45(0x130)],_0x5ae336['fWEjC'])&&_0x51db8['incompleteReason']&&console['log'](_0x1a6a45(0x1e6)+_0x51db8['incompleteReason']);if(_0x5ae336['RPLbx'](_0x51db8['status'],_0x1a6a45(0x1ac))&&_0x5ae336[_0x1a6a45(0x18f)](_0x51db8['terminalReason'],_0x1a6a45(0x1df)))console[_0x1a6a45(0x15b)]('\x20\x20\x20\x20\x20\x20Approved');else _0x5ae336['ndPcR'](_0x51db8[_0x1a6a45(0x130)],_0x1a6a45(0x1ac))&&_0x51db8[_0x1a6a45(0x1dd)]&&console['log'](_0x1a6a45(0x1ba)+_0x51db8[_0x1a6a45(0x1dd)]);}}}export async function featureCreate(_0xb04a1a,_0x16b770){const _0x5da3f0=_0xbe20,_0x2c68d5={'CKFVF':function(_0x4140a4,_0x25a62){return _0x4140a4===_0x25a62;},'cJQgi':function(_0x3b1a82,_0x2c9421){return _0x3b1a82(_0x2c9421);},'BUGWP':function(_0x3998e8,_0x437403){return _0x3998e8(_0x437403);},'sstTR':function(_0x205582,_0x12da9c,_0x2c968b){return _0x205582(_0x12da9c,_0x2c968b);}},{envNames:_0x3c2ca9}=await getEnvNames();_0x2c68d5[_0x5da3f0(0x168)](_0x3c2ca9['length'],0x0)&&console['warn']('\x0a'+formatProfileRequiredMessage(_0xfabc45=>bold(_0xfabc45)));const _0x2ebfe7=_0x16b770[_0x5da3f0(0x177)]?_0x16b770[_0x5da3f0(0x177)][_0x5da3f0(0x13f)](_0x48d084=>_0x48d084['trim']()):[],_0x3dec3e=getGitRepoUrl(),_0x12b3b0=getGitBranch();console['log'](_0x5da3f0(0x1d6));const _0x5919cf=await _0x2c68d5[_0x5da3f0(0x13d)](createFeature,{'name':_0xb04a1a,'description':_0x16b770[_0x5da3f0(0x1c6)],'checklist':_0x2ebfe7,'gitRepoUrl':_0x3dec3e,'gitBranch':_0x12b3b0});await _0x2c68d5['cJQgi'](setActiveFeatureId,_0x5919cf['id']),await _0x2c68d5['BUGWP'](tryStartCurrentSession,_0x5919cf['id']);const _0x2062ff=process[_0x5da3f0(0x172)]['CLAUDE_SESSION_ID'];_0x2062ff&&_0x2c68d5['sstTR'](registerSession,_0x2062ff,_0x5919cf['id']),console[_0x5da3f0(0x15b)](_0x5da3f0(0x163)+_0x5919cf['id']),displayFeature(_0x5919cf,_0x5919cf[_0x5da3f0(0x151)]),console['log'](_0x5da3f0(0x1d4));}export async function featureList(_0x5244e8){const _0x4ea04c=_0xbe20,_0x53c5e5={'pxyCV':function(_0xf38118){return _0xf38118();},'qmEGS':function(_0xe04d50,_0x3571fc){return _0xe04d50(_0x3571fc);},'waQon':function(_0x20ccb9,_0x527c06){return _0x20ccb9===_0x527c06;},'KWzYQ':'\x0aNo\x20feature\x20reviews\x20found.','oCOYD':function(_0x425658,_0x363bbd){return _0x425658>_0x363bbd;},'ywZcK':'2|1|3|4|0|5','VJkdb':function(_0x5b149f,_0x15430b){return _0x5b149f+_0x15430b;},'IEvDX':_0x4ea04c(0x1c9),'gRQMe':'\x20--include-deleted'},_0x500ffd={'limit':_0x5244e8[_0x4ea04c(0x13a)]??0xa,'offset':_0x5244e8['offset']??0x0,'includeDeleted':_0x5244e8['includeDeleted']};_0x5244e8[_0x4ea04c(0x164)]&&(_0x500ffd[_0x4ea04c(0x17e)]=getGitRepoUrl(),_0x500ffd[_0x4ea04c(0x156)]=_0x53c5e5[_0x4ea04c(0x1d1)](getGitBranch));const _0x3286df=await _0x53c5e5['qmEGS'](listFeatures,_0x500ffd);if(_0x53c5e5['waQon'](_0x3286df['items']['length'],0x0)){console['log'](_0x53c5e5[_0x4ea04c(0x1dc)]);return;}const _0x35b28f=_0x53c5e5[_0x4ea04c(0x1e7)](_0x3286df['totalCount'],_0x3286df[_0x4ea04c(0x1eb)][_0x4ea04c(0x1bb)])?'Showing\x20'+_0x3286df[_0x4ea04c(0x1eb)][_0x4ea04c(0x1bb)]+_0x4ea04c(0x1a9)+_0x3286df[_0x4ea04c(0x1a1)]:_0x3286df['totalCount']+'\x20feature\x20review(s)\x20found';console[_0x4ea04c(0x15b)]('\x0a'+_0x35b28f+':\x0a');for(const _0x35e11b of _0x3286df[_0x4ea04c(0x1eb)]){const _0x23cbd2=_0x53c5e5[_0x4ea04c(0x135)][_0x4ea04c(0x16a)]('|');let _0x1926cd=0x0;while(!![]){switch(_0x23cbd2[_0x1926cd++]){case'0':console['log'](_0x4ea04c(0x15e)+new Date(_0x35e11b[_0x4ea04c(0x148)])['toLocaleDateString']());continue;case'1':console[_0x4ea04c(0x15b)](_0x4ea04c(0x169)+_0x35e11b['id']);continue;case'2':console['log'](''+_0x35e11b[_0x4ea04c(0x1d2)]);continue;case'3':_0x35e11b[_0x4ea04c(0x1f0)]&&console['log'](_0x4ea04c(0x187)+getProgressDisplay(_0x35e11b['stats']));continue;case'4':_0x35e11b['gitBranch']&&console[_0x4ea04c(0x15b)](_0x4ea04c(0x139)+_0x35e11b[_0x4ea04c(0x156)]);continue;case'5':console[_0x4ea04c(0x15b)]('');continue;}break;}}const _0x431a84=_0x500ffd['limit']??0xa,_0xc86adc=_0x53c5e5['VJkdb'](_0x500ffd['offset']??0x0,_0x3286df['items'][_0x4ea04c(0x1bb)]);if(_0xc86adc<_0x3286df[_0x4ea04c(0x1a1)]){const _0x316572=_0x431a84!==0xa?'\x20--limit\x20'+_0x431a84:'',_0x5ec3e3=_0x5244e8['currentBranch']?_0x53c5e5[_0x4ea04c(0x152)]:'',_0x121a32=_0x5244e8[_0x4ea04c(0x12a)]?_0x53c5e5['gRQMe']:'';console['log']('Next\x20page:\x20ranger\x20list\x20--offset\x20'+_0xc86adc+_0x316572+_0x5ec3e3+_0x121a32);}}function _0x2fda(){const _0x2606eb=['ISxkC','\x20\x20\x20Created:\x20','eWdqT','jgDVE','/api/v1/mcp/browser-sessions/','\x0aAvailable\x20scenarios:','\x0a✅\x20Feature\x20review\x20created:\x20','currentBranch','reports','error','broJG','CKFVF','\x20\x20\x20ID:\x20','split','kwRrB','verified',':\x20\x22','exit','sUsaV','rpmoI','isTTY','env','arrayBuffer','push','\x20blocked','Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','scenarios','after','json','replace','No\x20active\x20session\x20for\x20this\x20feature\x20review.','\x20\x20\x20\x20\x20📋\x20Selector:\x20','gpiMp','gitRepoUrl','QenYy','trim','sessionId','dashboardUrl','\x20\x20\x20','dIYmp','screenshot','QJeiG','\x20\x20\x20Progress:\x20','toLocaleDateString','VqabE','nKnpR','\x0aNo\x20matching\x20active\x20feature\x20reviews\x20found.','incompleteReason','en-US','bOrwF','dOqGL','4|5|1|0|2|3','Please\x20specify\x20the\x20feature\x20review\x20ID:\x20ranger\x20resume\x20<id>','incompleteItems','blockedReason','HRKuc','zUhlG','Scenario\x20','currentSessionId','blocked','sJKlp','prompt','stringify','all','repeat','QkJIf','\x0a✅\x20Resumed\x20feature\x20review:\x20','browserSessionId','totalCount','\x20in\x20progress','No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.','jtKhR','900693QmMicP','205ZZmnQK','scenario','\x20\x20\x20\x20\x20Branch:\x20','\x20of\x20','lDMoe','qBmlq','closed','\x20scenario(s).','trimEnd','Step\x20','RFqaD','kpMxD','2108729bzONqv','Run:\x20ranger\x20create\x20\x22<name>\x22\x20to\x20create\x20a\x20new\x20feature\x20review','\x20—\x20no\x20comments','element','6113610jwNEyM','Cannot\x20conclude\x20session\x20with\x20status:\x20','submittedAt','spatial','\x20\x20\x20\x20\x20\x20Cancelled:\x20','length','eAcJR','linkedSession','FJGRD','type','version','pkdNi','stdout','numeric','nvzIP','CCsmD','description','\x20\x20\x20\x20\x20ID:\x20','kEqTR','\x20--current-branch','\x20\x20\x20\x20\x20📍\x20Annotation:\x20','hdJQZ','selector','assetType','\x20\x20\x20Status:\x20','\x20\x20Expected\x20flow:','XfgGB','pxyCV','name','No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','\x0a➡️\x20\x20Set\x20as\x20active\x20feature\x20review','utf-8','\x0aCreating\x20feature\x20review...','IujmJ','domRef','2yHPjDr','\x0a✅\x20Session\x20','2734400yOApvB','KWzYQ','canceledReason','zcwwi','approved','toFixed','\x20\x20✅\x20No\x20feedback\x20to\x20address','\x20incomplete','kNCPb','\x20\x20\x20Run\x20`ranger\x20get-review`\x20to\x20see\x20what\x20needs\x20to\x20be\x20fixed.','\x20\x20\x20\x20\x20\x20Blocked:\x20','\x20\x20\x20\x20\x20\x20Incomplete:\x20','oCOYD','\x20\x20\x20To\x20restore\x20it,\x20run:\x20ranger\x20restore\x20','qdGaH','oMSwb','items','agentResponse','bGrJL','132052MVXVZL','iIbPF','stats','sWyTl','assets','pipe','comment_','xTmgr','\x0a⚠️\x20\x20','\x0a✅\x20Report\x20generated:\x20','excludeScenarios','ohoBc','\x20>\x20','notes','iteration','includeDeleted','RPLbx','round','git\x20rev-parse\x20--abbrev-ref\x20HEAD','exgFi','1223463piHsRX','status','\x0a❌\x20No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.','CLAUDE_SESSION_ID','point','\x20—\x20','ywZcK','\x20\x20\x20Completed:\x20','674996ymixkB','toLocaleString','\x20\x20\x20Branch:\x20','limit','pop','filter','cJQgi','ctPXE','map','completedAt','terminalReason','screenshotUrls','completed','RYsyP','latestReview','FmqSK','verification_in_progress','createdAt','\x20\x20💬\x20','short','authorName','any','ZrYvR','\x0a✅\x20Session\x20is\x20already\x20completed.','BTjqG','XvjNO','checklistItems','IEvDX','find','\x20[has\x20reviewer\x20feedback]','uSSQA','gitBranch','OFEgK','\x0a✅\x20Scenario\x20added','git\x20remote\x20get-url\x20origin','\x0a✅\x20Restored\x20feature\x20review:\x20','log','unaddressedComments'];_0x2fda=function(){return _0x2606eb;};return _0x2fda();}export async function featureShow(_0x161d68){const _0x2e20d7=_0xbe20,_0x2b1e79={'SZcpW':function(_0x12d415){return _0x12d415();},'kEqTR':'No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','qdGaH':function(_0x25ab39,_0x36075f,_0x49771b){return _0x25ab39(_0x36075f,_0x49771b);}},_0x3ed2bd=_0x161d68||await _0x2b1e79['SZcpW'](getActiveFeatureId);if(!_0x3ed2bd)throw new Error(_0x2b1e79[_0x2e20d7(0x1c8)]);const _0x2ab2e2=await getFeature(_0x3ed2bd);_0x2b1e79[_0x2e20d7(0x1e9)](displayFeature,_0x2ab2e2,_0x2ab2e2[_0x2e20d7(0x151)]);}export async function featureResume(_0x3e9f4c){const _0x309948=_0xbe20,_0x529363={'kRtSP':function(_0x42851f,_0x2d69ed){return _0x42851f(_0x2d69ed);},'BVzMk':function(_0x292615,_0x160c84){return _0x292615!==_0x160c84;},'lJrpH':function(_0x26f4c6,_0x231f13,_0x3470e3){return _0x26f4c6(_0x231f13,_0x3470e3);},'AXXlM':function(_0x4f5c56,_0x12d449,_0x3e137e){return _0x4f5c56(_0x12d449,_0x3e137e);},'eAcJR':function(_0x5fff72,_0x5589d4,_0x62dab7){return _0x5fff72(_0x5589d4,_0x62dab7);},'VMjFL':function(_0x28194f){return _0x28194f();},'rpmoI':function(_0x58c823,_0x2225a0){return _0x58c823&&_0x2225a0;},'HRKuc':'Not\x20in\x20a\x20git\x20repository.','VAvSQ':function(_0x591234,_0x5c1864){return _0x591234||_0x5c1864;},'broJG':_0x309948(0x14c),'WGpON':function(_0x227220,_0x4a9d08){return _0x227220||_0x4a9d08;},'kpMxD':function(_0x2818ec,_0x34bdee){return _0x2818ec(_0x34bdee);},'WfuNB':function(_0x14aaca,_0x42fece){return _0x14aaca===_0x42fece;},'TeYIA':_0x309948(0x1b3),'AJsBn':'selected','BBSVa':'Multiple\x20feature\x20reviews\x20found.\x20Select\x20one:','QenYy':function(_0x3e8964,_0x330cd6){return _0x3e8964(_0x330cd6);},'jgDVE':function(_0x302f4a,_0x3069f4,_0x230e03){return _0x302f4a(_0x3069f4,_0x230e03);}};if(_0x3e9f4c){const _0x2d4f23=await _0x529363['kRtSP'](getFeature,_0x3e9f4c);await setActiveFeatureId(_0x2d4f23['id']);const _0xba9d46=getGitBranch();_0xba9d46&&_0x529363['BVzMk'](_0xba9d46,_0x2d4f23['gitBranch'])&&(await _0x529363['lJrpH'](updateFeature,_0x2d4f23['id'],{'gitBranch':_0xba9d46}),console[_0x309948(0x15b)]('\x20\x20\x20Updated\x20branch\x20to:\x20'+_0xba9d46));console[_0x309948(0x15b)](_0x309948(0x19f)+_0x2d4f23[_0x309948(0x1d2)]+'\x20('+_0x2d4f23['id']+')'),await tryStartCurrentSession(_0x2d4f23['id']);const _0x254119=process[_0x309948(0x172)][_0x309948(0x132)];_0x254119&&_0x529363['AXXlM'](registerSession,_0x254119,_0x2d4f23['id']);_0x529363[_0x309948(0x1bc)](displayFeature,_0x2d4f23,_0x2d4f23[_0x309948(0x151)]),await printFeedbackNudge(_0x2d4f23['id']);return;}const _0x39b800=getGitRepoUrl(),_0xd0d046=_0x529363['VMjFL'](getGitBranch);if(_0x529363[_0x309948(0x170)](!_0x39b800,!_0xd0d046))throw new Error(_0x529363[_0x309948(0x194)]);console['log']('\x0aSearching\x20for\x20feature\x20reviews\x20matching:\x20'+_0x529363['VAvSQ'](_0x39b800,_0x529363[_0x309948(0x167)])+'\x20/\x20'+_0x529363['WGpON'](_0xd0d046,'any')+'...');const _0x270a2d=await _0x529363[_0x309948(0x1b1)](listFeatures,{'gitRepoUrl':_0x39b800,'gitBranch':_0xd0d046}),_0x2c53c2=_0x270a2d['items'][_0x309948(0x13c)](_0x33e077=>_0x33e077[_0x309948(0x130)]?_0x33e077['status']!=='verified':!_0x33e077[_0x309948(0x140)]);if(_0x529363['WfuNB'](_0x2c53c2[_0x309948(0x1bb)],0x0)){console['log'](_0x309948(0x18b)),console[_0x309948(0x15b)](_0x529363['TeYIA']);return;}let _0x533f01;if(_0x529363['WfuNB'](_0x2c53c2[_0x309948(0x1bb)],0x1))_0x533f01=_0x2c53c2[0x0];else{const _0x1abeaa=process['stdin'][_0x309948(0x171)]&&process[_0x309948(0x1c2)][_0x309948(0x171)];if(!_0x1abeaa){console[_0x309948(0x15b)]('\x0aNon-interactive\x20mode\x20detected.\x20Multiple\x20feature\x20reviews\x20found:');for(const _0x286130 of _0x2c53c2){console[_0x309948(0x15b)]('\x20\x20'+_0x286130[_0x309948(0x1d2)]),console['log'](_0x309948(0x1c7)+_0x286130['id']),_0x286130['stats']&&console[_0x309948(0x15b)]('\x20\x20\x20\x20\x20Progress:\x20'+getProgressDisplay(_0x286130[_0x309948(0x1f0)])),_0x286130[_0x309948(0x156)]&&console[_0x309948(0x15b)](_0x309948(0x1a8)+_0x286130['gitBranch']);}throw new Error(_0x309948(0x191));}const {selected:_0x1eb5c6}=await _0x19ec59[_0x309948(0x19a)]([{'type':'list','name':_0x529363['AJsBn'],'message':_0x529363['BBSVa'],'choices':_0x2c53c2['map'](_0x5d2847=>({'name':_0x5d2847[_0x309948(0x1d2)]+'\x20('+_0x5d2847['id']+')','value':_0x5d2847['id']}))}]);_0x533f01=_0x2c53c2[_0x309948(0x153)](_0x315f0c=>_0x315f0c['id']===_0x1eb5c6);}await _0x529363[_0x309948(0x17f)](setActiveFeatureId,_0x533f01['id']);_0xd0d046&&_0xd0d046!==_0x533f01[_0x309948(0x156)]&&(await updateFeature(_0x533f01['id'],{'gitBranch':_0xd0d046}),console['log']('\x20\x20\x20Updated\x20branch\x20to:\x20'+_0xd0d046));console[_0x309948(0x15b)](_0x309948(0x19f)+_0x533f01[_0x309948(0x1d2)]+'\x20('+_0x533f01['id']+')'),await tryStartCurrentSession(_0x533f01['id']);const _0x440c74=await _0x529363['kpMxD'](getFeature,_0x533f01['id']),_0x3537b6=process[_0x309948(0x172)]['CLAUDE_SESSION_ID'];_0x3537b6&®isterSession(_0x3537b6,_0x440c74['id']),_0x529363[_0x309948(0x160)](displayFeature,_0x440c74,_0x440c74[_0x309948(0x151)]),await _0x529363['QenYy'](printFeedbackNudge,_0x440c74['id']);}async function printFeedbackNudge(_0x21b7e1){const _0x20c51f=_0xbe20,_0x4b1ac4={'uSSQA':function(_0x5ab4b3,_0x25578){return _0x5ab4b3(_0x25578);},'RFqaD':function(_0x4d8d12,_0x55ae90,_0x415611){return _0x4d8d12(_0x55ae90,_0x415611);},'QkJIf':function(_0x142be3,_0x437776){return _0x142be3>_0x437776;}};try{const {items:_0x28e225}=await _0x4b1ac4[_0x20c51f(0x155)](getActionItems,_0x21b7e1);let _0x567333=0x0,_0x22cc22=0x0;for(const _0x249a4d of _0x28e225){const _0x35fc59=await _0x4b1ac4[_0x20c51f(0x1b0)](getItemFeedback,_0x21b7e1,_0x249a4d['id']);_0x4b1ac4[_0x20c51f(0x19e)](_0x35fc59['unaddressedComments'][_0x20c51f(0x1bb)],0x0)&&(_0x567333+=_0x35fc59[_0x20c51f(0x15c)]['length'],_0x22cc22++);}_0x4b1ac4['QkJIf'](_0x567333,0x0)&&(console[_0x20c51f(0x15b)](_0x20c51f(0x1f6)+_0x567333+'\x20unaddressed\x20reviewer\x20comment(s)\x20across\x20'+_0x22cc22+_0x20c51f(0x1ad)),console[_0x20c51f(0x15b)](_0x20c51f(0x1e4)));}catch{}}async function tryStartCurrentSession(_0x3a5983){const _0x207585=_0xbe20;try{const {sessions:_0x352203}=await listFeatureSessions(_0x3a5983),_0x3002c8=_0x352203['find'](_0x3bc33e=>_0x3bc33e[_0x207585(0x130)]==='ready');_0x3002c8&&(await startSession(_0x3a5983,_0x3002c8['id']),console[_0x207585(0x15b)]('\x20\x20\x20▶️\x20Started\x20session\x20'+_0x3002c8[_0x207585(0x129)]));}catch{}}export async function featureReport(_0x19a794,_0x1bbee6){const _0xed52cd=_0xbe20,_0x40ed11={'OFEgK':function(_0x5a84a0,_0x101047,_0x304ad2){return _0x5a84a0(_0x101047,_0x304ad2);},'Cobze':function(_0x2331fa){return _0x2331fa();},'iIbPF':_0xed52cd(0x165),'sUsaV':function(_0x2841ae,_0x355a19){return _0x2841ae(_0x355a19);}},_0x1ff0a4=_0x19a794||await getActiveFeatureId();if(!_0x1ff0a4)throw new Error('No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.');console['log']('\x0aGenerating\x20report...');const _0xe5c525=await _0x40ed11[_0xed52cd(0x157)](getFeatureReportMarkdown,_0x1ff0a4,{'style':_0x1bbee6['style']}),_0x566cd7=_0x1bbee6['output']||join(_0x40ed11['Cobze'](getRangerDir),_0x40ed11[_0xed52cd(0x1ef)],_0x1ff0a4+'.md'),_0x2e8624=join(_0x566cd7,'..');!_0x40ed11[_0xed52cd(0x16f)](existsSync,_0x2e8624)&&await _0x40ed11['OFEgK'](mkdir,_0x2e8624,{'recursive':!![]}),await writeFile(_0x566cd7,_0xe5c525,_0xed52cd(0x1d5)),console[_0xed52cd(0x15b)](_0xed52cd(0x1f7)+_0x566cd7);}function getScenarioResult(_0x84279b){const _0xfa83f6=_0xbe20,_0x4c8616={'gpiMp':'closed','YZxHd':function(_0x513b21,_0x398983){return _0x513b21===_0x398983;},'JhlUW':'in_progress'};if(_0x84279b['status']===_0xfa83f6(0x1ac))return _0x84279b[_0xfa83f6(0x141)]??_0x4c8616[_0xfa83f6(0x17d)];if(_0x4c8616['YZxHd'](_0x84279b['status'],_0xfa83f6(0x147)))return _0x4c8616['JhlUW'];return _0x84279b[_0xfa83f6(0x130)];}function getScenarioRationale(_0x2d7922,_0x2f6c7f){const _0x2fc4bc=_0xbe20,_0x5c7dc0={'pkdNi':_0x2fc4bc(0x190)},_0x1578c5=_0x5c7dc0[_0x2fc4bc(0x1c1)][_0x2fc4bc(0x16a)]('|');let _0x16e3fc=0x0;while(!![]){switch(_0x1578c5[_0x16e3fc++]){case'0':if(_0x2d7922['canceledReason'])return _0x2d7922[_0x2fc4bc(0x1dd)];continue;case'1':if(_0x2d7922['incompleteReason'])return _0x2d7922[_0x2fc4bc(0x18c)];continue;case'2':if(_0x2d7922['notes'])return _0x2d7922[_0x2fc4bc(0x128)];continue;case'3':return null;case'4':if(_0x2f6c7f)return _0x2f6c7f;continue;case'5':if(_0x2d7922[_0x2fc4bc(0x193)])return _0x2d7922[_0x2fc4bc(0x193)];continue;}break;}}export async function featureReportPrDescription(_0x367fa7,_0x98370){const _0x528af6=_0xbe20,_0x55810a={'ohoBc':_0x528af6(0x1a3),'hdJQZ':function(_0x225b58,_0x19120b){return _0x225b58===_0x19120b;},'XfgGB':'\x0a❌\x20All\x20scenarios\x20were\x20excluded.','jVGsC':function(_0x4ca104,_0x3202e1,_0x1d7960,_0x5a2950){return _0x4ca104(_0x3202e1,_0x1d7960,_0x5a2950);}},_0x16b70a=_0x367fa7||await getActiveFeatureId();if(!_0x16b70a)throw new Error(_0x55810a[_0x528af6(0x1f9)]);const _0x4258b8=await getFeature(_0x16b70a),_0x52d63e=_0x4258b8['checklistItems']||[],_0x12cb2f=getCurrentSessionItems(_0x4258b8,_0x52d63e);_0x12cb2f[_0x528af6(0x1bb)]===0x0&&(console['error']('\x0a❌\x20No\x20scenarios\x20found\x20to\x20include.'),process['exit'](0x1));const _0x2f7aa3=_0x98370[_0x528af6(0x1f8)]??[],_0x5038a6=_0x2f7aa3['filter'](_0x386740=>!Number['isInteger'](_0x386740)||_0x386740<0x1||_0x386740>_0x12cb2f[_0x528af6(0x1bb)]);if(_0x5038a6[_0x528af6(0x1bb)]>0x0){console[_0x528af6(0x166)]('\x0a❌\x20Invalid\x20scenario\x20number(s):\x20'+_0x5038a6['join'](',\x20')),console['log']('\x0aAvailable\x20scenarios:');for(let _0x57294e=0x0;_0x57294e<_0x12cb2f[_0x528af6(0x1bb)];_0x57294e++){console['log']('\x20\x20'+(_0x57294e+0x1)+'.\x20'+_0x12cb2f[_0x57294e]['description']);}process[_0x528af6(0x16e)](0x1);}const _0xd65080=new Set(_0x2f7aa3[_0x528af6(0x13f)](_0x9b6f7b=>_0x9b6f7b-0x1)),_0x587262=_0x12cb2f['filter']((_0x534c2b,_0xe11e7b)=>!_0xd65080['has'](_0xe11e7b));_0x55810a[_0x528af6(0x1cb)](_0x587262[_0x528af6(0x1bb)],0x0)&&(console[_0x528af6(0x166)](_0x55810a[_0x528af6(0x1d0)]),process['exit'](0x1));if(_0x98370[_0x528af6(0x179)])await _0x55810a['jVGsC'](outputJsonReport,_0x16b70a,_0x4258b8,_0x587262);else{const _0x50d451=await getFeatureReportMarkdown(_0x16b70a,{'itemIds':_0x587262['map'](_0x558fa7=>_0x558fa7['id'])});process['stdout']['write'](_0x50d451[_0x528af6(0x1ae)]()+'\x0a');}}async function outputJsonReport(_0x4eef5d,_0x20055e,_0x94d1b2){const _0x5ddb0a=_0xbe20,_0x289085={'xqaqG':function(_0x3638ff,_0x13cc97){return _0x3638ff>_0x13cc97;},'jtKhR':function(_0x3d3a73,_0x544e54,_0x1ed0ed){return _0x3d3a73(_0x544e54,_0x1ed0ed);},'qQnck':function(_0x254f74){return _0x254f74();}},_0x5c6dd3=_0x289085['qQnck'](getApiBaseUrl),_0x37be24=await getFeatureReport(_0x4eef5d),_0x36341f=new Map(_0x37be24[_0x5ddb0a(0x151)]['map'](_0x482847=>[_0x482847['id'],_0x482847])),_0xaf6b02=await Promise[_0x5ddb0a(0x19c)](_0x94d1b2['map'](async _0x225e83=>{const _0x30bec1=_0x5ddb0a,_0x48d23a=_0x36341f['get'](_0x225e83['id']),_0x58ed71=_0x48d23a?.[_0x30bec1(0x1bd)]??null;let _0x1c5e24=[];if(_0x225e83[_0x30bec1(0x1a0)])try{const {steps:_0x2e25ab}=await getBrowserSessionSteps(_0x225e83[_0x30bec1(0x1a0)]);_0x289085['xqaqG'](_0x2e25ab['length'],0x0)&&(_0x1c5e24=_0x2e25ab['map'](_0xbbe7ca=>{const _0x4aeaea=_0x30bec1,_0x1c6d4e=_0xbbe7ca[_0x4aeaea(0x1f2)]['find'](_0x97f8a5=>_0x97f8a5['assetType']===_0x4aeaea(0x185)&&_0x97f8a5['timing']===_0x4aeaea(0x178))??_0xbbe7ca[_0x4aeaea(0x1f2)]['find'](_0x126cb7=>_0x126cb7[_0x4aeaea(0x1cd)]==='screenshot');let _0x2d8bfc=null,_0x346b9b=null;if(_0x1c6d4e){const _0xe6a50c=_0x1c6d4e['storage']['location'][_0x4aeaea(0x16a)]('/')['pop']();_0x2d8bfc=_0x5c6dd3+_0x4aeaea(0x161)+_0x225e83['browserSessionId']+'/artifacts/'+_0xe6a50c,_0xe6a50c&&(_0x346b9b=_0xe6a50c[_0x4aeaea(0x17a)](/\.\w+$/,'')['replace'](/^(key_)?\d+_/,'')['replace'](/[-_]/g,'\x20'));}return{'description':_0x346b9b||_0xbbe7ca['description']||_0xbbe7ca['stepName']||_0x4aeaea(0x1af)+_0xbbe7ca['position'],'screenshot':_0x2d8bfc,'is_key_step':_0xbbe7ca['isKeyStep']};}));}catch{}return _0x1c5e24[_0x30bec1(0x1bb)]===0x0&&_0x58ed71?.[_0x30bec1(0x142)]&&(_0x1c5e24=_0x58ed71[_0x30bec1(0x142)]['map']((_0x371416,_0x4122e2)=>({'description':'Screenshot\x20'+(_0x4122e2+0x1),'screenshot':_0x371416,'is_key_step':![]}))),{'description':_0x225e83['description'],'result':getScenarioResult(_0x225e83),'rationale':_0x289085[_0x30bec1(0x1a4)](getScenarioRationale,_0x225e83,_0x58ed71?.[_0x30bec1(0x1ec)]),'steps':_0x1c5e24};})),_0x109995={'url':_0x20055e[_0x5ddb0a(0x182)],'scenarios':_0xaf6b02};process[_0x5ddb0a(0x1c2)]['write'](JSON[_0x5ddb0a(0x19b)](_0x109995,null,0x2)+'\x0a');}export async function featureConcludeSession(_0x447e3a){const _0x45d2f8=_0xbe20,_0x29602f={'JQsho':function(_0x42ec7d){return _0x42ec7d();},'oMSwb':_0x45d2f8(0x1d3),'FmqSK':function(_0x33b1fb,_0x449adb){return _0x33b1fb(_0x449adb);},'ZUJNd':_0x45d2f8(0x17b),'wDvzN':function(_0x1167c7,_0x5bdf40){return _0x1167c7===_0x5bdf40;}},_0x3fabe8=_0x447e3a||await _0x29602f['JQsho'](getActiveFeatureId);if(!_0x3fabe8)throw new Error(_0x29602f[_0x45d2f8(0x1ea)]);const _0x3959b8=await _0x29602f['FmqSK'](getFeature,_0x3fabe8);if(!_0x3959b8['currentSessionId'])throw new Error(_0x29602f['ZUJNd']);const {sessions:_0x145e02}=await _0x29602f[_0x45d2f8(0x146)](listFeatureSessions,_0x3fabe8),_0xfafb14=_0x145e02['find'](_0x5547c9=>_0x5547c9['id']===_0x3959b8['currentSessionId']);if(!_0xfafb14)throw new Error('Current\x20session\x20not\x20found.');if(_0x29602f['wDvzN'](_0xfafb14[_0x45d2f8(0x130)],_0x45d2f8(0x143))){console[_0x45d2f8(0x15b)](_0x45d2f8(0x14e));return;}if(_0xfafb14['status']!=='in_progress')throw new Error(_0x45d2f8(0x1b7)+_0xfafb14['status']);console['log']('\x0aConcluding\x20session...'),await concludeSession(_0x3fabe8,_0x3959b8[_0x45d2f8(0x197)]),console['log'](_0x45d2f8(0x1da)+_0xfafb14[_0x45d2f8(0x129)]+'\x20concluded.'),console[_0x45d2f8(0x15b)]('\x20\x20\x20The\x20feature\x20review\x20is\x20now\x20ready\x20for\x20human\x20review\x20on\x20the\x20Ranger\x20dashboard.');}export async function featureSessions(_0x57b05a){const _0x4ac1ac=_0xbe20,_0x2e7023={'FJGRD':function(_0x40e446){return _0x40e446();},'RYsyP':function(_0x9dec86,_0x536493){return _0x9dec86(_0x536493);},'BTjqG':function(_0x2f0637,_0x57d967){return _0x2f0637===_0x57d967;},'vOrXh':'completed','olTJR':function(_0x35db6e,_0x2c7f7b){return _0x35db6e===_0x2c7f7b;}},_0x1e0c37=_0x57b05a||await _0x2e7023[_0x4ac1ac(0x1be)](getActiveFeatureId);if(!_0x1e0c37)throw new Error(_0x4ac1ac(0x1a3));const _0x291fa9=await getFeature(_0x1e0c37);console[_0x4ac1ac(0x15b)]('\x0a📁\x20Sessions\x20for\x20feature\x20review:\x20'+_0x291fa9['name']+'\x0a');const {sessions:_0x4bc799}=await _0x2e7023[_0x4ac1ac(0x144)](listFeatureSessions,_0x1e0c37);if(_0x2e7023[_0x4ac1ac(0x14f)](_0x4bc799[_0x4ac1ac(0x1bb)],0x0)){console[_0x4ac1ac(0x15b)]('No\x20sessions\x20found.');return;}for(const _0xf4b4 of _0x4bc799){const _0xa7bf45=_0xf4b4[_0x4ac1ac(0x130)]===_0x2e7023['vOrXh']?'✅':_0x2e7023['olTJR'](_0xf4b4['status'],'in_progress')?'🔄':'▶️';console['log'](_0xa7bf45+'\x20Session\x20'+_0xf4b4['iteration']+'\x20('+_0xf4b4['id']+')'),console['log'](_0x4ac1ac(0x1ce)+_0xf4b4['status']),console[_0x4ac1ac(0x15b)](_0x4ac1ac(0x15e)+new Date(_0xf4b4[_0x4ac1ac(0x148)])[_0x4ac1ac(0x138)]()),_0xf4b4['completedAt']&&console[_0x4ac1ac(0x15b)](_0x4ac1ac(0x136)+new Date(_0xf4b4['completedAt'])['toLocaleString']()),console[_0x4ac1ac(0x15b)]('');}}export async function featureAddScenario(_0x11f123,_0x13d1a2){const _0x3ac4d0=_0xbe20,_0x100b8b={'Awfqz':function(_0x24b411){return _0x24b411();},'kWWde':function(_0x1e247,_0x2b15c1){return _0x1e247(_0x2b15c1);},'meQkj':function(_0x561d8f,_0x42aa07,_0xa95efc){return _0x561d8f(_0x42aa07,_0xa95efc);},'RsBTW':function(_0x440308,_0x49a6e1){return _0x440308(_0x49a6e1);}},_0x4d1fc9=_0x13d1a2||await _0x100b8b['Awfqz'](getActiveFeatureId);if(!_0x4d1fc9)throw new Error('No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review');const _0x502904=await _0x100b8b['kWWde'](getFeature,_0x4d1fc9);if(_0x502904['latestReview']&&!_0x502904[_0x3ac4d0(0x145)][_0x3ac4d0(0x1b8)])throw new Error('Cannot\x20add\x20scenario:\x20feature\x20review\x20has\x20an\x20active\x20review.\x20Please\x20finish\x20your\x20review\x20first:\x20'+_0x502904[_0x3ac4d0(0x182)]);await _0x100b8b['meQkj'](createChecklistItem,_0x4d1fc9,_0x11f123);const _0x5f33d5=await _0x100b8b['RsBTW'](getFeature,_0x4d1fc9);console[_0x3ac4d0(0x15b)](_0x3ac4d0(0x158)),displayFeature(_0x5f33d5,_0x5f33d5['checklistItems']);}export async function featureEditScenario(_0x16a7f7,_0x5523f8){const _0x492263=_0xbe20,_0x55dd58={'eWdqT':function(_0x7b4102){return _0x7b4102();},'lDMoe':_0x492263(0x176),'tDQhm':'\x0a❌\x20No\x20scenario\x20number\x20provided.\x20Use\x20--scenario\x20<number>.','MmifK':function(_0x3b4634,_0x347c8d){return _0x3b4634<_0x347c8d;},'dIYmp':_0x492263(0x162),'PFPfW':function(_0x3ec2e1,_0x4fa5f6){return _0x3ec2e1+_0x4fa5f6;},'yHMuX':function(_0x23cce6,_0x108c0e,_0x4d0fc1,_0x126e7f){return _0x23cce6(_0x108c0e,_0x4d0fc1,_0x126e7f);}},_0x33c542=_0x5523f8['id']||await _0x55dd58[_0x492263(0x15f)](getActiveFeatureId);!_0x33c542&&(console[_0x492263(0x166)](_0x492263(0x131)),console[_0x492263(0x166)](_0x55dd58[_0x492263(0x1aa)]),process['exit'](0x1));const _0x298004=await getFeature(_0x33c542);_0x298004[_0x492263(0x145)]&&!_0x298004['latestReview'][_0x492263(0x1b8)]&&(console['error']('\x0a❌\x20Cannot\x20edit\x20scenario:\x20feature\x20review\x20has\x20an\x20active\x20review.'),console[_0x492263(0x166)]('Please\x20finish\x20your\x20review\x20first:'),console['error']('\x20\x20'+_0x298004[_0x492263(0x182)]),process[_0x492263(0x16e)](0x1));const _0x239a68=_0x298004['checklistItems']||[];_0x239a68['length']===0x0&&(console[_0x492263(0x166)]('\x0a❌\x20No\x20scenarios\x20found\x20to\x20edit.'),process['exit'](0x1));if(_0x5523f8[_0x492263(0x1a7)]===undefined){console[_0x492263(0x166)](_0x55dd58['tDQhm']),console[_0x492263(0x15b)](_0x492263(0x162));for(let _0x1cd788=0x0;_0x55dd58['MmifK'](_0x1cd788,_0x239a68['length']);_0x1cd788++){console['log']('\x20\x20'+(_0x1cd788+0x1)+'.\x20'+_0x239a68[_0x1cd788][_0x492263(0x1c6)]);}process['exit'](0x1);}const _0x1d163c=_0x5523f8[_0x492263(0x1a7)]-0x1;if(_0x1d163c<0x0||_0x1d163c>=_0x239a68[_0x492263(0x1bb)]){console[_0x492263(0x166)]('\x0a❌\x20Invalid\x20scenario\x20index:\x20'+_0x5523f8[_0x492263(0x1a7)]+'.\x20Feature\x20review\x20has\x20'+_0x239a68[_0x492263(0x1bb)]+'\x20scenarios.'),console[_0x492263(0x15b)](_0x55dd58[_0x492263(0x184)]);for(let _0x2188e7=0x0;_0x2188e7<_0x239a68['length'];_0x2188e7++){console[_0x492263(0x15b)]('\x20\x20'+_0x55dd58['PFPfW'](_0x2188e7,0x1)+'.\x20'+_0x239a68[_0x2188e7]['description']);}process['exit'](0x1);}const _0x55bb66=_0x239a68[_0x1d163c];await _0x55dd58['yHMuX'](updateChecklistItem,_0x33c542,_0x55bb66['id'],{'description':_0x16a7f7});const _0x5cbcd9=await getFeature(_0x33c542);console['log']('\x0a✅\x20Scenario\x20updated'),displayFeature(_0x5cbcd9,_0x5cbcd9[_0x492263(0x151)]);}async function downloadFeedbackImage(_0x42e349,_0xc9db89){const _0xdc2131=_0xbe20,_0x5793f5={'sJKlp':function(_0x356e19,_0x155524,_0x1edde4){return _0x356e19(_0x155524,_0x1edde4);},'sWyTl':function(_0x2c8ecd,_0x2e4671,_0x41d2c4){return _0x2c8ecd(_0x2e4671,_0x41d2c4);},'ISxkC':function(_0x2c9248,_0x34964b){return _0x2c9248(_0x34964b);}};try{const _0x4d4db1=join(getRangerDir(),'feedback-images');await _0x5793f5['sJKlp'](mkdir,_0x4d4db1,{'recursive':!![]});const _0x4adf93=_0x5793f5[_0xdc2131(0x1f1)](join,_0x4d4db1,_0xdc2131(0x1f4)+_0xc9db89+'.png'),_0x166543=await _0x5793f5[_0xdc2131(0x15d)](fetch,_0x42e349);if(!_0x166543['ok'])return null;const _0x1f2358=Buffer['from'](await _0x166543[_0xdc2131(0x173)]());return await _0x5793f5[_0xdc2131(0x199)](writeFile,_0x4adf93,_0x1f2358),_0x4adf93;}catch{return null;}}export async function featureGetReview(_0x1727af){const _0x1aaa3f=_0xbe20,_0x18f532={'MmEtR':function(_0x1db792){return _0x1db792();},'HiWMD':function(_0x398c37,_0x5c90ce){return _0x398c37>_0x5c90ce;},'bysxT':function(_0x2a3115,_0x5a75c6,_0xdfa93f){return _0x2a3115(_0x5a75c6,_0xdfa93f);},'QdhDi':_0x1aaa3f(0x18d),'wqocS':_0x1aaa3f(0x1c3),'CMfoP':'Unknown','zUhlG':function(_0x5b54aa,_0x16df8c,_0x4aba59){return _0x5b54aa(_0x16df8c,_0x4aba59);},'wnlOJ':_0x1aaa3f(0x1fa)},_0x4c9628=_0x1727af||await _0x18f532['MmEtR'](getActiveFeatureId);if(!_0x4c9628)throw new Error(_0x1aaa3f(0x1d3));const _0x4ff2e2=await getFeature(_0x4c9628),{items:_0x167d2f}=await getActionItems(_0x4c9628);console[_0x1aaa3f(0x15b)]('\x0a📋\x20Feedback\x20for:\x20'+_0x4ff2e2['name']+'\x20('+_0x4ff2e2['id']+')\x0a');if(_0x167d2f['length']===0x0){console[_0x1aaa3f(0x15b)]('No\x20scenarios\x20found.');return;}for(let _0x4d3f84=0x0;_0x4d3f84<_0x167d2f[_0x1aaa3f(0x1bb)];_0x4d3f84++){const _0x9819db=_0x167d2f[_0x4d3f84],_0xc121eb=_0x18f532['HiWMD'](_0x9819db[_0x1aaa3f(0x1c0)],0x1)?'\x20(v'+_0x9819db[_0x1aaa3f(0x1c0)]+')':'',_0x3abf74=await _0x18f532['bysxT'](getItemFeedback,_0x4c9628,_0x9819db['id']);if(_0x18f532['HiWMD'](_0x3abf74['unaddressedComments']['length'],0x0)){console[_0x1aaa3f(0x15b)]('Scenario\x20'+(_0x4d3f84+0x1)+_0x1aaa3f(0x16d)+_0x9819db[_0x1aaa3f(0x1c6)]+'\x22'+_0xc121eb+_0x1aaa3f(0x134)+_0x3abf74[_0x1aaa3f(0x15c)][_0x1aaa3f(0x1bb)]+'\x20unaddressed\x20comment(s)');for(const _0x47974a of _0x3abf74[_0x1aaa3f(0x15c)]){const _0x44613f=new Date(_0x47974a['createdAt'])[_0x1aaa3f(0x188)](_0x18f532['QdhDi'],{'month':_0x1aaa3f(0x14a),'day':_0x18f532['wqocS']}),_0x57bb7c=_0x47974a[_0x1aaa3f(0x14b)]||_0x47974a['authorEmail']||_0x18f532['CMfoP'];console[_0x1aaa3f(0x15b)](_0x1aaa3f(0x149)+_0x57bb7c+'\x20('+_0x44613f+'):\x20\x22'+_0x47974a['content']+'\x22');if(_0x47974a['assetUrl']){const _0x5e7b46=await _0x18f532[_0x1aaa3f(0x195)](downloadFeedbackImage,_0x47974a['assetUrl'],_0x47974a['id']);_0x5e7b46&&console[_0x1aaa3f(0x15b)]('\x20\x20\x20\x20\x20📷\x20Screenshot:\x20'+_0x5e7b46);}if(_0x47974a['domRef']){const _0x591687=_0x47974a[_0x1aaa3f(0x1d8)]['selector']['split'](_0x18f532['wnlOJ'])[_0x1aaa3f(0x13b)]()?.[_0x1aaa3f(0x16a)](':')[0x0]||_0x1aaa3f(0x1b5),_0x3493ed=_0x47974a[_0x1aaa3f(0x1d8)]['textContent']?'\x20\x22'+_0x47974a['domRef']['textContent']['slice'](0x0,0x3c)+'\x22':'';console[_0x1aaa3f(0x15b)]('\x20\x20\x20\x20\x20🎯\x20Element:\x20<'+_0x591687+'>'+_0x3493ed),console[_0x1aaa3f(0x15b)](_0x1aaa3f(0x17c)+_0x47974a[_0x1aaa3f(0x1d8)][_0x1aaa3f(0x1cc)]);}else{if(_0x47974a[_0x1aaa3f(0x1b9)]){const _0x1e530e=_0x47974a[_0x1aaa3f(0x1b9)]['coordinates'];_0x47974a['spatial']['type']===_0x1aaa3f(0x133)&&_0x1e530e[_0x1aaa3f(0x1bb)]>=0x2?console[_0x1aaa3f(0x15b)]('\x20\x20\x20\x20\x20📍\x20Annotation:\x20point\x20at\x20('+_0x1e530e[0x0]['toFixed'](0x2)+',\x20'+_0x1e530e[0x1][_0x1aaa3f(0x1e0)](0x2)+')'):console['log'](_0x1aaa3f(0x1ca)+_0x47974a['spatial'][_0x1aaa3f(0x1bf)]+'\x20at\x20['+_0x1e530e['map'](_0xa7d12=>_0xa7d12[_0x1aaa3f(0x1e0)](0x2))['join'](',\x20')+']');}}}if(_0x3abf74['canonicalFlow']){console[_0x1aaa3f(0x15b)](_0x1aaa3f(0x1cf));for(const _0xaa7640 of _0x3abf74['canonicalFlow']['split']('\x0a')){console[_0x1aaa3f(0x15b)]('\x20\x20\x20\x20'+_0xaa7640);}}}else console[_0x1aaa3f(0x15b)](_0x1aaa3f(0x196)+(_0x4d3f84+0x1)+_0x1aaa3f(0x16d)+_0x9819db[_0x1aaa3f(0x1c6)]+'\x22'+_0xc121eb+_0x1aaa3f(0x1b4)),console[_0x1aaa3f(0x15b)](_0x1aaa3f(0x1e1));console['log']('');}}export async function featureDelete(_0x8dc2b5){const _0xa42df3=_0xbe20,_0x482e11={'XvjNO':function(_0x497ca0,_0x36ba03){return _0x497ca0(_0x36ba03);},'wGOZN':function(_0x32bee1,_0x41153a){return _0x32bee1(_0x41153a);}},_0x356f5e=_0x8dc2b5||await getActiveFeatureId();if(!_0x356f5e)throw new Error('No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review');const _0x17ae82=await _0x482e11[_0xa42df3(0x150)](getFeature,_0x356f5e);await _0x482e11['wGOZN'](softDeleteFeature,_0x356f5e),console['log']('\x0a🗑️\x20\x20Deleted\x20feature\x20review:\x20'+_0x17ae82[_0xa42df3(0x1d2)]+'\x20('+_0x356f5e+')'),console[_0xa42df3(0x15b)](_0xa42df3(0x1e8)+_0x356f5e);}export async function featureRestore(_0x3f820f){const _0x322cb7=_0xbe20,_0x12f557={'CCsmD':function(_0x4aae0c,_0x4ab2bf){return _0x4aae0c(_0x4ab2bf);}};await _0x12f557[_0x322cb7(0x1c5)](restoreFeature,_0x3f820f);const _0x1ce0f3=await _0x12f557['CCsmD'](getFeature,_0x3f820f);console['log'](_0x322cb7(0x15a)+_0x1ce0f3['name']+'\x20('+_0x3f820f+')'),displayFeature(_0x1ce0f3,_0x1ce0f3['checklistItems']);}
|
|
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
|
-
const
|
|
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
|
-
|
|
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
|
-
|
|
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
|
-
|
|
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
|
-
(function(
|
|
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();}
|