@ranger-testing/ranger-cli 2.4.2 → 2.4.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/cli.js +1 -1
- package/build/commands/addEnv.js +1 -1
- package/build/commands/authEncrypt.js +1 -1
- package/build/commands/clean.js +1 -1
- package/build/commands/config.js +1 -1
- package/build/commands/env.js +1 -1
- package/build/commands/feature.js +1 -1
- package/build/commands/hook.js +1 -1
- package/build/commands/hooks/autoPrompt.js +1 -1
- package/build/commands/hooks/disable.js +1 -1
- package/build/commands/hooks/enable.js +1 -1
- package/build/commands/hooks/exitPlanMode.js +1 -1
- package/build/commands/hooks/index.js +1 -1
- package/build/commands/hooks/output.js +1 -1
- package/build/commands/hooks/planReminder.js +1 -1
- package/build/commands/hooks/planStart.js +1 -1
- package/build/commands/hooks/postEdit.js +1 -1
- package/build/commands/hooks/preCompact.js +1 -1
- package/build/commands/hooks/sessionEnd.js +1 -1
- package/build/commands/hooks/sessionStart.js +1 -1
- package/build/commands/hooks/stopHook.js +1 -1
- package/build/commands/index.js +1 -1
- package/build/commands/login.js +1 -1
- package/build/commands/setup/claude.js +1 -1
- package/build/commands/setup/opencode.js +1 -1
- package/build/commands/setupCi.js +1 -1
- package/build/commands/skillup.js +1 -1
- package/build/commands/start.js +1 -1
- package/build/commands/status.js +1 -1
- package/build/commands/update.js +1 -1
- package/build/commands/updateEnv.js +1 -1
- package/build/commands/useEnv.js +1 -1
- package/build/commands/utils/activeProfile.js +1 -1
- package/build/commands/utils/agentEnv.js +1 -1
- package/build/commands/utils/browserSessionsApi.js +1 -1
- package/build/commands/utils/claudeConfig.js +1 -1
- package/build/commands/utils/claudeOverrideSettings.js +1 -0
- package/build/commands/utils/claudePlugin.js +1 -1
- package/build/commands/utils/crypto.js +1 -1
- package/build/commands/utils/desirePathLog.js +1 -1
- package/build/commands/utils/deviceAuth.js +1 -1
- package/build/commands/utils/environment.js +1 -1
- package/build/commands/utils/featureApi.js +1 -1
- package/build/commands/utils/featureReportGenerator.js +1 -1
- package/build/commands/utils/fixWebmDuration.js +1 -1
- package/build/commands/utils/git.js +1 -1
- package/build/commands/utils/keychain.js +1 -1
- package/build/commands/utils/localAgentInstallationsApi.js +1 -1
- package/build/commands/utils/mcpImageBase64.js +1 -1
- package/build/commands/utils/model.js +1 -1
- package/build/commands/utils/opencodeConfig.js +1 -1
- package/build/commands/utils/playwrightCli.js +1 -1
- package/build/commands/utils/profileMessages.js +1 -1
- package/build/commands/utils/profileSetupBanner.js +1 -1
- package/build/commands/utils/rangerConfig.js +1 -1
- package/build/commands/utils/rangerRoot.js +1 -1
- package/build/commands/utils/reportGenerator.js +1 -1
- package/build/commands/utils/retry.js +1 -1
- package/build/commands/utils/sessionCache.js +1 -1
- package/build/commands/utils/settings.js +1 -1
- package/build/commands/utils/skillContent.js +1 -1
- package/build/commands/utils/skills.js +1 -1
- package/build/commands/utils/stitchWebmFiles.js +1 -1
- package/build/commands/utils/telemetry.js +1 -1
- package/build/commands/utils/traceSnapshotMapper.js +1 -1
- package/build/commands/utils/userApi.js +1 -1
- package/build/commands/utils/version.js +1 -1
- package/build/commands/verifyFeature.js +1 -1
- package/build/commands/verifyFeatureCli.js +1 -1
- package/build/commands/verifyInBrowser.js +1 -1
- package/package.json +1 -1
package/build/commands/config.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
function _0x5d8d(_0x354004,_0xcf1375){_0x354004=_0x354004-0x9b;const _0xcc2ce1=_0xcc2c();let _0x5d8db6=_0xcc2ce1[_0x354004];return _0x5d8db6;}const _0x9b7a72=_0x5d8d;(function(_0x3b5dec,_0x5d177d){const _0x49b92b=_0x5d8d,_0x3cccc5=_0x3b5dec();while(!![]){try{const _0x4a9218=-parseInt(_0x49b92b(0xaf))/0x1*(parseInt(_0x49b92b(0xb0))/0x2)+-parseInt(_0x49b92b(0xad))/0x3+-parseInt(_0x49b92b(0x9b))/0x4+-parseInt(_0x49b92b(0xa3))/0x5*(parseInt(_0x49b92b(0xac))/0x6)+parseInt(_0x49b92b(0xa9))/0x7*(parseInt(_0x49b92b(0x9f))/0x8)+-parseInt(_0x49b92b(0xa1))/0x9+-parseInt(_0x49b92b(0xa8))/0xa*(-parseInt(_0x49b92b(0xae))/0xb);if(_0x4a9218===_0x5d177d)break;else _0x3cccc5['push'](_0x3cccc5['shift']());}catch(_0x53ec96){_0x3cccc5['push'](_0x3cccc5['shift']());}}}(_0xcc2c,0xa0710));import{existsSync}from'fs';import{loadSettings,saveSettings,getNestedValue,setNestedValue,deleteNestedValue,formatSettings,getSettingsPath,getEnvDir}from'./utils/settings.js';const BOOLEAN_KEYS=[_0x9b7a72(0xa2),_0x9b7a72(0x9c)];function parseValue(_0x2e9f92,_0xc02216){const _0x3c4e98=_0x9b7a72,_0xb0c6a5={'LYpPt':'true','rzwiS':'false'};if(BOOLEAN_KEYS[_0x3c4e98(0xb3)](_0x2e9f92)){if(_0xc02216===_0xb0c6a5[_0x3c4e98(0x9e)])return!![];if(_0xc02216===_0xb0c6a5[_0x3c4e98(0xb1)])return![];throw new Error('Invalid\x20value\x20for\x20'+_0x2e9f92+_0x3c4e98(0x9d));}return _0xc02216;}export async function configSet(_0x5a9217,_0x20ac24,_0x22848e){const _0x35c1be=_0x9b7a72,_0x5a142f={'ZkGtT':function(_0x5bc1ce,_0x4769cd){return _0x5bc1ce(_0x4769cd);},'jjAHu':function(_0x5809d4,_0x182a7d){return _0x5809d4(_0x182a7d);},'NdRQv':function(_0x4b0573,_0x49b513,_0x447441){return _0x4b0573(_0x49b513,_0x447441);},'tyPRo':function(_0x8d6206,_0x5b2d0a,_0x2972d3){return _0x8d6206(_0x5b2d0a,_0x2972d3);}},_0x2d7ec7=_0x5a142f['ZkGtT'](getEnvDir,_0x5a9217);if(!_0x5a142f['ZkGtT'](existsSync,_0x2d7ec7))throw new Error('Profile\x20\x22'+_0x5a9217+'\x22\x20does\x20not\x20exist.\x20Run:\x20ranger\x20profile\x20add\x20'+_0x5a9217);const _0x115b4c=await _0x5a142f['jjAHu'](loadSettings,_0x5a9217),_0x2c6a15=_0x5a142f['NdRQv'](parseValue,_0x20ac24,_0x22848e);setNestedValue(_0x115b4c,_0x20ac24,_0x2c6a15),await _0x5a142f[_0x35c1be(0xb4)](saveSettings,_0x5a9217,_0x115b4c),console['log']('Set\x20'+_0x20ac24+'\x20=\x20'+_0x2c6a15);}export async function configGet(_0x4a4274,_0xa32fcb){const _0x2192d9=_0x9b7a72,_0xf59f53={'tdXVQ':function(_0x56ecbb,_0x2d95fe){return _0x56ecbb(_0x2d95fe);},'hdSkc':function(_0x3d2d8e,_0x47f91a){return _0x3d2d8e(_0x47f91a);},'qAAaO':function(_0x5cc2c7,_0x35edd0,_0x5b7c2c){return _0x5cc2c7(_0x35edd0,_0x5b7c2c);},'jPxWP':function(_0x33a6a8,_0x4a2ef6){return _0x33a6a8===_0x4a2ef6;}},_0x3d33b0=_0xf59f53['tdXVQ'](getEnvDir,_0x4a4274);if(!_0xf59f53[_0x2192d9(0xa6)](existsSync,_0x3d33b0))throw new Error('Profile\x20\x22'+_0x4a4274+_0x2192d9(0xb2));const _0xce970c=await loadSettings(_0x4a4274),_0xf44bc4=_0xf59f53['qAAaO'](getNestedValue,_0xce970c,_0xa32fcb);if(_0xf59f53['jPxWP'](_0xf44bc4,undefined))console[_0x2192d9(0xa5)](_0x2192d9(0xb5));else typeof _0xf44bc4===_0x2192d9(0xa7)?console['log'](JSON[_0x2192d9(0xa0)](_0xf44bc4,null,0x2)):console[_0x2192d9(0xa5)](_0xf44bc4);}export async function configList(_0x2e09dd){const _0x8f9788=_0x9b7a72,_0x56d4b8={'YRFRL':function(_0x34d426,_0x29b733){return _0x34d426(_0x29b733);}},_0x45f754=_0x56d4b8[_0x8f9788(0xab)](getSettingsPath,_0x2e09dd);if(!_0x56d4b8['YRFRL'](existsSync,_0x45f754)){const _0x5b090c=getEnvDir(_0x2e09dd);if(!existsSync(_0x5b090c))throw new Error('Profile\x20\x22'+_0x2e09dd+'\x22\x20does\x20not\x20exist.');console[_0x8f9788(0xa5)]('No\x20configuration\x20set\x20for\x20\x22'+_0x2e09dd+'\x22');return;}const _0x29fa6a=await loadSettings(_0x2e09dd),_0x3aef07=_0x56d4b8['YRFRL'](formatSettings,_0x29fa6a);!_0x3aef07?console['log']('No\x20configuration\x20set\x20for\x20\x22'+_0x2e09dd+'\x22'):console['log'](_0x3aef07);}export async function configUnset(_0x15e1e8,_0x3c58c0){const _0x2019c0=_0x9b7a72,_0x1f314c={'oDohe':function(_0x5b1e28,_0x5aa75c){return _0x5b1e28(_0x5aa75c);}},_0x4eb523=_0x1f314c['oDohe'](getEnvDir,_0x15e1e8);if(!_0x1f314c[_0x2019c0(0xa4)](existsSync,_0x4eb523))throw new Error(_0x2019c0(0xaa)+_0x15e1e8+_0x2019c0(0xb2));const _0x48a98f=await loadSettings(_0x15e1e8),_0x50810f=deleteNestedValue(_0x48a98f,_0x3c58c0);_0x50810f?(await saveSettings(_0x15e1e8,_0x48a98f),console[_0x2019c0(0xa5)]('Removed\x20'+_0x3c58c0)):console['log']('Key\x20\x22'+_0x3c58c0+'\x22\x20not\x20found');}function _0xcc2c(){const _0x2c10e2=['oDohe','log','hdSkc','object','10KrqXUd','36155snUWNj','Profile\x20\x22','YRFRL','18izoMkl','345324ZzsuWj','32703979FjmoHc','23597XMFBtF','2dGPNFi','rzwiS','\x22\x20does\x20not\x20exist.','includes','tyPRo','(not\x20set)','2543692gZSgEG','allowInsecureLocalhost',':\x20expected\x20\x22true\x22\x20or\x20\x22false\x22','LYpPt','24GOfClo','stringify','5089212ZtBIaJ','headless','1652200jVHVcS'];_0xcc2c=function(){return _0x2c10e2;};return _0xcc2c();}
|
package/build/commands/env.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const _0x540b51=_0x4bd7;(function(_0x170a4d,_0x7a8747){const _0xba3fe3=_0x4bd7,_0x1abbdf=_0x170a4d();while(!![]){try{const _0x433ee3=parseInt(_0xba3fe3(0x175))/0x1+parseInt(_0xba3fe3(0x17c))/0x2*(parseInt(_0xba3fe3(0x16e))/0x3)+-parseInt(_0xba3fe3(0x16c))/0x4+parseInt(_0xba3fe3(0x184))/0x5*(-parseInt(_0xba3fe3(0x17b))/0x6)+parseInt(_0xba3fe3(0x178))/0x7+parseInt(_0xba3fe3(0x16a))/0x8*(parseInt(_0xba3fe3(0x182))/0x9)+-parseInt(_0xba3fe3(0x181))/0xa*(parseInt(_0xba3fe3(0x186))/0xb);if(_0x433ee3===_0x7a8747)break;else _0x1abbdf['push'](_0x1abbdf['shift']());}catch(_0x180776){_0x1abbdf['push'](_0x1abbdf['shift']());}}}(_0x5ae6,0x315d6));import{readdir,stat}from'fs/promises';import{join}from'path';import{existsSync}from'fs';import{getRangerDir}from'./utils/rangerRoot.js';import{loadSettings}from'./utils/settings.js';function _0x5ae6(){const _0x3c477e=['startsWith','length','\x0aNo\x20profiles\x20found.','includes','sessions','legacy','390294UgWQjk','vIyNi','Run:\x20ranger\x20profile\x20add\x20<profile-name>','1966146ZlfBNU','reports','log','978882UkCoMR','2RsPkVP','push','Qlgtx','environmentDetails','bKgaM','10bKGqTd','2819349GyAgNA','gAuSE','10vFRbIi','\x20\x20\x20\x20\x20\x20Details:\x20','3930146gytEcW','local','rVyMA','8DwRyDV','baseUrl','797324qeGvdl','krHqb','302028cybwGP'];_0x5ae6=function(){return _0x3c477e;};return _0x5ae6();}import{readActiveProfileName}from'./utils/activeProfile.js';function _0x4bd7(_0x4a196f,_0x18ec37){_0x4a196f=_0x4a196f-0x168;const _0x5ae689=_0x5ae6();let _0x4bd713=_0x5ae689[_0x4a196f];return _0x4bd713;}const NON_ENV_DIRS=[_0x540b51(0x173),'bug-bashes',_0x540b51(0x179),_0x540b51(0x168),'ci'];export async function getEnvNames(){const _0x38101a=_0x540b51,_0x260ac6={'bKgaM':function(_0x3f94c8){return _0x3f94c8();},'vIyNi':function(_0x2fcc20,_0x53e81d){return _0x2fcc20(_0x53e81d);},'QrWZF':'local','gAuSE':function(_0x549060,_0x5557a2){return _0x549060(_0x5557a2);},'Qlgtx':function(_0x33c5c4,_0x5ff643,_0x2c7720){return _0x33c5c4(_0x5ff643,_0x2c7720);},'rVyMA':function(_0x526652,_0x543fa6,_0x4a34fc){return _0x526652(_0x543fa6,_0x4a34fc);},'krHqb':'.txt','qmtOA':function(_0x339b0f,_0x134e23){return _0x339b0f(_0x134e23);}},_0x5f3848=_0x260ac6[_0x38101a(0x180)](getRangerDir);if(!_0x260ac6[_0x38101a(0x176)](existsSync,_0x5f3848))return{'envNames':[],'activeEnv':null,'envTypes':{}};const _0x50a326=await readActiveProfileName(),_0x55f7ef=[],_0x101c8c={},_0x370738=join(_0x5f3848,_0x260ac6['QrWZF']);if(_0x260ac6[_0x38101a(0x183)](existsSync,_0x370738)){const _0x2c1e99=await readdir(_0x370738);for(const _0x3e8889 of _0x2c1e99){const _0x2481f4=_0x260ac6[_0x38101a(0x17e)](join,_0x370738,_0x3e8889),_0x54221e=await stat(_0x2481f4);_0x54221e['isDirectory']()&&(_0x55f7ef['push'](_0x3e8889),_0x101c8c[_0x3e8889]=_0x260ac6['QrWZF']);}}const _0xf923d2=_0x260ac6[_0x38101a(0x17e)](join,_0x5f3848,'ci');if(existsSync(_0xf923d2)){const _0x4cb1fa=await readdir(_0xf923d2);for(const _0xc0a429 of _0x4cb1fa){const _0x344020=_0x260ac6[_0x38101a(0x169)](join,_0xf923d2,_0xc0a429),_0x80890d=await stat(_0x344020);_0x80890d['isDirectory']()&&(_0x55f7ef['push'](_0xc0a429),_0x101c8c[_0xc0a429]='ci');}}const _0x38c2ff=await readdir(_0x5f3848);for(const _0x14a18d of _0x38c2ff){if(NON_ENV_DIRS['includes'](_0x14a18d))continue;if(_0x14a18d[_0x38101a(0x16f)]('.'))continue;if(_0x14a18d['endsWith'](_0x260ac6[_0x38101a(0x16d)]))continue;const _0x1baf8d=join(_0x5f3848,_0x14a18d),_0x7436fe=await _0x260ac6['vIyNi'](stat,_0x1baf8d);_0x7436fe['isDirectory']()&&_0x260ac6['qmtOA'](existsSync,join(_0x1baf8d,'settings.json'))&&(!_0x55f7ef[_0x38101a(0x172)](_0x14a18d)&&(_0x55f7ef[_0x38101a(0x17d)](_0x14a18d),_0x101c8c[_0x14a18d]=_0x38101a(0x174)));}return{'envNames':_0x55f7ef,'activeEnv':_0x50a326,'envTypes':_0x101c8c};}export async function envList(){const _0x52cca0=_0x540b51,_0x2edcf8={'SNoWk':'\x0aProfiles:','fCZjg':'local','EzrEh':function(_0x295853,_0x2ecd94){return _0x295853(_0x2ecd94);},'IAmAJ':function(_0x447518,_0x390011){return _0x447518===_0x390011;}},{envNames:_0x1be303,activeEnv:_0x82f7c5,envTypes:_0x303713}=await getEnvNames();if(_0x1be303[_0x52cca0(0x170)]===0x0){console[_0x52cca0(0x17a)](_0x52cca0(0x171)),console[_0x52cca0(0x17a)](_0x52cca0(0x177));return;}console[_0x52cca0(0x17a)](_0x2edcf8['SNoWk']);for(const _0x493466 of _0x1be303['sort']()){const _0x1b955c=_0x493466===_0x82f7c5,_0xbb9ba6=_0x303713[_0x493466]||_0x2edcf8['fCZjg'],_0x46d701=await _0x2edcf8['EzrEh'](loadSettings,_0x493466),_0x42afc6=_0x2edcf8['IAmAJ'](_0xbb9ba6,'legacy')?'':'\x20['+_0xbb9ba6+']';console['log']('\x20\x20'+(_0x1b955c?'*\x20':'\x20\x20')+_0x493466+_0x42afc6),_0x46d701[_0x52cca0(0x16b)]&&console['log']('\x20\x20\x20\x20\x20\x20URL:\x20'+_0x46d701[_0x52cca0(0x16b)]),_0x46d701[_0x52cca0(0x17f)]&&console[_0x52cca0(0x17a)](_0x52cca0(0x185)+_0x46d701[_0x52cca0(0x17f)]);}_0x82f7c5&&console['log']('\x0a*\x20=\x20active\x20profile');}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const _0x5dcc67=_0x2bed;function _0x45f7(){const _0x53e52d=['\x0a\x20\x20\x20Scenarios:','ngElm','pVfsY','dashboardUrl','from','timing','spatial','totalCount','Next\x20page:\x20ranger\x20list\x20--offset\x20','browserSessionId','error','all','split','zmWId','\x0a✅\x20Scenario\x20added','Dlhjk','location','\x20\x20\x20The\x20feature\x20review\x20is\x20now\x20ready\x20for\x20human\x20review\x20on\x20the\x20Ranger\x20dashboard.','rRZwb','dhjRp','toFixed','assetUrl','\x20scenarios.','eDMuP','xDruZ','\x20Session\x20','buhON','authorName','assets','kjynm','pekqZ','dRPYN','dCJzb','checklistItems','get','status','2466792FStIbx','git\x20remote\x20get-url\x20origin','4mMblNG','zHqDC','2083182BhaRbU','active-feature.txt','output','twCpV','xmcWi','join','hBWby','trimEnd','OzYti','DKDRW','list','stdout','\x0a⚠️\x20\x20','wdbcC','Cannot\x20add\x20scenario:\x20feature\x20review\x20has\x20an\x20active\x20review.\x20Please\x20finish\x20your\x20review\x20first:\x20','vQYcM','selected','PTIQm','comment_','items','notes','xAEFR','blockedItems','latestReview','OanMn','CLAUDE_SESSION_ID','\x0a📋\x20Feedback\x20for:\x20','twdgc','LNkbi','498707qGUbhy','WxBNu','\x20\x20\x20\x20\x20🎯\x20Element:\x20<','round','domRef','DdHnT','Please\x20specify\x20the\x20feature\x20review\x20ID:\x20ranger\x20resume\x20<id>','\x20\x20\x20▶️\x20Started\x20session\x20','.png','\x0a📁\x20Sessions\x20for\x20feature\x20review:\x20','closed','\x0a❌\x20No\x20scenarios\x20found\x20to\x20edit.','stdin','offset','\x0aAvailable\x20scenarios:','No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','incompleteReason','repeat','unaddressedComments','\x20in\x20progress','in_progress','xPsQN','/artifacts/','screenshotUrls','aykNp','\x20\x20\x20Created:\x20','selector','name','HwjRE','DtZNL','\x20\x20\x20\x20\x20📋\x20Selector:\x20','\x0a❌\x20No\x20scenario\x20number\x20provided.\x20Use\x20--scenario\x20<number>.','incompleteItems','CJyRz','dpjIC','No\x20sessions\x20found.','stringify','push','after','FnCxV','4035368KagSeX','approved','screenshot','position','\x20\x20\x20\x20\x20📍\x20Annotation:\x20point\x20at\x20(','MWGYd','pipe','\x0a➡️\x20\x20Set\x20as\x20active\x20feature\x20review','\x20\x20Expected\x20flow:','scenario','\x0a✅\x20Scenario\x20updated','createdAt','Run:\x20ranger\x20create\x20\x22<name>\x22\x20to\x20create\x20a\x20new\x20feature\x20review','218319uuaiNr','length','assetType','\x20\x20\x20\x20\x20📷\x20Screenshot:\x20','byZfY','JUwsy','prompt','faoKG','xbqHG','terminalReason','replace','currentSessionId','\x1b[1m','2HLoepI','No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.','point','\x20concluded.','\x20\x20\x20Branch:\x20','xoifZ','/api/v1/mcp/browser-sessions/','\x0aGenerating\x20report...','toLocaleDateString','blockedReason','pop','\x20\x20\x20\x20\x20Branch:\x20','isKeyStep','verified','\x20\x20\x20Description:\x20','description','verifiedItems','aPVkg','Showing\x20','\x0a✅\x20Resumed\x20feature\x20review:\x20','\x20/\x20','nddiX','tQwRM','7mwWonw','env','log','\x20--include-deleted','heiix','completed','\x20of\x20','doBjr','includeDeleted','Rdnaz','\x20\x20💬\x20','QscPi','isTTY','ZjWrJ','sessionId','completedAt','map','canceledReason','Scenario\x20','parentItemId','verification_in_progress','qBxZF','bruPn','element','ogfPe','Wtosj','hPzBb','reports','\x20>\x20','\x0a✅\x20Session\x20','Hzjdc','\x0a✅\x20Restored\x20feature\x20review:\x20','type','\x0aCreating\x20feature\x20review...','No\x20active\x20session\x20for\x20this\x20feature\x20review.','lyVRk',':\x20\x22','authorEmail','RNSjP','1160815OCxiwo','gitBranch','HIKbd','\x20(v','.md','JUrdT','coordinates','sBbSn','\x20\x20\x20Run\x20`ranger\x20get-review`\x20to\x20see\x20what\x20needs\x20to\x20be\x20fixed.','HnSDP','tuBMW','EiGGs','EvBMj','\x20incomplete','YFcUb','mEtCj','\x20\x20\x20\x20\x20\x20Incomplete:\x20','textContent','\x0a❌\x20No\x20scenarios\x20found\x20to\x20include.','pPWHZ','blocked','filter','ozeSS','\x0a✅\x20Report\x20generated:\x20','GzFTN','stats','version','\x20—\x20','4070680hREnHG','Current\x20session\x20not\x20found.','Cannot\x20conclude\x20session\x20with\x20status:\x20','find','MgffH','Multiple\x20feature\x20reviews\x20found.\x20Select\x20one:','\x0a❌\x20Invalid\x20scenario\x20number(s):\x20','HsDaM','incomplete','\x20—\x20no\x20comments','Not\x20in\x20a\x20git\x20repository.','numeric','\x0a❌\x20Invalid\x20scenario\x20index:\x20','utf-8','exit','\x0aSearching\x20for\x20feature\x20reviews\x20matching:\x20'];_0x45f7=function(){return _0x53e52d;};return _0x45f7();}(function(_0x191bd8,_0x248f62){const _0xc1a8f8=_0x2bed,_0x248b05=_0x191bd8();while(!![]){try{const _0x341500=-parseInt(_0xc1a8f8(0x258))/0x1*(-parseInt(_0xc1a8f8(0x29a))/0x2)+-parseInt(_0xc1a8f8(0x28d))/0x3*(-parseInt(_0xc1a8f8(0x239))/0x4)+-parseInt(_0xc1a8f8(0x1e7))/0x5+-parseInt(_0xc1a8f8(0x23b))/0x6*(-parseInt(_0xc1a8f8(0x1c0))/0x7)+-parseInt(_0xc1a8f8(0x280))/0x8+-parseInt(_0xc1a8f8(0x237))/0x9+parseInt(_0xc1a8f8(0x203))/0xa;if(_0x341500===_0x248f62)break;else _0x248b05['push'](_0x248b05['shift']());}catch(_0xa6a1d8){_0x248b05['push'](_0x248b05['shift']());}}}(_0x45f7,0x4cec1));import{readFile,writeFile,mkdir}from'fs/promises';import{join}from'path';import{existsSync}from'fs';import{execSync}from'child_process';import _0x16eea6 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';function _0x2bed(_0x50bf79,_0xb1a3f9){_0x50bf79=_0x50bf79-0x1b7;const _0x45f708=_0x45f7();let _0x2bed8a=_0x45f708[_0x50bf79];return _0x2bed8a;}import{registerSession}from'./utils/sessionCache.js';import{getEnvNames}from'./env.js';import{formatProfileRequiredMessage}from'./utils/profileMessages.js';const ACTIVE_FEATURE_FILE=_0x5dcc67(0x23c),bold=_0x469f40=>_0x5dcc67(0x299)+_0x469f40+'\x1b[0m';function getGitRepoUrl(){const _0x4aeb06=_0x5dcc67,_0x38747d={'QhFXm':_0x4aeb06(0x210)};try{const _0x5cb52a=execSync(_0x4aeb06(0x238),{'encoding':_0x38747d['QhFXm'],'stdio':['pipe',_0x4aeb06(0x286),_0x4aeb06(0x286)]})['trim']();return _0x5cb52a['replace'](/\.git$/,'')['replace'](/^git@github\.com:/,'github.com/')['replace'](/^https?:\/\//,'');}catch{return undefined;}}function getGitBranch(){const _0x15cba6=_0x5dcc67,_0xb8af76={'FNaUe':function(_0xfc0580,_0x19a077,_0xfecaf1){return _0xfc0580(_0x19a077,_0xfecaf1);},'aPVkg':'git\x20rev-parse\x20--abbrev-ref\x20HEAD','dGWYZ':'utf-8','sBbSn':_0x15cba6(0x286)};try{return _0xb8af76['FNaUe'](execSync,_0xb8af76[_0x15cba6(0x1ba)],{'encoding':_0xb8af76['dGWYZ'],'stdio':['pipe',_0x15cba6(0x286),_0xb8af76[_0x15cba6(0x1ee)]]})['trim']();}catch{return undefined;}}export async function getActiveFeatureId(){const _0x2a7662=_0x5dcc67,_0x42b9ea={'uWKGH':function(_0x2e72d1,_0x4364d7,_0x205486){return _0x2e72d1(_0x4364d7,_0x205486);},'nunjL':function(_0x2b29a1){return _0x2b29a1();},'YFcUb':function(_0x576665,_0x445c06){return _0x576665(_0x445c06);},'faoKG':_0x2a7662(0x210)},_0x43f9b5=_0x42b9ea['uWKGH'](join,_0x42b9ea['nunjL'](getRangerDir),ACTIVE_FEATURE_FILE);if(!_0x42b9ea[_0x2a7662(0x1f5)](existsSync,_0x43f9b5))return null;try{const _0xa7d666=await readFile(_0x43f9b5,_0x42b9ea[_0x2a7662(0x294)]);return _0xa7d666['trim']()||null;}catch{return null;}}async function setActiveFeatureId(_0x56a2a8){const _0x3b3bca=_0x5dcc67,_0x29baae={'OzYti':function(_0x49ed9a,_0x43cc8b,_0x37bdde){return _0x49ed9a(_0x43cc8b,_0x37bdde);},'uhSEg':function(_0x55b517,_0x3e8a85){return _0x55b517(_0x3e8a85);},'DtZNL':function(_0x2fd18f,_0x6b9995,_0x35bbb9,_0x1e69ef){return _0x2fd18f(_0x6b9995,_0x35bbb9,_0x1e69ef);},'dRPYN':_0x3b3bca(0x210)},_0x5aa5bf=getRangerDir(),_0x39ef6b=_0x29baae[_0x3b3bca(0x243)](join,_0x5aa5bf,ACTIVE_FEATURE_FILE);!_0x29baae['uhSEg'](existsSync,_0x5aa5bf)&&await mkdir(_0x5aa5bf,{'recursive':!![]}),await _0x29baae[_0x3b3bca(0x275)](writeFile,_0x39ef6b,_0x56a2a8,_0x29baae[_0x3b3bca(0x232)]);}function getProgressDisplay(_0x3aeef4){const _0x83f429=_0x5dcc67,_0x27e7c1={'OYgVD':function(_0x3b96de,_0x37f913){return _0x3b96de+_0x37f913;},'PTIQm':function(_0x5c6c28,_0x8ae5a7){return _0x5c6c28/_0x8ae5a7;},'byZfY':function(_0x565ce9,_0x331eba){return _0x565ce9>_0x331eba;}},_0x208451=_0x3aeef4[_0x83f429(0x1b9)]||0x0,_0x2dcd7b=_0x3aeef4['verificationInProgressItems']||0x0,_0x533e20=_0x3aeef4[_0x83f429(0x251)]||0x0,_0x5da170=_0x3aeef4[_0x83f429(0x278)]||0x0,_0x345dfb=_0x3aeef4['pendingItems']||0x0,_0x2bb981=_0x27e7c1['OYgVD'](_0x208451+_0x2dcd7b+_0x533e20+_0x5da170,_0x345dfb);if(_0x2bb981===0x0)return'-';const _0x3f7131=0xa,_0x5d49d9=Math[_0x83f429(0x25b)](_0x27e7c1[_0x83f429(0x24c)](_0x208451,_0x2bb981)*_0x3f7131),_0x679ff5='█'[_0x83f429(0x269)](_0x5d49d9)+'░'['repeat'](_0x3f7131-_0x5d49d9),_0x90e67e=[];if(_0x533e20>0x0)_0x90e67e['push'](_0x533e20+'\x20blocked');if(_0x27e7c1[_0x83f429(0x291)](_0x5da170,0x0))_0x90e67e[_0x83f429(0x27d)](_0x5da170+_0x83f429(0x1f4));if(_0x2dcd7b>0x0)_0x90e67e[_0x83f429(0x27d)](_0x2dcd7b+_0x83f429(0x26b));const _0x988933=_0x90e67e[_0x83f429(0x28e)]>0x0?'\x20('+_0x90e67e[_0x83f429(0x240)](',\x20')+')':'';return _0x679ff5+'\x20'+_0x208451+'/'+_0x2bb981+'\x20verified'+_0x988933;}function getCurrentSessionItems(_0x314fd2,_0x571553){const _0x15b697=_0x5dcc67;if(!_0x314fd2[_0x15b697(0x298)])return _0x571553['filter'](_0x4bd583=>!_0x4bd583[_0x15b697(0x1ce)]);return _0x571553[_0x15b697(0x1fc)](_0x2b7328=>_0x2b7328[_0x15b697(0x1ce)]===_0x314fd2[_0x15b697(0x298)]||!_0x2b7328[_0x15b697(0x1ce)]);}function displayFeature(_0x51fa27,_0x569e7a){const _0x46242b=_0x5dcc67,_0x1054cd={'umGyt':function(_0x3c462e,_0xc93a0){return _0x3c462e(_0xc93a0);},'gVKXA':function(_0x5b41c1,_0x38330a){return _0x5b41c1<_0x38330a;},'ngElm':_0x46242b(0x262),'bruPn':function(_0x2543d4,_0x96d0ac){return _0x2543d4===_0x96d0ac;},'hBWby':function(_0x20d681,_0x48ccf8){return _0x20d681===_0x48ccf8;},'tuBMW':_0x46242b(0x1d4),'HaKrx':function(_0x37d074,_0x42114c){return _0x37d074!==_0x42114c;},'OanMn':'verified','mEtCj':function(_0x30c8ff,_0xf6c15d){return _0x30c8ff+_0xf6c15d;},'AXLwG':function(_0xef03e2,_0x105fd4){return _0xef03e2===_0x105fd4;},'ChOkf':_0x46242b(0x20b),'CrDrO':function(_0x1202ba,_0x4baff3){return _0x1202ba===_0x4baff3;},'ozeSS':function(_0x5b4372,_0x24c3f2){return _0x5b4372===_0x24c3f2;},'aykNp':'approved','nddiX':function(_0x206e60,_0x59de13){return _0x206e60===_0x59de13;}};console[_0x46242b(0x1c2)]('\x0a'+_0x51fa27[_0x46242b(0x273)]+'\x20('+_0x51fa27['dashboardUrl']+')');_0x51fa27['stats']&&console[_0x46242b(0x1c2)]('\x20\x20\x20Progress:\x20'+_0x1054cd['umGyt'](getProgressDisplay,_0x51fa27[_0x46242b(0x200)]));_0x51fa27[_0x46242b(0x1b8)]&&console['log'](_0x46242b(0x1b7)+_0x51fa27[_0x46242b(0x1b8)]);_0x51fa27['gitRepoUrl']&&console[_0x46242b(0x1c2)]('\x20\x20\x20Repository:\x20'+_0x51fa27['gitRepoUrl']);_0x51fa27['gitBranch']&&console[_0x46242b(0x1c2)]('\x20\x20\x20Branch:\x20'+_0x51fa27['gitBranch']);console[_0x46242b(0x1c2)](_0x46242b(0x271)+new Date(_0x51fa27[_0x46242b(0x28b)])['toLocaleString']());_0x51fa27['completedAt']&&console['log']('\x20\x20\x20Completed:\x20'+new Date(_0x51fa27['completedAt'])['toLocaleString']());if(_0x569e7a&&_0x569e7a[_0x46242b(0x28e)]>0x0){console['log'](_0x46242b(0x213));for(let _0x3a7b79=0x0;_0x1054cd['gVKXA'](_0x3a7b79,_0x569e7a['length']);_0x3a7b79++){const _0x27025a=_0x569e7a[_0x3a7b79];let _0x36b83c;if(_0x27025a['status']===_0x1054cd[_0x46242b(0x214)]&&_0x1054cd[_0x46242b(0x1d6)](_0x27025a[_0x46242b(0x296)],_0x46242b(0x281)))_0x36b83c='✅';else{if(_0x1054cd[_0x46242b(0x241)](_0x27025a['status'],_0x46242b(0x2a7)))_0x36b83c='🟢';else{if(_0x1054cd['bruPn'](_0x27025a['status'],'incomplete'))_0x36b83c='🟠';else{if(_0x1054cd[_0x46242b(0x241)](_0x27025a['status'],_0x46242b(0x1fb)))_0x36b83c='🛑';else{if(_0x1054cd['bruPn'](_0x27025a['status'],_0x1054cd[_0x46242b(0x214)]))_0x36b83c='⛔';else _0x27025a['status']===_0x1054cd[_0x46242b(0x1f1)]?_0x36b83c='⏳':_0x36b83c='⬜';}}}}const _0x1a5df9=_0x27025a['version']>0x1?'\x20(v'+_0x27025a[_0x46242b(0x201)]+')':'',_0x2109c9=_0x27025a[_0x46242b(0x201)]>0x1&&_0x27025a[_0x46242b(0x1d3)]&&_0x1054cd['HaKrx'](_0x27025a['status'],_0x1054cd['ngElm'])&&_0x27025a[_0x46242b(0x236)]!==_0x1054cd[_0x46242b(0x253)]?'\x20[has\x20reviewer\x20feedback]':'';console[_0x46242b(0x1c2)]('\x20\x20\x20'+_0x1054cd[_0x46242b(0x1f6)](_0x3a7b79,0x1)+'.\x20'+_0x36b83c+'\x20'+_0x27025a['description']+_0x1a5df9+_0x2109c9);_0x1054cd['AXLwG'](_0x27025a['status'],_0x46242b(0x1fb))&&_0x27025a['blockedReason']&&console[_0x46242b(0x1c2)]('\x20\x20\x20\x20\x20\x20Blocked:\x20'+_0x27025a[_0x46242b(0x2a3)]);_0x27025a['status']===_0x1054cd['ChOkf']&&_0x27025a['incompleteReason']&&console[_0x46242b(0x1c2)](_0x46242b(0x1f7)+_0x27025a[_0x46242b(0x268)]);if(_0x1054cd['CrDrO'](_0x27025a['status'],_0x1054cd[_0x46242b(0x214)])&&_0x1054cd[_0x46242b(0x1fd)](_0x27025a[_0x46242b(0x296)],_0x1054cd[_0x46242b(0x270)]))console['log']('\x20\x20\x20\x20\x20\x20Approved');else _0x1054cd[_0x46242b(0x1be)](_0x27025a['status'],_0x1054cd[_0x46242b(0x214)])&&_0x27025a['canceledReason']&&console['log']('\x20\x20\x20\x20\x20\x20Cancelled:\x20'+_0x27025a[_0x46242b(0x1d1)]);}}}export async function featureCreate(_0x3a2403,_0x112c5c){const _0x7090fd=_0x5dcc67,_0x1e04e1={'MgffH':function(_0xabae1f){return _0xabae1f();},'JUrdT':function(_0x36ea91,_0x456049){return _0x36ea91(_0x456049);},'eDMuP':function(_0x1c829c,_0x3bdb49){return _0x1c829c(_0x3bdb49);}},{envNames:_0x2a2fe1}=await getEnvNames();_0x2a2fe1[_0x7090fd(0x28e)]===0x0&&console['warn']('\x0a'+formatProfileRequiredMessage(_0x18df4a=>bold(_0x18df4a)));const _0x1ba723=_0x112c5c['scenarios']?_0x112c5c['scenarios']['map'](_0x5cf848=>_0x5cf848['trim']()):[],_0x462f9a=_0x1e04e1['MgffH'](getGitRepoUrl),_0x59f92b=_0x1e04e1[_0x7090fd(0x207)](getGitBranch);console[_0x7090fd(0x1c2)](_0x7090fd(0x1e1));const _0x2b7c56=await _0x1e04e1[_0x7090fd(0x1ec)](createFeature,{'name':_0x3a2403,'description':_0x112c5c[_0x7090fd(0x1b8)],'checklist':_0x1ba723,'gitRepoUrl':_0x462f9a,'gitBranch':_0x59f92b});await _0x1e04e1[_0x7090fd(0x22a)](setActiveFeatureId,_0x2b7c56['id']),await tryStartCurrentSession(_0x2b7c56['id']);const _0x1eee27=process['env'][_0x7090fd(0x254)];_0x1eee27&®isterSession(_0x1eee27,_0x2b7c56['id']),console['log']('\x0a✅\x20Feature\x20review\x20created:\x20'+_0x2b7c56['id']),displayFeature(_0x2b7c56,_0x2b7c56['checklistItems']),console['log'](_0x7090fd(0x287));}export async function featureList(_0x512e01){const _0x3855de=_0x5dcc67,_0x390b15={'EyaTU':function(_0xd8acfd){return _0xd8acfd();},'QscPi':'\x0aNo\x20feature\x20reviews\x20found.','ogfPe':function(_0x1dc5b2,_0x1a827e){return _0x1dc5b2(_0x1a827e);},'zHqDC':'\x20--current-branch','qBxZF':_0x3855de(0x1c3)},_0x1922a1={'limit':_0x512e01['limit']??0xa,'offset':_0x512e01[_0x3855de(0x265)]??0x0,'includeDeleted':_0x512e01[_0x3855de(0x1c8)]};_0x512e01['currentBranch']&&(_0x1922a1['gitRepoUrl']=getGitRepoUrl(),_0x1922a1['gitBranch']=_0x390b15['EyaTU'](getGitBranch));const _0x3e4e96=await listFeatures(_0x1922a1);if(_0x3e4e96[_0x3855de(0x24e)][_0x3855de(0x28e)]===0x0){console['log'](_0x390b15[_0x3855de(0x1cb)]);return;}const _0x5e4440=_0x3e4e96[_0x3855de(0x21a)]>_0x3e4e96[_0x3855de(0x24e)]['length']?_0x3855de(0x1bb)+_0x3e4e96[_0x3855de(0x24e)][_0x3855de(0x28e)]+_0x3855de(0x1c6)+_0x3e4e96['totalCount']:_0x3e4e96[_0x3855de(0x21a)]+'\x20feature\x20review(s)\x20found';console[_0x3855de(0x1c2)]('\x0a'+_0x5e4440+':\x0a');for(const _0x24ffa9 of _0x3e4e96[_0x3855de(0x24e)]){console['log'](''+_0x24ffa9[_0x3855de(0x273)]),console[_0x3855de(0x1c2)]('\x20\x20\x20ID:\x20'+_0x24ffa9['id']),_0x24ffa9['stats']&&console['log']('\x20\x20\x20Progress:\x20'+_0x390b15[_0x3855de(0x1d8)](getProgressDisplay,_0x24ffa9['stats'])),_0x24ffa9[_0x3855de(0x1e8)]&&console[_0x3855de(0x1c2)](_0x3855de(0x29e)+_0x24ffa9[_0x3855de(0x1e8)]),console[_0x3855de(0x1c2)]('\x20\x20\x20Created:\x20'+new Date(_0x24ffa9['createdAt'])[_0x3855de(0x2a2)]()),console[_0x3855de(0x1c2)]('');}const _0x46354e=_0x1922a1['limit']??0xa,_0x4e1a30=(_0x1922a1['offset']??0x0)+_0x3e4e96['items'][_0x3855de(0x28e)];if(_0x4e1a30<_0x3e4e96['totalCount']){const _0x55d112=_0x46354e!==0xa?'\x20--limit\x20'+_0x46354e:'',_0xac9ab6=_0x512e01['currentBranch']?_0x390b15[_0x3855de(0x23a)]:'',_0x39443d=_0x512e01[_0x3855de(0x1c8)]?_0x390b15[_0x3855de(0x1d5)]:'';console[_0x3855de(0x1c2)](_0x3855de(0x21b)+_0x4e1a30+_0x55d112+_0xac9ab6+_0x39443d);}}export async function featureShow(_0x2247a7){const _0x35bdbd=_0x5dcc67,_0x2c1b93={'eFEdW':function(_0x37d7f9){return _0x37d7f9();},'CrHtN':function(_0x46c0b4,_0x3e6054){return _0x46c0b4(_0x3e6054);},'aGFJp':function(_0x392f55,_0x59a045,_0x4a9f30){return _0x392f55(_0x59a045,_0x4a9f30);}},_0x2f845c=_0x2247a7||await _0x2c1b93['eFEdW'](getActiveFeatureId);if(!_0x2f845c)throw new Error(_0x35bdbd(0x267));const _0x18715e=await _0x2c1b93['CrHtN'](getFeature,_0x2f845c);_0x2c1b93['aGFJp'](displayFeature,_0x18715e,_0x18715e['checklistItems']);}export async function featureResume(_0x516573){const _0x33d995=_0x5dcc67,_0x14c18d={'kjynm':function(_0x4c4be3){return _0x4c4be3();},'twdgc':function(_0x2ac0ac,_0x29a4c9){return _0x2ac0ac!==_0x29a4c9;},'xPsQN':function(_0x2463c2,_0x534b98,_0x537049){return _0x2463c2(_0x534b98,_0x537049);},'CJyRz':function(_0x196c38,_0x19f9d2){return _0x196c38(_0x19f9d2);},'heiix':function(_0x4912d0){return _0x4912d0();},'FXXag':function(_0x1b2717,_0x30258a){return _0x1b2717&&_0x30258a;},'twCpV':_0x33d995(0x20d),'dhjRp':function(_0x4ecd3a,_0x2126af){return _0x4ecd3a||_0x2126af;},'CobqF':'any','LNkbi':function(_0x40e647,_0x120a90){return _0x40e647(_0x120a90);},'YOWtt':'\x0aNo\x20matching\x20active\x20feature\x20reviews\x20found.','rRZwb':function(_0x1601ad,_0x2187d2){return _0x1601ad===_0x2187d2;},'EiGGs':'\x0aNon-interactive\x20mode\x20detected.\x20Multiple\x20feature\x20reviews\x20found:','Hzjdc':_0x33d995(0x245),'xmcWi':function(_0x27ce81,_0x2473c8){return _0x27ce81(_0x2473c8);},'xDruZ':function(_0x3b4257,_0x3088cd,_0x3dfd10){return _0x3b4257(_0x3088cd,_0x3dfd10);},'tQwRM':function(_0x3452bf,_0x5d834b){return _0x3452bf(_0x5d834b);}};if(_0x516573){const _0x23b214=await getFeature(_0x516573);await setActiveFeatureId(_0x23b214['id']);const _0x449b76=_0x14c18d[_0x33d995(0x230)](getGitBranch);_0x449b76&&_0x14c18d['twdgc'](_0x449b76,_0x23b214[_0x33d995(0x1e8)])&&(await _0x14c18d[_0x33d995(0x26d)](updateFeature,_0x23b214['id'],{'gitBranch':_0x449b76}),console[_0x33d995(0x1c2)]('\x20\x20\x20Updated\x20branch\x20to:\x20'+_0x449b76));console['log'](_0x33d995(0x1bc)+_0x23b214[_0x33d995(0x273)]+'\x20('+_0x23b214['id']+')'),await _0x14c18d[_0x33d995(0x279)](tryStartCurrentSession,_0x23b214['id']);const _0x3b0fa4=process[_0x33d995(0x1c1)][_0x33d995(0x254)];_0x3b0fa4&®isterSession(_0x3b0fa4,_0x23b214['id']);_0x14c18d['xPsQN'](displayFeature,_0x23b214,_0x23b214['checklistItems']),await printFeedbackNudge(_0x23b214['id']);return;}const _0x13e308=_0x14c18d[_0x33d995(0x230)](getGitRepoUrl),_0x271a6a=_0x14c18d[_0x33d995(0x1c4)](getGitBranch);if(_0x14c18d['FXXag'](!_0x13e308,!_0x271a6a))throw new Error(_0x14c18d[_0x33d995(0x23e)]);console['log'](_0x33d995(0x212)+(_0x13e308||'any')+_0x33d995(0x1bd)+_0x14c18d[_0x33d995(0x226)](_0x271a6a,_0x14c18d['CobqF'])+'...');const _0x18a572=await _0x14c18d[_0x33d995(0x257)](listFeatures,{'gitRepoUrl':_0x13e308,'gitBranch':_0x271a6a}),_0x4deabf=_0x18a572[_0x33d995(0x24e)]['filter'](_0xcb417d=>!_0xcb417d['completedAt']);if(_0x4deabf['length']===0x0){console[_0x33d995(0x1c2)](_0x14c18d['YOWtt']),console['log'](_0x33d995(0x28c));return;}let _0xf4b08e;if(_0x14c18d[_0x33d995(0x225)](_0x4deabf[_0x33d995(0x28e)],0x1))_0xf4b08e=_0x4deabf[0x0];else{const _0x35fb59=process[_0x33d995(0x264)]['isTTY']&&process[_0x33d995(0x246)][_0x33d995(0x1cc)];if(!_0x35fb59){console[_0x33d995(0x1c2)](_0x14c18d[_0x33d995(0x1f2)]);for(const _0x273625 of _0x4deabf){console['log']('\x20\x20'+_0x273625[_0x33d995(0x273)]),console['log']('\x20\x20\x20\x20\x20ID:\x20'+_0x273625['id']),_0x273625['stats']&&console[_0x33d995(0x1c2)]('\x20\x20\x20\x20\x20Progress:\x20'+getProgressDisplay(_0x273625[_0x33d995(0x200)])),_0x273625['gitBranch']&&console[_0x33d995(0x1c2)](_0x33d995(0x2a5)+_0x273625['gitBranch']);}throw new Error(_0x33d995(0x25e));}const {selected:_0x575f86}=await _0x16eea6[_0x33d995(0x293)]([{'type':_0x14c18d[_0x33d995(0x1de)],'name':_0x33d995(0x24b),'message':_0x33d995(0x208),'choices':_0x4deabf['map'](_0x4ff8ad=>({'name':_0x4ff8ad['name']+'\x20('+_0x4ff8ad['id']+')','value':_0x4ff8ad['id']}))}]);_0xf4b08e=_0x4deabf['find'](_0x584ffa=>_0x584ffa['id']===_0x575f86);}await _0x14c18d[_0x33d995(0x23f)](setActiveFeatureId,_0xf4b08e['id']);_0x271a6a&&_0x14c18d[_0x33d995(0x256)](_0x271a6a,_0xf4b08e[_0x33d995(0x1e8)])&&(await _0x14c18d[_0x33d995(0x22b)](updateFeature,_0xf4b08e['id'],{'gitBranch':_0x271a6a}),console['log']('\x20\x20\x20Updated\x20branch\x20to:\x20'+_0x271a6a));console['log']('\x0a✅\x20Resumed\x20feature\x20review:\x20'+_0xf4b08e[_0x33d995(0x273)]+'\x20('+_0xf4b08e['id']+')'),await tryStartCurrentSession(_0xf4b08e['id']);const _0x2697b6=await _0x14c18d['LNkbi'](getFeature,_0xf4b08e['id']),_0x3dd207=process['env'][_0x33d995(0x254)];_0x3dd207&&_0x14c18d[_0x33d995(0x22b)](registerSession,_0x3dd207,_0x2697b6['id']),displayFeature(_0x2697b6,_0x2697b6['checklistItems']),await _0x14c18d[_0x33d995(0x1bf)](printFeedbackNudge,_0x2697b6['id']);}async function printFeedbackNudge(_0x4d36d2){const _0x55e47e=_0x5dcc67,_0x6375fa={'JUwsy':function(_0xdcd417,_0xeff98d){return _0xdcd417>_0xeff98d;}};try{const {items:_0x12f8a4}=await getActionItems(_0x4d36d2);let _0x5b8b35=0x0,_0x3490ab=0x0;for(const _0x381536 of _0x12f8a4){const _0xe0da60=await getItemFeedback(_0x4d36d2,_0x381536['id']);_0x6375fa[_0x55e47e(0x292)](_0xe0da60['unaddressedComments']['length'],0x0)&&(_0x5b8b35+=_0xe0da60[_0x55e47e(0x26a)][_0x55e47e(0x28e)],_0x3490ab++);}_0x5b8b35>0x0&&(console[_0x55e47e(0x1c2)](_0x55e47e(0x247)+_0x5b8b35+'\x20unaddressed\x20reviewer\x20comment(s)\x20across\x20'+_0x3490ab+'\x20scenario(s).'),console[_0x55e47e(0x1c2)](_0x55e47e(0x1ef)));}catch{}}async function tryStartCurrentSession(_0x2ceb1d){const _0x505ca2=_0x5dcc67,_0x2b69d0={'QYBOw':function(_0x45e0ec,_0x35867e,_0x1c902b){return _0x45e0ec(_0x35867e,_0x1c902b);}};try{const {sessions:_0x2ed92e}=await listFeatureSessions(_0x2ceb1d),_0x37af7e=_0x2ed92e[_0x505ca2(0x206)](_0xb84fa7=>_0xb84fa7['status']==='ready');_0x37af7e&&(await _0x2b69d0['QYBOw'](startSession,_0x2ceb1d,_0x37af7e['id']),console['log'](_0x505ca2(0x25f)+_0x37af7e['iteration']));}catch{}}export async function featureReport(_0x524b03,_0x28edf2){const _0x59be00=_0x5dcc67,_0x2ef290={'kLGIl':function(_0x2fb5b3){return _0x2fb5b3();},'JAPyl':_0x59be00(0x2a1),'xoifZ':_0x59be00(0x1db),'dpjIC':function(_0x3d7524,_0x57e4a9,_0x4d2814){return _0x3d7524(_0x57e4a9,_0x4d2814);},'jSKoT':function(_0x57d031,_0x4d3c14){return _0x57d031(_0x4d3c14);},'FgHcX':_0x59be00(0x210)},_0x4989f6=_0x524b03||await _0x2ef290['kLGIl'](getActiveFeatureId);if(!_0x4989f6)throw new Error(_0x59be00(0x29b));console['log'](_0x2ef290['JAPyl']);const _0xd55f27=await getFeatureReportMarkdown(_0x4989f6,{'style':_0x28edf2['style']}),_0x5392c5=_0x28edf2[_0x59be00(0x23d)]||join(getRangerDir(),_0x2ef290[_0x59be00(0x29f)],_0x4989f6+_0x59be00(0x1eb)),_0x322127=_0x2ef290[_0x59be00(0x27a)](join,_0x5392c5,'..');!_0x2ef290['jSKoT'](existsSync,_0x322127)&&await mkdir(_0x322127,{'recursive':!![]}),await writeFile(_0x5392c5,_0xd55f27,_0x2ef290['FgHcX']),console[_0x59be00(0x1c2)](_0x59be00(0x1fe)+_0x5392c5);}function getScenarioResult(_0x3707da){const _0x4d173e=_0x5dcc67,_0x4ca02d={'WxBNu':function(_0x25fd2e,_0x283323){return _0x25fd2e===_0x283323;},'BnXHy':'closed','DKDRW':'verification_in_progress','MWGYd':_0x4d173e(0x26c)};if(_0x4ca02d[_0x4d173e(0x259)](_0x3707da['status'],_0x4ca02d['BnXHy']))return _0x3707da['terminalReason']??_0x4ca02d['BnXHy'];if(_0x3707da[_0x4d173e(0x236)]===_0x4ca02d[_0x4d173e(0x244)])return _0x4ca02d[_0x4d173e(0x285)];return _0x3707da['status'];}function getScenarioRationale(_0x3199cc,_0x3138f4){const _0x5e80ee=_0x5dcc67,_0x30c83d={'HqvCS':'4|3|5|2|1|0'},_0x526af0=_0x30c83d['HqvCS']['split']('|');let _0x261e3b=0x0;while(!![]){switch(_0x526af0[_0x261e3b++]){case'0':return null;case'1':if(_0x3199cc[_0x5e80ee(0x24f)])return _0x3199cc[_0x5e80ee(0x24f)];continue;case'2':if(_0x3199cc['canceledReason'])return _0x3199cc[_0x5e80ee(0x1d1)];continue;case'3':if(_0x3199cc['blockedReason'])return _0x3199cc[_0x5e80ee(0x2a3)];continue;case'4':if(_0x3138f4)return _0x3138f4;continue;case'5':if(_0x3199cc['incompleteReason'])return _0x3199cc['incompleteReason'];continue;}break;}}export async function featureReportPrDescription(_0x22a303,_0x5f499f){const _0x988dd=_0x5dcc67,_0x376bf5={'goabm':'No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.','pekqZ':function(_0x45f885,_0x49f67e,_0x3cf5ef){return _0x45f885(_0x49f67e,_0x3cf5ef);},'tlJOQ':function(_0x1457af,_0x32ed12){return _0x1457af===_0x32ed12;},'VzmYt':_0x988dd(0x1f9),'bQLOn':function(_0x538823,_0x37f151){return _0x538823>_0x37f151;},'UsWmN':'\x0aAvailable\x20scenarios:','BZiYn':function(_0x410170,_0x1c1239){return _0x410170===_0x1c1239;},'HNaNw':function(_0x8067ac,_0x6ce1f6,_0x448149){return _0x8067ac(_0x6ce1f6,_0x448149);}},_0x14985e=_0x22a303||await getActiveFeatureId();if(!_0x14985e)throw new Error(_0x376bf5['goabm']);const _0x1273a8=await getFeature(_0x14985e),_0x4b7a7e=_0x1273a8[_0x988dd(0x234)]||[],_0x109754=_0x376bf5[_0x988dd(0x231)](getCurrentSessionItems,_0x1273a8,_0x4b7a7e);_0x376bf5['tlJOQ'](_0x109754['length'],0x0)&&(console['error'](_0x376bf5['VzmYt']),process[_0x988dd(0x211)](0x1));const _0x56adbf=_0x5f499f['excludeScenarios']??[],_0x28714d=_0x56adbf[_0x988dd(0x1fc)](_0x529716=>!Number['isInteger'](_0x529716)||_0x529716<0x1||_0x529716>_0x109754['length']);if(_0x376bf5['bQLOn'](_0x28714d[_0x988dd(0x28e)],0x0)){console['error'](_0x988dd(0x209)+_0x28714d['join'](',\x20')),console['log'](_0x376bf5['UsWmN']);for(let _0x408d83=0x0;_0x408d83<_0x109754['length'];_0x408d83++){console[_0x988dd(0x1c2)]('\x20\x20'+(_0x408d83+0x1)+'.\x20'+_0x109754[_0x408d83][_0x988dd(0x1b8)]);}process[_0x988dd(0x211)](0x1);}const _0x3e39fa=new Set(_0x56adbf[_0x988dd(0x1d0)](_0x484b53=>_0x484b53-0x1)),_0x467e95=_0x109754['filter']((_0x2ab9eb,_0x57c3cb)=>!_0x3e39fa['has'](_0x57c3cb));_0x376bf5['BZiYn'](_0x467e95['length'],0x0)&&(console[_0x988dd(0x21d)]('\x0a❌\x20All\x20scenarios\x20were\x20excluded.'),process[_0x988dd(0x211)](0x1));if(_0x5f499f['json'])await outputJsonReport(_0x14985e,_0x1273a8,_0x467e95);else{const _0xabddc7=await _0x376bf5['HNaNw'](getFeatureReportMarkdown,_0x14985e,{'itemIds':_0x467e95[_0x988dd(0x1d0)](_0x4b0530=>_0x4b0530['id'])});process['stdout']['write'](_0xabddc7[_0x988dd(0x242)]()+'\x0a');}}async function outputJsonReport(_0x533aa4,_0x4eda0f,_0x2d5c9c){const _0x46a1f7=_0x5dcc67,_0x47a648={'Rdnaz':function(_0x516395,_0x5b1ba7){return _0x516395(_0x5b1ba7);},'nCpRn':function(_0x55b61d,_0x1c581b){return _0x55b61d>_0x1c581b;},'HsDaM':function(_0x36eedc,_0x260ffe){return _0x36eedc===_0x260ffe;},'hyLKT':function(_0x29271e,_0x49d0c1,_0xb73e9c){return _0x29271e(_0x49d0c1,_0xb73e9c);},'HnSDP':function(_0x574469,_0x115f8d){return _0x574469+_0x115f8d;}},_0x3bb8f8=getApiBaseUrl(),_0x40e8fc=await getFeatureReport(_0x533aa4),_0x5383cd=new Map(_0x40e8fc['checklistItems'][_0x46a1f7(0x1d0)](_0x514f2f=>[_0x514f2f['id'],_0x514f2f])),_0x4d29bb=await Promise[_0x46a1f7(0x21e)](_0x2d5c9c['map'](async _0x21fba9=>{const _0x5d3284=_0x46a1f7,_0x2ba784=_0x5383cd[_0x5d3284(0x235)](_0x21fba9['id']),_0x219585=_0x2ba784?.['linkedSession']??null;let _0x2566d2=[];if(_0x21fba9['browserSessionId'])try{const {steps:_0x216bae}=await _0x47a648[_0x5d3284(0x1c9)](getBrowserSessionSteps,_0x21fba9[_0x5d3284(0x21c)]);_0x47a648['nCpRn'](_0x216bae['length'],0x0)&&(_0x2566d2=_0x216bae[_0x5d3284(0x1d0)](_0x5ccc5d=>{const _0x618830=_0x5d3284,_0x6513a4=_0x5ccc5d['assets'][_0x618830(0x206)](_0x33e83c=>_0x33e83c[_0x618830(0x28f)]===_0x618830(0x282)&&_0x33e83c[_0x618830(0x218)]===_0x618830(0x27e))??_0x5ccc5d[_0x618830(0x22f)][_0x618830(0x206)](_0x47ce7b=>_0x47ce7b['assetType']===_0x618830(0x282));let _0x4a5745=null,_0xc69261=null;if(_0x6513a4){const _0x449e72=_0x6513a4['storage'][_0x618830(0x223)]['split']('/')['pop']();_0x4a5745=_0x3bb8f8+_0x618830(0x2a0)+_0x21fba9['browserSessionId']+_0x618830(0x26e)+_0x449e72,_0x449e72&&(_0xc69261=_0x449e72['replace'](/\.\w+$/,'')[_0x618830(0x297)](/^(key_)?\d+_/,'')['replace'](/[-_]/g,'\x20'));}return{'description':_0xc69261||_0x5ccc5d[_0x618830(0x1b8)]||_0x5ccc5d['stepName']||'Step\x20'+_0x5ccc5d[_0x618830(0x283)],'screenshot':_0x4a5745,'is_key_step':_0x5ccc5d[_0x618830(0x2a6)]};}));}catch{}return _0x47a648[_0x5d3284(0x20a)](_0x2566d2['length'],0x0)&&_0x219585?.[_0x5d3284(0x26f)]&&(_0x2566d2=_0x219585[_0x5d3284(0x26f)][_0x5d3284(0x1d0)]((_0x1c0ee4,_0x346ac9)=>({'description':'Screenshot\x20'+(_0x346ac9+0x1),'screenshot':_0x1c0ee4,'is_key_step':![]}))),{'description':_0x21fba9[_0x5d3284(0x1b8)],'result':getScenarioResult(_0x21fba9),'rationale':_0x47a648['hyLKT'](getScenarioRationale,_0x21fba9,_0x219585?.['agentResponse']),'steps':_0x2566d2};})),_0x446f39={'url':_0x4eda0f['dashboardUrl'],'scenarios':_0x4d29bb};process[_0x46a1f7(0x246)]['write'](_0x47a648[_0x46a1f7(0x1f0)](JSON[_0x46a1f7(0x27c)](_0x446f39,null,0x2),'\x0a'));}export async function featureConcludeSession(_0x12879e){const _0x12f1aa=_0x5dcc67,_0x59b901={'pPWHZ':function(_0x5f39ef){return _0x5f39ef();},'PLpii':'No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','fEOHH':function(_0x509d4f,_0x4dce16){return _0x509d4f(_0x4dce16);},'cnsNf':_0x12f1aa(0x1e2),'AoxSL':function(_0x1b3983,_0x5c4b8b){return _0x1b3983===_0x5c4b8b;},'mpDZa':_0x12f1aa(0x1c5),'xAEFR':function(_0x68f07a,_0x179005){return _0x68f07a!==_0x179005;},'xbqHG':_0x12f1aa(0x26c),'MjgTY':function(_0x2ab4f1,_0x35f90f,_0x2600c7){return _0x2ab4f1(_0x35f90f,_0x2600c7);}},_0x4a391c=_0x12879e||await _0x59b901[_0x12f1aa(0x1fa)](getActiveFeatureId);if(!_0x4a391c)throw new Error(_0x59b901['PLpii']);const _0x1dd9b1=await _0x59b901['fEOHH'](getFeature,_0x4a391c);if(!_0x1dd9b1[_0x12f1aa(0x298)])throw new Error(_0x59b901['cnsNf']);const {sessions:_0x8f288a}=await _0x59b901['fEOHH'](listFeatureSessions,_0x4a391c),_0x28b648=_0x8f288a['find'](_0x2fc069=>_0x2fc069['id']===_0x1dd9b1['currentSessionId']);if(!_0x28b648)throw new Error(_0x12f1aa(0x204));if(_0x59b901['AoxSL'](_0x28b648[_0x12f1aa(0x236)],_0x59b901['mpDZa'])){console[_0x12f1aa(0x1c2)]('\x0a✅\x20Session\x20is\x20already\x20completed.');return;}if(_0x59b901[_0x12f1aa(0x250)](_0x28b648[_0x12f1aa(0x236)],_0x59b901[_0x12f1aa(0x295)]))throw new Error(_0x12f1aa(0x205)+_0x28b648[_0x12f1aa(0x236)]);console[_0x12f1aa(0x1c2)]('\x0aConcluding\x20session...'),await _0x59b901['MjgTY'](concludeSession,_0x4a391c,_0x1dd9b1['currentSessionId']),console[_0x12f1aa(0x1c2)](_0x12f1aa(0x1dd)+_0x28b648['iteration']+_0x12f1aa(0x29d)),console[_0x12f1aa(0x1c2)](_0x12f1aa(0x224));}export async function featureSessions(_0x193d78){const _0x339be7=_0x5dcc67,_0x410e23={'lyVRk':_0x339be7(0x29b),'hPzBb':_0x339be7(0x27b),'DdHnT':function(_0x7338bf,_0x4bcfca){return _0x7338bf===_0x4bcfca;},'yJlvj':function(_0x12ad33,_0x43a00a){return _0x12ad33===_0x43a00a;},'doBjr':_0x339be7(0x26c)},_0x13c02e=_0x193d78||await getActiveFeatureId();if(!_0x13c02e)throw new Error(_0x410e23[_0x339be7(0x1e3)]);const _0x1d357e=await getFeature(_0x13c02e);console[_0x339be7(0x1c2)](_0x339be7(0x261)+_0x1d357e[_0x339be7(0x273)]+'\x0a');const {sessions:_0x4ff496}=await listFeatureSessions(_0x13c02e);if(_0x4ff496[_0x339be7(0x28e)]===0x0){console['log'](_0x410e23[_0x339be7(0x1da)]);return;}for(const _0x3772b9 of _0x4ff496){const _0x1e35c7=_0x410e23[_0x339be7(0x25d)](_0x3772b9['status'],_0x339be7(0x1c5))?'✅':_0x410e23['yJlvj'](_0x3772b9[_0x339be7(0x236)],_0x410e23[_0x339be7(0x1c7)])?'🔄':'▶️';console['log'](_0x1e35c7+_0x339be7(0x22c)+_0x3772b9['iteration']+'\x20('+_0x3772b9['id']+')'),console['log']('\x20\x20\x20Status:\x20'+_0x3772b9['status']),console[_0x339be7(0x1c2)]('\x20\x20\x20Created:\x20'+new Date(_0x3772b9['createdAt'])['toLocaleString']()),_0x3772b9['completedAt']&&console[_0x339be7(0x1c2)]('\x20\x20\x20Completed:\x20'+new Date(_0x3772b9[_0x339be7(0x1cf)])['toLocaleString']()),console[_0x339be7(0x1c2)]('');}}export async function featureAddScenario(_0x22563c,_0x15c964){const _0xd05cf9=_0x5dcc67,_0x27f240={'MTQSj':_0xd05cf9(0x267),'EvBMj':function(_0x1db000,_0x5c9bec){return _0x1db000(_0x5c9bec);},'zmWId':function(_0x12d3dd,_0x1be8cd,_0x1cee20){return _0x12d3dd(_0x1be8cd,_0x1cee20);}},_0x79e2ea=_0x15c964||await getActiveFeatureId();if(!_0x79e2ea)throw new Error(_0x27f240['MTQSj']);const _0x4d7ea7=await _0x27f240[_0xd05cf9(0x1f3)](getFeature,_0x79e2ea);if(_0x4d7ea7[_0xd05cf9(0x252)]&&!_0x4d7ea7[_0xd05cf9(0x252)]['submittedAt'])throw new Error(_0xd05cf9(0x249)+_0x4d7ea7[_0xd05cf9(0x216)]);await _0x27f240['zmWId'](createChecklistItem,_0x79e2ea,_0x22563c);const _0x5e22a4=await _0x27f240[_0xd05cf9(0x1f3)](getFeature,_0x79e2ea);console['log'](_0xd05cf9(0x221)),_0x27f240[_0xd05cf9(0x220)](displayFeature,_0x5e22a4,_0x5e22a4[_0xd05cf9(0x234)]);}export async function featureEditScenario(_0x4af1b2,_0x26d0eb){const _0x1e61ee=_0x5dcc67,_0x3be6d1={'KwAGB':'Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','CxOPw':function(_0x2e84ce,_0x3efcc5){return _0x2e84ce(_0x3efcc5);},'Dxyhg':'\x0a❌\x20Cannot\x20edit\x20scenario:\x20feature\x20review\x20has\x20an\x20active\x20review.','RozRg':function(_0x7c9a32,_0x3ea88f){return _0x7c9a32===_0x3ea88f;},'bggqm':_0x1e61ee(0x263),'dCJzb':function(_0x3d307b,_0x72947c){return _0x3d307b+_0x72947c;},'ZjWrJ':function(_0x3e4546,_0x223e59){return _0x3e4546-_0x223e59;},'hhfhB':function(_0x137719,_0x5963d6,_0x485caa){return _0x137719(_0x5963d6,_0x485caa);}},_0x3cad5d=_0x26d0eb['id']||await getActiveFeatureId();!_0x3cad5d&&(console['error']('\x0a❌\x20No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.'),console['error'](_0x3be6d1['KwAGB']),process[_0x1e61ee(0x211)](0x1));const _0x349180=await _0x3be6d1['CxOPw'](getFeature,_0x3cad5d);_0x349180['latestReview']&&!_0x349180[_0x1e61ee(0x252)]['submittedAt']&&(console[_0x1e61ee(0x21d)](_0x3be6d1['Dxyhg']),console[_0x1e61ee(0x21d)]('Please\x20finish\x20your\x20review\x20first:'),console[_0x1e61ee(0x21d)]('\x20\x20'+_0x349180[_0x1e61ee(0x216)]),process[_0x1e61ee(0x211)](0x1));const _0x5b8b2d=_0x349180['checklistItems']||[];_0x3be6d1['RozRg'](_0x5b8b2d['length'],0x0)&&(console[_0x1e61ee(0x21d)](_0x3be6d1['bggqm']),process['exit'](0x1));if(_0x26d0eb[_0x1e61ee(0x289)]===undefined){console[_0x1e61ee(0x21d)](_0x1e61ee(0x277)),console[_0x1e61ee(0x1c2)](_0x1e61ee(0x266));for(let _0x2ff26e=0x0;_0x2ff26e<_0x5b8b2d['length'];_0x2ff26e++){console['log']('\x20\x20'+_0x3be6d1[_0x1e61ee(0x233)](_0x2ff26e,0x1)+'.\x20'+_0x5b8b2d[_0x2ff26e]['description']);}process[_0x1e61ee(0x211)](0x1);}const _0x2caa75=_0x3be6d1[_0x1e61ee(0x1cd)](_0x26d0eb['scenario'],0x1);if(_0x2caa75<0x0||_0x2caa75>=_0x5b8b2d[_0x1e61ee(0x28e)]){console['error'](_0x1e61ee(0x20f)+_0x26d0eb['scenario']+'.\x20Feature\x20review\x20has\x20'+_0x5b8b2d[_0x1e61ee(0x28e)]+_0x1e61ee(0x229)),console[_0x1e61ee(0x1c2)]('\x0aAvailable\x20scenarios:');for(let _0x97c518=0x0;_0x97c518<_0x5b8b2d[_0x1e61ee(0x28e)];_0x97c518++){console[_0x1e61ee(0x1c2)]('\x20\x20'+(_0x97c518+0x1)+'.\x20'+_0x5b8b2d[_0x97c518][_0x1e61ee(0x1b8)]);}process[_0x1e61ee(0x211)](0x1);}const _0xaf10ee=_0x5b8b2d[_0x2caa75];await updateChecklistItem(_0x3cad5d,_0xaf10ee['id'],{'description':_0x4af1b2});const _0x5f5e0a=await getFeature(_0x3cad5d);console['log'](_0x1e61ee(0x28a)),_0x3be6d1['hhfhB'](displayFeature,_0x5f5e0a,_0x5f5e0a['checklistItems']);}async function downloadFeedbackImage(_0xe3f879,_0xb80cb9){const _0x4d2066=_0x5dcc67,_0x330a35={'vQYcM':function(_0x1e810d,_0x5e84a2,_0x4dcb3d){return _0x1e810d(_0x5e84a2,_0x4dcb3d);},'rSbPd':function(_0x5be819){return _0x5be819();},'sSyOA':'feedback-images'};try{const _0x4aa8b8=_0x330a35[_0x4d2066(0x24a)](join,_0x330a35['rSbPd'](getRangerDir),_0x330a35['sSyOA']);await mkdir(_0x4aa8b8,{'recursive':!![]});const _0x2bf6eb=_0x330a35['vQYcM'](join,_0x4aa8b8,_0x4d2066(0x24d)+_0xb80cb9+_0x4d2066(0x260)),_0x37260c=await fetch(_0xe3f879);if(!_0x37260c['ok'])return null;const _0x5ebedf=Buffer[_0x4d2066(0x217)](await _0x37260c['arrayBuffer']());return await writeFile(_0x2bf6eb,_0x5ebedf),_0x2bf6eb;}catch{return null;}}export async function featureGetReview(_0x496bcc){const _0x5cb07d=_0x5dcc67,_0x4ce032={'aQUgB':function(_0x2f4f33,_0x1b82f5){return _0x2f4f33(_0x1b82f5);},'VLqUS':function(_0x303d3a,_0x13fe70){return _0x303d3a===_0x13fe70;},'Wtosj':function(_0x1ddfeb,_0x4dc946){return _0x1ddfeb<_0x4dc946;},'FnCxV':function(_0xca6df4,_0x133a90){return _0xca6df4>_0x133a90;},'wdbcC':function(_0x4e1425,_0x2f64f9,_0x1fc820){return _0x4e1425(_0x2f64f9,_0x1fc820);},'TGEYe':'en-US','RNSjP':'short','HwjRE':'Unknown','WDcqR':_0x5cb07d(0x1dc),'ONBuG':_0x5cb07d(0x29c),'HIKbd':function(_0x3572d2,_0xde8f84){return _0x3572d2+_0xde8f84;}},_0x49fb1b=_0x496bcc||await getActiveFeatureId();if(!_0x49fb1b)throw new Error(_0x5cb07d(0x267));const _0x93a271=await getFeature(_0x49fb1b),{items:_0x58cb2c}=await _0x4ce032['aQUgB'](getActionItems,_0x49fb1b);console['log'](_0x5cb07d(0x255)+_0x93a271[_0x5cb07d(0x273)]+'\x20('+_0x93a271['id']+')\x0a');if(_0x4ce032['VLqUS'](_0x58cb2c['length'],0x0)){console[_0x5cb07d(0x1c2)]('No\x20scenarios\x20found.');return;}for(let _0xbe1f14=0x0;_0x4ce032[_0x5cb07d(0x1d9)](_0xbe1f14,_0x58cb2c[_0x5cb07d(0x28e)]);_0xbe1f14++){const _0x4e94f3=_0x58cb2c[_0xbe1f14],_0x4018fa=_0x4ce032[_0x5cb07d(0x27f)](_0x4e94f3[_0x5cb07d(0x201)],0x1)?_0x5cb07d(0x1ea)+_0x4e94f3['version']+')':'',_0x2b7294=await _0x4ce032[_0x5cb07d(0x248)](getItemFeedback,_0x49fb1b,_0x4e94f3['id']);if(_0x2b7294[_0x5cb07d(0x26a)][_0x5cb07d(0x28e)]>0x0){console['log']('Scenario\x20'+(_0xbe1f14+0x1)+_0x5cb07d(0x1e4)+_0x4e94f3[_0x5cb07d(0x1b8)]+'\x22'+_0x4018fa+_0x5cb07d(0x202)+_0x2b7294[_0x5cb07d(0x26a)]['length']+'\x20unaddressed\x20comment(s)');for(const _0x34281d of _0x2b7294[_0x5cb07d(0x26a)]){const _0x180893=new Date(_0x34281d[_0x5cb07d(0x28b)])['toLocaleDateString'](_0x4ce032['TGEYe'],{'month':_0x4ce032[_0x5cb07d(0x1e6)],'day':_0x5cb07d(0x20e)}),_0x39c9c8=_0x34281d[_0x5cb07d(0x22e)]||_0x34281d[_0x5cb07d(0x1e5)]||_0x4ce032[_0x5cb07d(0x274)];console[_0x5cb07d(0x1c2)](_0x5cb07d(0x1ca)+_0x39c9c8+'\x20('+_0x180893+'):\x20\x22'+_0x34281d['content']+'\x22');if(_0x34281d['assetUrl']){const _0x4dc0f7=await downloadFeedbackImage(_0x34281d[_0x5cb07d(0x228)],_0x34281d['id']);_0x4dc0f7&&console[_0x5cb07d(0x1c2)](_0x5cb07d(0x290)+_0x4dc0f7);}if(_0x34281d['domRef']){const _0x177f80=_0x34281d[_0x5cb07d(0x25c)][_0x5cb07d(0x272)]['split'](_0x4ce032['WDcqR'])[_0x5cb07d(0x2a4)]()?.['split'](':')[0x0]||_0x5cb07d(0x1d7),_0x511797=_0x34281d[_0x5cb07d(0x25c)][_0x5cb07d(0x1f8)]?'\x20\x22'+_0x34281d[_0x5cb07d(0x25c)][_0x5cb07d(0x1f8)]['slice'](0x0,0x3c)+'\x22':'';console['log'](_0x5cb07d(0x25a)+_0x177f80+'>'+_0x511797),console['log'](_0x5cb07d(0x276)+_0x34281d['domRef']['selector']);}else{if(_0x34281d['spatial']){const _0x34631d=_0x34281d[_0x5cb07d(0x219)][_0x5cb07d(0x1ed)];_0x34281d['spatial'][_0x5cb07d(0x1e0)]===_0x4ce032['ONBuG']&&_0x34631d['length']>=0x2?console['log'](_0x5cb07d(0x284)+_0x34631d[0x0][_0x5cb07d(0x227)](0x2)+',\x20'+_0x34631d[0x1]['toFixed'](0x2)+')'):console['log']('\x20\x20\x20\x20\x20📍\x20Annotation:\x20'+_0x34281d['spatial']['type']+'\x20at\x20['+_0x34631d[_0x5cb07d(0x1d0)](_0x4e97b1=>_0x4e97b1[_0x5cb07d(0x227)](0x2))['join'](',\x20')+']');}}}if(_0x2b7294['canonicalFlow']){console['log'](_0x5cb07d(0x288));for(const _0x5f07d1 of _0x2b7294['canonicalFlow'][_0x5cb07d(0x21f)]('\x0a')){console['log']('\x20\x20\x20\x20'+_0x5f07d1);}}}else console[_0x5cb07d(0x1c2)](_0x5cb07d(0x1d2)+_0x4ce032[_0x5cb07d(0x1e9)](_0xbe1f14,0x1)+_0x5cb07d(0x1e4)+_0x4e94f3[_0x5cb07d(0x1b8)]+'\x22'+_0x4018fa+_0x5cb07d(0x20c)),console[_0x5cb07d(0x1c2)]('\x20\x20✅\x20No\x20feedback\x20to\x20address');console['log']('');}}export async function featureDelete(_0x1ffb9e){const _0x573bb0=_0x5dcc67,_0x1d5d24={'buhON':'No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','Dlhjk':function(_0x30e7fc,_0x2b90f3){return _0x30e7fc(_0x2b90f3);},'pVfsY':function(_0x26c691,_0x437858){return _0x26c691+_0x437858;},'lsMMH':'\x20\x20\x20To\x20restore\x20it,\x20run:\x20ranger\x20restore\x20'},_0x3b7027=_0x1ffb9e||await getActiveFeatureId();if(!_0x3b7027)throw new Error(_0x1d5d24[_0x573bb0(0x22d)]);const _0x561b4f=await getFeature(_0x3b7027);await _0x1d5d24[_0x573bb0(0x222)](softDeleteFeature,_0x3b7027),console['log']('\x0a🗑️\x20\x20Deleted\x20feature\x20review:\x20'+_0x561b4f[_0x573bb0(0x273)]+'\x20('+_0x3b7027+')'),console[_0x573bb0(0x1c2)](_0x1d5d24[_0x573bb0(0x215)](_0x1d5d24['lsMMH'],_0x3b7027));}export async function featureRestore(_0x132a8c){const _0x40ac7f=_0x5dcc67,_0xd2ca03={'GzFTN':function(_0x1c3ab7,_0x1478bb){return _0x1c3ab7(_0x1478bb);}};await _0xd2ca03[_0x40ac7f(0x1ff)](restoreFeature,_0x132a8c);const _0x45442d=await _0xd2ca03['GzFTN'](getFeature,_0x132a8c);console['log'](_0x40ac7f(0x1df)+_0x45442d[_0x40ac7f(0x273)]+'\x20('+_0x132a8c+')'),displayFeature(_0x45442d,_0x45442d['checklistItems']);}
|
|
1
|
+
const _0x21c156=_0x3ce5;(function(_0x2eb9e2,_0x446790){const _0x5943af=_0x3ce5,_0x4bd7ad=_0x2eb9e2();while(!![]){try{const _0x2e18c5=parseInt(_0x5943af(0x219))/0x1+parseInt(_0x5943af(0x1d3))/0x2+parseInt(_0x5943af(0x209))/0x3*(parseInt(_0x5943af(0x160))/0x4)+parseInt(_0x5943af(0x15a))/0x5+parseInt(_0x5943af(0x1ca))/0x6*(-parseInt(_0x5943af(0x22f))/0x7)+-parseInt(_0x5943af(0x216))/0x8+-parseInt(_0x5943af(0x1f8))/0x9*(parseInt(_0x5943af(0x20b))/0xa);if(_0x2e18c5===_0x446790)break;else _0x4bd7ad['push'](_0x4bd7ad['shift']());}catch(_0x4335e8){_0x4bd7ad['push'](_0x4bd7ad['shift']());}}}(_0x6e08,0x4fbd3));import{readFile,writeFile,mkdir}from'fs/promises';import{join}from'path';import{existsSync}from'fs';import{execSync}from'child_process';import _0x384464 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=_0x4c36a6=>_0x21c156(0x202)+_0x4c36a6+_0x21c156(0x213);function getGitRepoUrl(){const _0x1547ff=_0x21c156,_0x27fb04={'zUWyS':'github.com/'};try{const _0xd2caf1=execSync('git\x20remote\x20get-url\x20origin',{'encoding':_0x1547ff(0x1c8),'stdio':[_0x1547ff(0x1bf),_0x1547ff(0x1bf),_0x1547ff(0x1bf)]})['trim']();return _0xd2caf1['replace'](/\.git$/,'')['replace'](/^git@github\.com:/,_0x27fb04['zUWyS'])[_0x1547ff(0x1ce)](/^https?:\/\//,'');}catch{return undefined;}}function getGitBranch(){const _0x583714={'lOqFN':'git\x20rev-parse\x20--abbrev-ref\x20HEAD'};try{return execSync(_0x583714['lOqFN'],{'encoding':'utf-8','stdio':['pipe','pipe','pipe']})['trim']();}catch{return undefined;}}export async function getActiveFeatureId(){const _0x2a0c26=_0x21c156,_0x3dde56={'LbStA':function(_0x3a0607){return _0x3a0607();}},_0x17b26d=join(_0x3dde56[_0x2a0c26(0x195)](getRangerDir),ACTIVE_FEATURE_FILE);if(!existsSync(_0x17b26d))return null;try{const _0x1227a5=await readFile(_0x17b26d,_0x2a0c26(0x1c8));return _0x1227a5['trim']()||null;}catch{return null;}}function _0x6e08(){const _0x210fba=['iuRfD','submittedAt','BVZnh','filter','error','verificationInProgressItems','bipeS','jfgid','name','\x20\x20\x20▶️\x20Started\x20session\x20','completed','Next\x20page:\x20ranger\x20list\x20--offset\x20','jlkIO','iteration','currentSessionId','all','/artifacts/','QLAOo','isKeyStep','\x0aNo\x20feature\x20reviews\x20found.','ZLbdc','MCpUc','push','LbStA','closed','point','\x20concluded.','gitBranch','map','\x0a✅\x20Report\x20generated:\x20','OqZvU','bDEyD','OKLQA','woRir','UXKCz','Lazvv','jZnDi','\x20/\x20','pYmsL','WnDCN','\x0aAvailable\x20scenarios:','\x20\x20\x20ID:\x20','incompleteItems','isInteger','\x20\x20\x20\x20\x20\x20Cancelled:\x20','cHqBh','items','latestReview','join','prompt','\x20\x20\x20Updated\x20branch\x20to:\x20','HXukM','Current\x20session\x20not\x20found.','\x20unaddressed\x20comment(s)','spatial','BUzYi','pjOBP','Scenario\x20','\x0a❌\x20All\x20scenarios\x20were\x20excluded.','phcaJ','OMaiv','assetUrl','\x0a❌\x20Invalid\x20scenario\x20number(s):\x20',':\x20\x22','NGniQ','pipe','excludeScenarios','\x20verified','sessionId','output','OSLFu','currentBranch','tyxmG','stdout','utf-8','get','121338uqfGZp','No\x20sessions\x20found.','\x20scenarios.','wZJuh','replace','tGZMd','verifiedItems','kyGjf','Not\x20in\x20a\x20git\x20repository.','1281072wOLihw','\x0a❌\x20Cannot\x20edit\x20scenario:\x20feature\x20review\x20has\x20an\x20active\x20review.','TNCTF','totalCount','browserSessionId','\x20>\x20','\x20\x20\x20Run\x20`ranger\x20get-review`\x20to\x20see\x20what\x20needs\x20to\x20be\x20fixed.','Yynmc','\x20[has\x20reviewer\x20feedback]','LZrDb','\x20\x20\x20Branch:\x20','\x20\x20\x20\x20\x20\x20Approved','assets','exBRU','createdAt','YFKmR','SZGMA','dashboardUrl','\x20\x20\x20The\x20feature\x20review\x20is\x20now\x20ready\x20for\x20human\x20review\x20on\x20the\x20Ranger\x20dashboard.','includeDeleted','exit','fbqkB','Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','jxjDp','\x20--include-deleted','completedAt','limit','Please\x20specify\x20the\x20feature\x20review\x20ID:\x20ranger\x20resume\x20<id>','CLAUDE_SESSION_ID','screenshotUrls','stats','log','cozSa','yOOEn','terminalReason','EtgdZ','length','4171113VeDYmL','rsjoR','checklistItems','\x0a✅\x20Scenario\x20added','MCNoX','toLocaleString','\x0a❌\x20No\x20scenarios\x20found\x20to\x20include.','\x0a❌\x20No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.','ready','toLocaleDateString','\x1b[1m','XRDMZ','stringify','gitRepoUrl','CqRdH','assetType','QKmMi','2949ksRrUP','BNxaO','10lLuPqv','\x0aNon-interactive\x20mode\x20detected.\x20Multiple\x20feature\x20reviews\x20found:','CagPG','rpACs','rdnSb','TPJBq','split','\x20(v','\x1b[0m','verification_in_progress','description','3945336gvafaZ','BZalG','\x0a⚠️\x20\x20','330182VevRce','incomplete','Cannot\x20add\x20scenario:\x20feature\x20review\x20has\x20an\x20active\x20review.\x20Please\x20finish\x20your\x20review\x20first:\x20','position','qWPfZ','domRef','any','/api/v1/mcp/browser-sessions/','type','\x0a✅\x20Feature\x20review\x20created:\x20','status','RVjzE','location','timing','version','\x20\x20\x20Completed:\x20','linkedSession','wXRxk','coordinates','canonicalFlow','authorName','warn','77EIeUin','repeat','offset','xFaHw','\x0a✅\x20Scenario\x20updated','pop','style','\x20\x20\x20Created:\x20','RLzmt','\x0a✅\x20Resumed\x20feature\x20review:\x20','stdin','2124370lFGhcT','bQqjx','No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.','unaddressedComments','FjHyQ','canceledReason','448fehRZd','sHVdp','numeric','slice','\x20\x20\x20\x20\x20📍\x20Annotation:\x20','\x0a\x20\x20\x20Scenarios:','No\x20active\x20session\x20for\x20this\x20feature\x20review.','toFixed','agentResponse','\x20feature\x20review(s)\x20found','No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','uwSxS','scenarios','incompleteReason','.\x20Feature\x20review\x20has\x20','\x0a❌\x20No\x20scenario\x20number\x20provided.\x20Use\x20--scenario\x20<number>.','\x0a❌\x20Invalid\x20scenario\x20index:\x20','blockedReason','rlsuF','mwkgx','Showing\x20','find','env','verified','IFJMC','blocked','YuJVk','approved','scenario','\x20\x20\x20\x20\x20📋\x20Selector:\x20'];_0x6e08=function(){return _0x210fba;};return _0x6e08();}async function setActiveFeatureId(_0x298cd1){const _0x541ddb=_0x21c156,_0x4f0174={'GoBkR':function(_0x58a3c8){return _0x58a3c8();},'rpACs':function(_0x3e8e1f,_0x4e4a0d,_0x1e64f){return _0x3e8e1f(_0x4e4a0d,_0x1e64f);},'rqcyw':function(_0x5c794c,_0x1b6541,_0x242654,_0x2b0992){return _0x5c794c(_0x1b6541,_0x242654,_0x2b0992);},'fbqkB':_0x541ddb(0x1c8)},_0x2cd216=_0x4f0174['GoBkR'](getRangerDir),_0x52ced9=_0x4f0174['rpACs'](join,_0x2cd216,ACTIVE_FEATURE_FILE);!existsSync(_0x2cd216)&&await _0x4f0174[_0x541ddb(0x20e)](mkdir,_0x2cd216,{'recursive':!![]}),await _0x4f0174['rqcyw'](writeFile,_0x52ced9,_0x298cd1,_0x4f0174[_0x541ddb(0x1e8)]);}function getProgressDisplay(_0x1939a5){const _0x67f7ff=_0x21c156,_0x18a472={'RVjzE':function(_0x627fb2,_0x15db5a){return _0x627fb2+_0x15db5a;},'MpoET':function(_0x5a4139,_0x282a36){return _0x5a4139/_0x282a36;},'ctXaK':function(_0x4f5dfa,_0x12c8f2){return _0x4f5dfa+_0x12c8f2;},'TPJBq':function(_0x15f638,_0x2f4709){return _0x15f638>_0x2f4709;}},_0x53831b=_0x1939a5[_0x67f7ff(0x1d0)]||0x0,_0x26cf67=_0x1939a5[_0x67f7ff(0x183)]||0x0,_0x242560=_0x1939a5['blockedItems']||0x0,_0x3b0f11=_0x1939a5[_0x67f7ff(0x1a8)]||0x0,_0x54aada=_0x1939a5['pendingItems']||0x0,_0x480208=_0x18a472['RVjzE'](_0x18a472[_0x67f7ff(0x224)](_0x18a472['RVjzE'](_0x53831b+_0x26cf67,_0x242560),_0x3b0f11),_0x54aada);if(_0x480208===0x0)return'-';const _0xc791dc=0xa,_0x540ffb=Math['round'](_0x18a472['MpoET'](_0x53831b,_0x480208)*_0xc791dc),_0x5100b7=_0x18a472['ctXaK']('█'['repeat'](_0x540ffb),'░'[_0x67f7ff(0x230)](_0xc791dc-_0x540ffb)),_0x28336f=[];if(_0x242560>0x0)_0x28336f[_0x67f7ff(0x194)](_0x242560+'\x20blocked');if(_0x3b0f11>0x0)_0x28336f['push'](_0x3b0f11+'\x20incomplete');if(_0x26cf67>0x0)_0x28336f[_0x67f7ff(0x194)](_0x26cf67+'\x20in\x20progress');const _0x2cf969=_0x18a472[_0x67f7ff(0x210)](_0x28336f['length'],0x0)?'\x20('+_0x28336f['join'](',\x20')+')':'';return _0x5100b7+'\x20'+_0x53831b+'/'+_0x480208+_0x67f7ff(0x1c1)+_0x2cf969;}function getCurrentSessionItems(_0x10a9d3,_0x42c841){const _0x58291f=_0x21c156;if(!_0x10a9d3[_0x58291f(0x18c)])return _0x42c841[_0x58291f(0x181)](_0x41c256=>!_0x41c256[_0x58291f(0x1c2)]);return _0x42c841['filter'](_0xe5ddda=>_0xe5ddda['sessionId']===_0x10a9d3['currentSessionId']||!_0xe5ddda['sessionId']);}function displayFeature(_0x4231a9,_0x558467){const _0x4ac2e7=_0x21c156,_0x1e1a1b={'QLAOo':function(_0x430a0d,_0x6ddb39){return _0x430a0d<_0x6ddb39;},'sHVdp':function(_0x505bae,_0x596443){return _0x505bae===_0x596443;},'BZalG':_0x4ac2e7(0x196),'qfYgX':function(_0x235ba3,_0x4c8413){return _0x235ba3===_0x4c8413;},'BUzYi':'incomplete','OqZvU':function(_0x1598d4,_0x19834b){return _0x1598d4>_0x19834b;},'RLzmt':function(_0x2089ce,_0x236a95){return _0x2089ce!==_0x236a95;},'cozSa':function(_0x4b2738,_0x2f3c3e){return _0x4b2738!==_0x2f3c3e;},'bpszf':_0x4ac2e7(0x1db),'CjDTK':function(_0x550ca5,_0xf43bcd){return _0x550ca5===_0xf43bcd;},'CkKyi':function(_0x409e4f,_0x318083){return _0x409e4f===_0x318083;},'hfQej':function(_0x5e17f7,_0x4ef262){return _0x5e17f7===_0x4ef262;},'lKkar':_0x4ac2e7(0x17b)};console[_0x4ac2e7(0x1f2)]('\x0a'+_0x4231a9['name']+'\x20('+_0x4231a9['dashboardUrl']+')');_0x4231a9['stats']&&console[_0x4ac2e7(0x1f2)]('\x20\x20\x20Progress:\x20'+getProgressDisplay(_0x4231a9['stats']));_0x4231a9[_0x4ac2e7(0x215)]&&console['log']('\x20\x20\x20Description:\x20'+_0x4231a9['description']);_0x4231a9[_0x4ac2e7(0x205)]&&console['log']('\x20\x20\x20Repository:\x20'+_0x4231a9[_0x4ac2e7(0x205)]);_0x4231a9['gitBranch']&&console[_0x4ac2e7(0x1f2)](_0x4ac2e7(0x1dd)+_0x4231a9[_0x4ac2e7(0x199)]);console[_0x4ac2e7(0x1f2)](_0x4ac2e7(0x236)+new Date(_0x4231a9['createdAt'])[_0x4ac2e7(0x1fd)]());_0x4231a9['completedAt']&&console[_0x4ac2e7(0x1f2)](_0x4ac2e7(0x228)+new Date(_0x4231a9[_0x4ac2e7(0x1ec)])['toLocaleString']());if(_0x558467&&_0x558467['length']>0x0){console[_0x4ac2e7(0x1f2)](_0x4ac2e7(0x165));for(let _0x50aef8=0x0;_0x1e1a1b[_0x4ac2e7(0x18f)](_0x50aef8,_0x558467[_0x4ac2e7(0x1f7)]);_0x50aef8++){const _0xdd81d6=_0x558467[_0x50aef8];let _0x33e621;if(_0x1e1a1b[_0x4ac2e7(0x161)](_0xdd81d6[_0x4ac2e7(0x223)],_0x1e1a1b[_0x4ac2e7(0x217)])&&_0xdd81d6['terminalReason']===_0x4ac2e7(0x17b))_0x33e621='✅';else{if(_0x1e1a1b['qfYgX'](_0xdd81d6[_0x4ac2e7(0x223)],_0x4ac2e7(0x177)))_0x33e621='🟢';else{if(_0xdd81d6[_0x4ac2e7(0x223)]===_0x1e1a1b[_0x4ac2e7(0x1b5)])_0x33e621='🟠';else{if(_0xdd81d6['status']===_0x4ac2e7(0x179))_0x33e621='🛑';else{if(_0xdd81d6[_0x4ac2e7(0x223)]==='closed')_0x33e621='⛔';else _0xdd81d6['status']==='verification_in_progress'?_0x33e621='⏳':_0x33e621='⬜';}}}}const _0x21c7d9=_0x1e1a1b[_0x4ac2e7(0x19c)](_0xdd81d6[_0x4ac2e7(0x227)],0x1)?'\x20(v'+_0xdd81d6['version']+')':'',_0x472d03=_0xdd81d6['version']>0x1&&_0xdd81d6['parentItemId']&&_0x1e1a1b[_0x4ac2e7(0x237)](_0xdd81d6['status'],_0x1e1a1b[_0x4ac2e7(0x217)])&&_0x1e1a1b[_0x4ac2e7(0x1f3)](_0xdd81d6['status'],'verified')?_0x1e1a1b['bpszf']:'';console['log']('\x20\x20\x20'+(_0x50aef8+0x1)+'.\x20'+_0x33e621+'\x20'+_0xdd81d6['description']+_0x21c7d9+_0x472d03);_0x1e1a1b['qfYgX'](_0xdd81d6['status'],_0x4ac2e7(0x179))&&_0xdd81d6['blockedReason']&&console['log']('\x20\x20\x20\x20\x20\x20Blocked:\x20'+_0xdd81d6['blockedReason']);_0x1e1a1b['CjDTK'](_0xdd81d6[_0x4ac2e7(0x223)],_0x4ac2e7(0x21a))&&_0xdd81d6['incompleteReason']&&console['log']('\x20\x20\x20\x20\x20\x20Incomplete:\x20'+_0xdd81d6[_0x4ac2e7(0x16d)]);if(_0x1e1a1b['CkKyi'](_0xdd81d6['status'],_0x1e1a1b['BZalG'])&&_0x1e1a1b['hfQej'](_0xdd81d6[_0x4ac2e7(0x1f5)],_0x1e1a1b['lKkar']))console[_0x4ac2e7(0x1f2)](_0x4ac2e7(0x1de));else _0xdd81d6['status']==='closed'&&_0xdd81d6['canceledReason']&&console[_0x4ac2e7(0x1f2)](_0x4ac2e7(0x1aa)+_0xdd81d6[_0x4ac2e7(0x15f)]);}}}export async function featureCreate(_0x152aa7,_0x4e8671){const _0x599597=_0x21c156,_0x581863={'bipeS':function(_0x5d530e){return _0x5d530e();},'rsUAv':function(_0x4430ce){return _0x4430ce();},'trGkH':function(_0x2c55b0,_0xcf95e0){return _0x2c55b0(_0xcf95e0);},'uXYPy':function(_0x40e086,_0x416468){return _0x40e086(_0x416468);},'HXukM':function(_0x2d2b41,_0x465622,_0x4a35d3){return _0x2d2b41(_0x465622,_0x4a35d3);}},{envNames:_0x56ffe5}=await getEnvNames();_0x56ffe5[_0x599597(0x1f7)]===0x0&&console[_0x599597(0x22e)]('\x0a'+formatProfileRequiredMessage(_0x32d2e7=>bold(_0x32d2e7)));const _0x5f4ce1=_0x4e8671[_0x599597(0x16c)]?_0x4e8671['scenarios'][_0x599597(0x19a)](_0x4f77a9=>_0x4f77a9['trim']()):[],_0x4a7311=_0x581863[_0x599597(0x184)](getGitRepoUrl),_0x196274=_0x581863['rsUAv'](getGitBranch);console[_0x599597(0x1f2)]('\x0aCreating\x20feature\x20review...');const _0x21ef71=await createFeature({'name':_0x152aa7,'description':_0x4e8671['description'],'checklist':_0x5f4ce1,'gitRepoUrl':_0x4a7311,'gitBranch':_0x196274});await _0x581863['trGkH'](setActiveFeatureId,_0x21ef71['id']),await _0x581863['uXYPy'](tryStartCurrentSession,_0x21ef71['id']);const _0x10d580=process[_0x599597(0x176)][_0x599597(0x1ef)];_0x10d580&&_0x581863[_0x599597(0x1b1)](registerSession,_0x10d580,_0x21ef71['id']),console['log'](_0x599597(0x222)+_0x21ef71['id']),displayFeature(_0x21ef71,_0x21ef71[_0x599597(0x1fa)]),console[_0x599597(0x1f2)]('\x0a➡️\x20\x20Set\x20as\x20active\x20feature\x20review');}export async function featureList(_0x3e37fe){const _0xdac523=_0x21c156,_0x350ea6={'EtgdZ':function(_0x26e88d,_0x374393){return _0x26e88d(_0x374393);},'kyGjf':_0xdac523(0x191),'LNtBm':function(_0x28458a,_0x4ac6ab){return _0x28458a>_0x4ac6ab;},'KHqGh':function(_0x210340,_0x1c858d){return _0x210340+_0x1c858d;},'CqRdH':function(_0x2c820c,_0x1bfa58){return _0x2c820c<_0x1bfa58;},'kfiVd':function(_0x45f34c,_0x1d4f3d){return _0x45f34c!==_0x1d4f3d;},'pYmsL':_0xdac523(0x1eb)},_0xddb9c3={'limit':_0x3e37fe['limit']??0xa,'offset':_0x3e37fe[_0xdac523(0x231)]??0x0,'includeDeleted':_0x3e37fe[_0xdac523(0x1e6)]};_0x3e37fe['currentBranch']&&(_0xddb9c3[_0xdac523(0x205)]=getGitRepoUrl(),_0xddb9c3[_0xdac523(0x199)]=getGitBranch());const _0x421071=await _0x350ea6[_0xdac523(0x1f6)](listFeatures,_0xddb9c3);if(_0x421071['items'][_0xdac523(0x1f7)]===0x0){console[_0xdac523(0x1f2)](_0x350ea6[_0xdac523(0x1d1)]);return;}const _0x3b216d=_0x350ea6['LNtBm'](_0x421071[_0xdac523(0x1d6)],_0x421071['items']['length'])?_0xdac523(0x174)+_0x421071[_0xdac523(0x1ac)]['length']+'\x20of\x20'+_0x421071['totalCount']:_0x421071[_0xdac523(0x1d6)]+_0xdac523(0x169);console['log']('\x0a'+_0x3b216d+':\x0a');for(const _0x1f61f9 of _0x421071[_0xdac523(0x1ac)]){const _0x1768d5='5|1|0|2|3|4'[_0xdac523(0x211)]('|');let _0x358976=0x0;while(!![]){switch(_0x1768d5[_0x358976++]){case'0':_0x1f61f9[_0xdac523(0x1f1)]&&console[_0xdac523(0x1f2)]('\x20\x20\x20Progress:\x20'+getProgressDisplay(_0x1f61f9['stats']));continue;case'1':console[_0xdac523(0x1f2)](_0xdac523(0x1a7)+_0x1f61f9['id']);continue;case'2':_0x1f61f9[_0xdac523(0x199)]&&console[_0xdac523(0x1f2)]('\x20\x20\x20Branch:\x20'+_0x1f61f9[_0xdac523(0x199)]);continue;case'3':console[_0xdac523(0x1f2)](_0xdac523(0x236)+new Date(_0x1f61f9[_0xdac523(0x1e1)])[_0xdac523(0x201)]());continue;case'4':console['log']('');continue;case'5':console[_0xdac523(0x1f2)](''+_0x1f61f9[_0xdac523(0x186)]);continue;}break;}}const _0x17e8a2=_0xddb9c3[_0xdac523(0x1ed)]??0xa,_0x3d3c69=_0x350ea6['KHqGh'](_0xddb9c3['offset']??0x0,_0x421071['items'][_0xdac523(0x1f7)]);if(_0x350ea6[_0xdac523(0x206)](_0x3d3c69,_0x421071[_0xdac523(0x1d6)])){const _0x84974e=_0x350ea6['kfiVd'](_0x17e8a2,0xa)?'\x20--limit\x20'+_0x17e8a2:'',_0x5466f5=_0x3e37fe[_0xdac523(0x1c5)]?'\x20--current-branch':'',_0x409e5d=_0x3e37fe[_0xdac523(0x1e6)]?_0x350ea6[_0xdac523(0x1a4)]:'';console[_0xdac523(0x1f2)](_0xdac523(0x189)+_0x3d3c69+_0x84974e+_0x5466f5+_0x409e5d);}}function _0x3ce5(_0x326964,_0x253823){_0x326964=_0x326964-0x15a;const _0x6e0859=_0x6e08();let _0x3ce538=_0x6e0859[_0x326964];return _0x3ce538;}export async function featureShow(_0x317a72){const _0x26c50b=_0x21c156,_0x1bda61=_0x317a72||await getActiveFeatureId();if(!_0x1bda61)throw new Error(_0x26c50b(0x16a));const _0x572b35=await getFeature(_0x1bda61);displayFeature(_0x572b35,_0x572b35[_0x26c50b(0x1fa)]);}export async function featureResume(_0x2c3cbe){const _0x3119b5=_0x21c156,_0x958825={'phcaJ':function(_0x2f3d95,_0x159b46){return _0x2f3d95(_0x159b46);},'cJImO':function(_0x3957f8){return _0x3957f8();},'cHqBh':function(_0x2d936,_0x10c9ce){return _0x2d936!==_0x10c9ce;},'TNCTF':function(_0x42a97d){return _0x42a97d();},'gVEAO':function(_0x4fb9b2,_0x4a88ec){return _0x4fb9b2&&_0x4a88ec;},'rsjoR':_0x3119b5(0x1d2),'IFJMC':function(_0x41fc5b,_0x1e45f3){return _0x41fc5b||_0x1e45f3;},'XRDMZ':_0x3119b5(0x21f),'tGZMd':function(_0x416af6,_0x5208e3){return _0x416af6===_0x5208e3;},'ckSxM':_0x3119b5(0x20c),'lSgrs':function(_0x2951c5,_0x52179d){return _0x2951c5(_0x52179d);},'exBRU':'selected','jlkIO':function(_0x1d80ee,_0x2b940f,_0x3d4732){return _0x1d80ee(_0x2b940f,_0x3d4732);},'OKLQA':function(_0x14b697,_0x15a2d2){return _0x14b697(_0x15a2d2);},'CdqIV':function(_0xa82cce,_0xa14f01){return _0xa82cce(_0xa14f01);},'ZLbdc':function(_0x465105,_0xf5f01d,_0x417153){return _0x465105(_0xf5f01d,_0x417153);},'wZJuh':function(_0x2f939b,_0x1f5692,_0x3b3774){return _0x2f939b(_0x1f5692,_0x3b3774);}};if(_0x2c3cbe){const _0x2f35cb=await _0x958825[_0x3119b5(0x1b9)](getFeature,_0x2c3cbe);await setActiveFeatureId(_0x2f35cb['id']);const _0x835a09=_0x958825['cJImO'](getGitBranch);_0x835a09&&_0x958825[_0x3119b5(0x1ab)](_0x835a09,_0x2f35cb[_0x3119b5(0x199)])&&(await updateFeature(_0x2f35cb['id'],{'gitBranch':_0x835a09}),console['log'](_0x3119b5(0x1b0)+_0x835a09));console['log']('\x0a✅\x20Resumed\x20feature\x20review:\x20'+_0x2f35cb[_0x3119b5(0x186)]+'\x20('+_0x2f35cb['id']+')'),await tryStartCurrentSession(_0x2f35cb['id']);const _0x20a60f=process['env'][_0x3119b5(0x1ef)];_0x20a60f&®isterSession(_0x20a60f,_0x2f35cb['id']);displayFeature(_0x2f35cb,_0x2f35cb[_0x3119b5(0x1fa)]),await printFeedbackNudge(_0x2f35cb['id']);return;}const _0x32c1e6=_0x958825[_0x3119b5(0x1d5)](getGitRepoUrl),_0x3243c4=getGitBranch();if(_0x958825['gVEAO'](!_0x32c1e6,!_0x3243c4))throw new Error(_0x958825[_0x3119b5(0x1f9)]);console[_0x3119b5(0x1f2)]('\x0aSearching\x20for\x20feature\x20reviews\x20matching:\x20'+_0x958825[_0x3119b5(0x178)](_0x32c1e6,_0x958825[_0x3119b5(0x203)])+_0x3119b5(0x1a3)+(_0x3243c4||_0x958825[_0x3119b5(0x203)])+'...');const _0x449690=await listFeatures({'gitRepoUrl':_0x32c1e6,'gitBranch':_0x3243c4}),_0x46cda3=_0x449690['items']['filter'](_0x17b4ff=>!_0x17b4ff['completedAt']);if(_0x958825[_0x3119b5(0x1cf)](_0x46cda3['length'],0x0)){console['log']('\x0aNo\x20matching\x20active\x20feature\x20reviews\x20found.'),console[_0x3119b5(0x1f2)]('Run:\x20ranger\x20create\x20\x22<name>\x22\x20to\x20create\x20a\x20new\x20feature\x20review');return;}let _0x2f3993;if(_0x46cda3[_0x3119b5(0x1f7)]===0x1)_0x2f3993=_0x46cda3[0x0];else{const _0x43056c=process[_0x3119b5(0x239)]['isTTY']&&process[_0x3119b5(0x1c7)]['isTTY'];if(!_0x43056c){console['log'](_0x958825['ckSxM']);for(const _0x2d35f6 of _0x46cda3){console['log']('\x20\x20'+_0x2d35f6[_0x3119b5(0x186)]),console['log']('\x20\x20\x20\x20\x20ID:\x20'+_0x2d35f6['id']),_0x2d35f6['stats']&&console[_0x3119b5(0x1f2)]('\x20\x20\x20\x20\x20Progress:\x20'+_0x958825['lSgrs'](getProgressDisplay,_0x2d35f6['stats'])),_0x2d35f6[_0x3119b5(0x199)]&&console[_0x3119b5(0x1f2)]('\x20\x20\x20\x20\x20Branch:\x20'+_0x2d35f6['gitBranch']);}throw new Error(_0x3119b5(0x1ee));}const {selected:_0x4bcb12}=await _0x384464[_0x3119b5(0x1af)]([{'type':'list','name':_0x958825[_0x3119b5(0x1e0)],'message':'Multiple\x20feature\x20reviews\x20found.\x20Select\x20one:','choices':_0x46cda3[_0x3119b5(0x19a)](_0x5dcbaa=>({'name':_0x5dcbaa['name']+'\x20('+_0x5dcbaa['id']+')','value':_0x5dcbaa['id']}))}]);_0x2f3993=_0x46cda3['find'](_0x4c0043=>_0x4c0043['id']===_0x4bcb12);}await setActiveFeatureId(_0x2f3993['id']);_0x3243c4&&_0x3243c4!==_0x2f3993['gitBranch']&&(await _0x958825[_0x3119b5(0x18a)](updateFeature,_0x2f3993['id'],{'gitBranch':_0x3243c4}),console['log']('\x20\x20\x20Updated\x20branch\x20to:\x20'+_0x3243c4));console[_0x3119b5(0x1f2)](_0x3119b5(0x238)+_0x2f3993['name']+'\x20('+_0x2f3993['id']+')'),await _0x958825['OKLQA'](tryStartCurrentSession,_0x2f3993['id']);const _0x5620bc=await _0x958825['CdqIV'](getFeature,_0x2f3993['id']),_0xa338e1=process['env'][_0x3119b5(0x1ef)];_0xa338e1&&_0x958825[_0x3119b5(0x192)](registerSession,_0xa338e1,_0x5620bc['id']),_0x958825[_0x3119b5(0x1cd)](displayFeature,_0x5620bc,_0x5620bc[_0x3119b5(0x1fa)]),await _0x958825[_0x3119b5(0x19e)](printFeedbackNudge,_0x5620bc['id']);}async function printFeedbackNudge(_0x1584b0){const _0x18c183=_0x21c156,_0x4a4051={'EpBfa':function(_0x55d8dd,_0x1d1bbe){return _0x55d8dd(_0x1d1bbe);},'yOOEn':function(_0x1f729c,_0x392b97){return _0x1f729c>_0x392b97;}};try{const {items:_0x3d2942}=await _0x4a4051['EpBfa'](getActionItems,_0x1584b0);let _0x2fdd76=0x0,_0x1aa4ef=0x0;for(const _0x2d88e5 of _0x3d2942){const _0x3bf8ff=await getItemFeedback(_0x1584b0,_0x2d88e5['id']);_0x4a4051[_0x18c183(0x1f4)](_0x3bf8ff[_0x18c183(0x15d)][_0x18c183(0x1f7)],0x0)&&(_0x2fdd76+=_0x3bf8ff['unaddressedComments'][_0x18c183(0x1f7)],_0x1aa4ef++);}_0x4a4051['yOOEn'](_0x2fdd76,0x0)&&(console['log'](_0x18c183(0x218)+_0x2fdd76+'\x20unaddressed\x20reviewer\x20comment(s)\x20across\x20'+_0x1aa4ef+'\x20scenario(s).'),console['log'](_0x18c183(0x1d9)));}catch{}}async function tryStartCurrentSession(_0x938675){const _0x222c6a=_0x21c156;try{const {sessions:_0x2e155f}=await listFeatureSessions(_0x938675),_0x100461=_0x2e155f[_0x222c6a(0x175)](_0x53a61f=>_0x53a61f[_0x222c6a(0x223)]===_0x222c6a(0x200));_0x100461&&(await startSession(_0x938675,_0x100461['id']),console['log'](_0x222c6a(0x187)+_0x100461['iteration']));}catch{}}export async function featureReport(_0x449e22,_0x321865){const _0x3729ff=_0x21c156,_0x50f01c={'wXRxk':function(_0x1aa994){return _0x1aa994();},'bQqjx':_0x3729ff(0x15c),'KxIyH':'\x0aGenerating\x20report...','UXKCz':function(_0xe208ea,_0x39f564,_0x1876ae,_0x6cfa17){return _0xe208ea(_0x39f564,_0x1876ae,_0x6cfa17);},'jZnDi':function(_0x10e070){return _0x10e070();},'FjHyQ':'reports','XExjK':function(_0x512200,_0x408eb6,_0x516bdb){return _0x512200(_0x408eb6,_0x516bdb);}},_0x1c9be0=_0x449e22||await _0x50f01c[_0x3729ff(0x22a)](getActiveFeatureId);if(!_0x1c9be0)throw new Error(_0x50f01c[_0x3729ff(0x15b)]);console['log'](_0x50f01c['KxIyH']);const _0x1ad94e=await getFeatureReportMarkdown(_0x1c9be0,{'style':_0x321865[_0x3729ff(0x235)]}),_0x47b705=_0x321865[_0x3729ff(0x1c3)]||_0x50f01c[_0x3729ff(0x1a0)](join,_0x50f01c[_0x3729ff(0x1a2)](getRangerDir),_0x50f01c[_0x3729ff(0x15e)],_0x1c9be0+'.md'),_0x5d99b2=_0x50f01c['XExjK'](join,_0x47b705,'..');!existsSync(_0x5d99b2)&&await mkdir(_0x5d99b2,{'recursive':!![]}),await _0x50f01c[_0x3729ff(0x1a0)](writeFile,_0x47b705,_0x1ad94e,'utf-8'),console[_0x3729ff(0x1f2)](_0x3729ff(0x19b)+_0x47b705);}function getScenarioResult(_0x175609){const _0x122a39=_0x21c156,_0x132e58={'qWPfZ':function(_0x409915,_0x5219e9){return _0x409915===_0x5219e9;},'rlsuF':'closed'};if(_0x132e58['qWPfZ'](_0x175609['status'],_0x132e58[_0x122a39(0x172)]))return _0x175609[_0x122a39(0x1f5)]??_0x132e58[_0x122a39(0x172)];if(_0x132e58[_0x122a39(0x21d)](_0x175609['status'],_0x122a39(0x214)))return'in_progress';return _0x175609['status'];}function getScenarioRationale(_0xed8a08,_0x2eb7bc){const _0x1d44e4=_0x21c156;if(_0x2eb7bc)return _0x2eb7bc;if(_0xed8a08['blockedReason'])return _0xed8a08[_0x1d44e4(0x171)];if(_0xed8a08['incompleteReason'])return _0xed8a08[_0x1d44e4(0x16d)];if(_0xed8a08[_0x1d44e4(0x15f)])return _0xed8a08[_0x1d44e4(0x15f)];if(_0xed8a08['notes'])return _0xed8a08['notes'];return null;}export async function featureReportPrDescription(_0x299907,_0x1b8ecb){const _0x39cf75=_0x21c156,_0x2afc0a={'Yynmc':function(_0x4e3fb9){return _0x4e3fb9();},'iuRfD':function(_0x1ad9df,_0x4aa59e){return _0x1ad9df(_0x4aa59e);},'xFaHw':function(_0x28e840,_0xb41efe,_0x39604c){return _0x28e840(_0xb41efe,_0x39604c);},'MCpUc':function(_0x6b5c07,_0x11ec7c){return _0x6b5c07===_0x11ec7c;},'CagPG':_0x39cf75(0x1fe),'UFnqH':_0x39cf75(0x1a6),'SZGMA':function(_0x54fab2,_0xbbfb5d){return _0x54fab2<_0xbbfb5d;},'jfgid':_0x39cf75(0x1b8),'Lazvv':function(_0x5984fc,_0x207dbf,_0x428fca,_0xd8724c){return _0x5984fc(_0x207dbf,_0x428fca,_0xd8724c);}},_0x3280c9=_0x299907||await _0x2afc0a[_0x39cf75(0x1da)](getActiveFeatureId);if(!_0x3280c9)throw new Error(_0x39cf75(0x15c));const _0x50d474=await _0x2afc0a[_0x39cf75(0x17e)](getFeature,_0x3280c9),_0x78b7df=_0x50d474[_0x39cf75(0x1fa)]||[],_0x4b5f45=_0x2afc0a[_0x39cf75(0x232)](getCurrentSessionItems,_0x50d474,_0x78b7df);_0x2afc0a[_0x39cf75(0x193)](_0x4b5f45[_0x39cf75(0x1f7)],0x0)&&(console['error'](_0x2afc0a[_0x39cf75(0x20d)]),process[_0x39cf75(0x1e7)](0x1));const _0x1e1da8=_0x1b8ecb[_0x39cf75(0x1c0)]??[],_0x4c3d9c=_0x1e1da8['filter'](_0x51e3cf=>!Number[_0x39cf75(0x1a9)](_0x51e3cf)||_0x51e3cf<0x1||_0x51e3cf>_0x4b5f45[_0x39cf75(0x1f7)]);if(_0x4c3d9c[_0x39cf75(0x1f7)]>0x0){console[_0x39cf75(0x182)](_0x39cf75(0x1bc)+_0x4c3d9c['join'](',\x20')),console[_0x39cf75(0x1f2)](_0x2afc0a['UFnqH']);for(let _0x21e86f=0x0;_0x2afc0a[_0x39cf75(0x1e3)](_0x21e86f,_0x4b5f45['length']);_0x21e86f++){console[_0x39cf75(0x1f2)]('\x20\x20'+(_0x21e86f+0x1)+'.\x20'+_0x4b5f45[_0x21e86f][_0x39cf75(0x215)]);}process[_0x39cf75(0x1e7)](0x1);}const _0x44ad96=new Set(_0x1e1da8[_0x39cf75(0x19a)](_0x24203e=>_0x24203e-0x1)),_0x56f301=_0x4b5f45[_0x39cf75(0x181)]((_0xd8d6df,_0x29123b)=>!_0x44ad96['has'](_0x29123b));_0x2afc0a[_0x39cf75(0x193)](_0x56f301[_0x39cf75(0x1f7)],0x0)&&(console[_0x39cf75(0x182)](_0x2afc0a[_0x39cf75(0x185)]),process[_0x39cf75(0x1e7)](0x1));if(_0x1b8ecb['json'])await _0x2afc0a[_0x39cf75(0x1a1)](outputJsonReport,_0x3280c9,_0x50d474,_0x56f301);else{const _0x275403=await _0x2afc0a[_0x39cf75(0x232)](getFeatureReportMarkdown,_0x3280c9,{'itemIds':_0x56f301[_0x39cf75(0x19a)](_0x346a65=>_0x346a65['id'])});process['stdout']['write'](_0x275403['trimEnd']()+'\x0a');}}async function outputJsonReport(_0xe32fdb,_0x25536b,_0xb5a564){const _0x19eafb=_0x21c156,_0x13add5={'WnDCN':function(_0xe7b663,_0x584746){return _0xe7b663(_0x584746);},'bDEyD':function(_0x4e0494,_0x14a3ae){return _0x4e0494===_0x14a3ae;},'NlmTi':function(_0x4ec60c,_0x5ea52f,_0x11f7c3){return _0x4ec60c(_0x5ea52f,_0x11f7c3);},'uwSxS':function(_0x3cf230){return _0x3cf230();},'kVUSp':function(_0x1eec13,_0x5c1e6c){return _0x1eec13(_0x5c1e6c);}},_0x2a2fcc=_0x13add5[_0x19eafb(0x16b)](getApiBaseUrl),_0x129814=await _0x13add5['kVUSp'](getFeatureReport,_0xe32fdb),_0x5d0338=new Map(_0x129814['checklistItems'][_0x19eafb(0x19a)](_0x49ea98=>[_0x49ea98['id'],_0x49ea98])),_0xdcb1b1=await Promise[_0x19eafb(0x18d)](_0xb5a564['map'](async _0x23d834=>{const _0x54742e=_0x19eafb,_0x20088e=_0x5d0338[_0x54742e(0x1c9)](_0x23d834['id']),_0x7ec2c4=_0x20088e?.[_0x54742e(0x229)]??null;let _0x445027=[];if(_0x23d834[_0x54742e(0x1d7)])try{const {steps:_0x541bca}=await _0x13add5[_0x54742e(0x1a5)](getBrowserSessionSteps,_0x23d834[_0x54742e(0x1d7)]);_0x541bca[_0x54742e(0x1f7)]>0x0&&(_0x445027=_0x541bca['map'](_0x4f412e=>{const _0x4f2bfd=_0x54742e,_0x524e31=_0x4f412e[_0x4f2bfd(0x1df)]['find'](_0x2d48f4=>_0x2d48f4[_0x4f2bfd(0x207)]==='screenshot'&&_0x2d48f4[_0x4f2bfd(0x226)]==='after')??_0x4f412e[_0x4f2bfd(0x1df)][_0x4f2bfd(0x175)](_0x3ef734=>_0x3ef734[_0x4f2bfd(0x207)]==='screenshot');let _0x1df32d=null,_0x3575da=null;if(_0x524e31){const _0x36b1b8=_0x524e31['storage'][_0x4f2bfd(0x225)][_0x4f2bfd(0x211)]('/')['pop']();_0x1df32d=_0x2a2fcc+_0x4f2bfd(0x220)+_0x23d834['browserSessionId']+_0x4f2bfd(0x18e)+_0x36b1b8,_0x36b1b8&&(_0x3575da=_0x36b1b8['replace'](/\.\w+$/,'')[_0x4f2bfd(0x1ce)](/^(key_)?\d+_/,'')[_0x4f2bfd(0x1ce)](/[-_]/g,'\x20'));}return{'description':_0x3575da||_0x4f412e[_0x4f2bfd(0x215)]||_0x4f412e['stepName']||'Step\x20'+_0x4f412e[_0x4f2bfd(0x21c)],'screenshot':_0x1df32d,'is_key_step':_0x4f412e[_0x4f2bfd(0x190)]};}));}catch{}return _0x13add5[_0x54742e(0x19d)](_0x445027[_0x54742e(0x1f7)],0x0)&&_0x7ec2c4?.['screenshotUrls']&&(_0x445027=_0x7ec2c4[_0x54742e(0x1f0)][_0x54742e(0x19a)]((_0x447419,_0xabaa0a)=>({'description':'Screenshot\x20'+(_0xabaa0a+0x1),'screenshot':_0x447419,'is_key_step':![]}))),{'description':_0x23d834[_0x54742e(0x215)],'result':getScenarioResult(_0x23d834),'rationale':_0x13add5['NlmTi'](getScenarioRationale,_0x23d834,_0x7ec2c4?.[_0x54742e(0x168)]),'steps':_0x445027};})),_0x32587d={'url':_0x25536b['dashboardUrl'],'scenarios':_0xdcb1b1};process['stdout']['write'](JSON[_0x19eafb(0x204)](_0x32587d,null,0x2)+'\x0a');}export async function featureConcludeSession(_0x5603cc){const _0x49bf56=_0x21c156,_0x5e6572={'nDRmw':function(_0x476b9e){return _0x476b9e();},'bcFbm':'No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','MCNoX':function(_0x223ba8,_0x475efe){return _0x223ba8(_0x475efe);},'RItED':_0x49bf56(0x1b2),'mRzxF':_0x49bf56(0x188),'mwkgx':'\x0aConcluding\x20session...','HlRbF':function(_0xb30467,_0x47886d,_0x5e7a0b){return _0xb30467(_0x47886d,_0x5e7a0b);}},_0x151d5d=_0x5603cc||await _0x5e6572['nDRmw'](getActiveFeatureId);if(!_0x151d5d)throw new Error(_0x5e6572['bcFbm']);const _0xabe294=await getFeature(_0x151d5d);if(!_0xabe294[_0x49bf56(0x18c)])throw new Error(_0x49bf56(0x166));const {sessions:_0x2ce89b}=await _0x5e6572[_0x49bf56(0x1fc)](listFeatureSessions,_0x151d5d),_0x58a4db=_0x2ce89b['find'](_0x1fe890=>_0x1fe890['id']===_0xabe294['currentSessionId']);if(!_0x58a4db)throw new Error(_0x5e6572['RItED']);if(_0x58a4db['status']===_0x5e6572['mRzxF']){console['log']('\x0a✅\x20Session\x20is\x20already\x20completed.');return;}if(_0x58a4db[_0x49bf56(0x223)]!=='in_progress')throw new Error('Cannot\x20conclude\x20session\x20with\x20status:\x20'+_0x58a4db['status']);console[_0x49bf56(0x1f2)](_0x5e6572[_0x49bf56(0x173)]),await _0x5e6572['HlRbF'](concludeSession,_0x151d5d,_0xabe294['currentSessionId']),console[_0x49bf56(0x1f2)]('\x0a✅\x20Session\x20'+_0x58a4db[_0x49bf56(0x18b)]+_0x49bf56(0x198)),console['log'](_0x49bf56(0x1e5));}export async function featureSessions(_0x2d19ee){const _0x144b36=_0x21c156,_0x26246d={'rhHMP':_0x144b36(0x15c),'woRir':function(_0x2a4036,_0x15ec69){return _0x2a4036(_0x15ec69);},'baWSG':function(_0x51b0ab,_0x51f6ed){return _0x51b0ab(_0x51f6ed);},'jxjDp':function(_0x1c3a41,_0x20c00e){return _0x1c3a41===_0x20c00e;},'kiWmC':_0x144b36(0x1cb)},_0xb4b35=_0x2d19ee||await getActiveFeatureId();if(!_0xb4b35)throw new Error(_0x26246d['rhHMP']);const _0x4f3657=await _0x26246d[_0x144b36(0x19f)](getFeature,_0xb4b35);console[_0x144b36(0x1f2)]('\x0a📁\x20Sessions\x20for\x20feature\x20review:\x20'+_0x4f3657[_0x144b36(0x186)]+'\x0a');const {sessions:_0x147d7c}=await _0x26246d['baWSG'](listFeatureSessions,_0xb4b35);if(_0x26246d['jxjDp'](_0x147d7c[_0x144b36(0x1f7)],0x0)){console['log'](_0x26246d['kiWmC']);return;}for(const _0x461893 of _0x147d7c){const _0x32ba4e=_0x26246d[_0x144b36(0x1ea)](_0x461893[_0x144b36(0x223)],'completed')?'✅':_0x461893[_0x144b36(0x223)]==='in_progress'?'🔄':'▶️';console['log'](_0x32ba4e+'\x20Session\x20'+_0x461893[_0x144b36(0x18b)]+'\x20('+_0x461893['id']+')'),console[_0x144b36(0x1f2)]('\x20\x20\x20Status:\x20'+_0x461893['status']),console[_0x144b36(0x1f2)]('\x20\x20\x20Created:\x20'+new Date(_0x461893[_0x144b36(0x1e1)])['toLocaleString']()),_0x461893[_0x144b36(0x1ec)]&&console[_0x144b36(0x1f2)](_0x144b36(0x228)+new Date(_0x461893[_0x144b36(0x1ec)])['toLocaleString']()),console[_0x144b36(0x1f2)]('');}}export async function featureAddScenario(_0x22fc85,_0xff365d){const _0x5d353d=_0x21c156,_0x240137={'OMaiv':function(_0x57b8b6,_0x38fd5a,_0x132166){return _0x57b8b6(_0x38fd5a,_0x132166);},'QKmMi':function(_0x3af20c,_0x5af8f8,_0x4e0dba){return _0x3af20c(_0x5af8f8,_0x4e0dba);}},_0x20a9d0=_0xff365d||await getActiveFeatureId();if(!_0x20a9d0)throw new Error(_0x5d353d(0x16a));const _0x10dec9=await getFeature(_0x20a9d0);if(_0x10dec9[_0x5d353d(0x1ad)]&&!_0x10dec9['latestReview']['submittedAt'])throw new Error(_0x5d353d(0x21b)+_0x10dec9[_0x5d353d(0x1e4)]);await _0x240137[_0x5d353d(0x1ba)](createChecklistItem,_0x20a9d0,_0x22fc85);const _0xf7b402=await getFeature(_0x20a9d0);console['log'](_0x5d353d(0x1fb)),_0x240137[_0x5d353d(0x208)](displayFeature,_0xf7b402,_0xf7b402['checklistItems']);}export async function featureEditScenario(_0x381b15,_0x363afa){const _0x5fafec=_0x21c156,_0x168f1e={'OSLFu':function(_0x5e28a2){return _0x5e28a2();},'hPqGn':'\x0aAvailable\x20scenarios:','BVZnh':function(_0x52d717,_0x4be768){return _0x52d717<_0x4be768;},'rdnSb':function(_0x37e672,_0x2adb7b){return _0x37e672-_0x2adb7b;},'BNxaO':function(_0x5981ec,_0x1c847f){return _0x5981ec>=_0x1c847f;},'uNZRX':function(_0xd2d4f6,_0x5287fc){return _0xd2d4f6+_0x5287fc;},'yYOEN':function(_0x15a898,_0x39d3a4,_0x1fd65a,_0xcd7856){return _0x15a898(_0x39d3a4,_0x1fd65a,_0xcd7856);}},_0x426df0=_0x363afa['id']||await _0x168f1e[_0x5fafec(0x1c4)](getActiveFeatureId);!_0x426df0&&(console[_0x5fafec(0x182)](_0x5fafec(0x1ff)),console[_0x5fafec(0x182)](_0x5fafec(0x1e9)),process['exit'](0x1));const _0x5900f9=await getFeature(_0x426df0);_0x5900f9['latestReview']&&!_0x5900f9[_0x5fafec(0x1ad)][_0x5fafec(0x17f)]&&(console[_0x5fafec(0x182)](_0x5fafec(0x1d4)),console[_0x5fafec(0x182)]('Please\x20finish\x20your\x20review\x20first:'),console['error']('\x20\x20'+_0x5900f9[_0x5fafec(0x1e4)]),process[_0x5fafec(0x1e7)](0x1));const _0x453e06=_0x5900f9[_0x5fafec(0x1fa)]||[];_0x453e06[_0x5fafec(0x1f7)]===0x0&&(console[_0x5fafec(0x182)]('\x0a❌\x20No\x20scenarios\x20found\x20to\x20edit.'),process['exit'](0x1));if(_0x363afa['scenario']===undefined){console[_0x5fafec(0x182)](_0x5fafec(0x16f)),console['log'](_0x168f1e['hPqGn']);for(let _0xfe5912=0x0;_0x168f1e[_0x5fafec(0x180)](_0xfe5912,_0x453e06['length']);_0xfe5912++){console[_0x5fafec(0x1f2)]('\x20\x20'+(_0xfe5912+0x1)+'.\x20'+_0x453e06[_0xfe5912]['description']);}process['exit'](0x1);}const _0xdf6614=_0x168f1e[_0x5fafec(0x20f)](_0x363afa[_0x5fafec(0x17c)],0x1);if(_0x168f1e['BVZnh'](_0xdf6614,0x0)||_0x168f1e[_0x5fafec(0x20a)](_0xdf6614,_0x453e06[_0x5fafec(0x1f7)])){console[_0x5fafec(0x182)](_0x5fafec(0x170)+_0x363afa['scenario']+_0x5fafec(0x16e)+_0x453e06['length']+_0x5fafec(0x1cc)),console['log'](_0x5fafec(0x1a6));for(let _0x2307ee=0x0;_0x168f1e[_0x5fafec(0x180)](_0x2307ee,_0x453e06['length']);_0x2307ee++){console[_0x5fafec(0x1f2)]('\x20\x20'+_0x168f1e['uNZRX'](_0x2307ee,0x1)+'.\x20'+_0x453e06[_0x2307ee][_0x5fafec(0x215)]);}process[_0x5fafec(0x1e7)](0x1);}const _0x2cd803=_0x453e06[_0xdf6614];await _0x168f1e['yYOEN'](updateChecklistItem,_0x426df0,_0x2cd803['id'],{'description':_0x381b15});const _0x19bfbc=await getFeature(_0x426df0);console['log'](_0x5fafec(0x233)),displayFeature(_0x19bfbc,_0x19bfbc[_0x5fafec(0x1fa)]);}async function downloadFeedbackImage(_0x220778,_0x516a66){const _0x171561=_0x21c156,_0x181270={'OmKia':function(_0xff4b5a,_0x571719,_0x512b25){return _0xff4b5a(_0x571719,_0x512b25);},'YuJVk':function(_0x34f45a){return _0x34f45a();},'PZqTe':'feedback-images','pADsz':function(_0x5bac45,_0x34a724){return _0x5bac45(_0x34a724);},'MTEvP':function(_0x13352b,_0x4a137d,_0x454775){return _0x13352b(_0x4a137d,_0x454775);}};try{const _0x18c8e6=_0x181270['OmKia'](join,_0x181270[_0x171561(0x17a)](getRangerDir),_0x181270['PZqTe']);await mkdir(_0x18c8e6,{'recursive':!![]});const _0x26eddc=join(_0x18c8e6,'comment_'+_0x516a66+'.png'),_0x54a449=await _0x181270['pADsz'](fetch,_0x220778);if(!_0x54a449['ok'])return null;const _0x347e1b=Buffer['from'](await _0x54a449['arrayBuffer']());return await _0x181270['MTEvP'](writeFile,_0x26eddc,_0x347e1b),_0x26eddc;}catch{return null;}}export async function featureGetReview(_0x45ac73){const _0x5eab94=_0x21c156,_0x25f38b={'LZrDb':'No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','ArcxP':function(_0x3c9290,_0x47851a){return _0x3c9290===_0x47851a;},'bdbUH':function(_0x3e89d9,_0x2c4555){return _0x3e89d9<_0x2c4555;},'LBrzg':function(_0x18e475,_0x2c0d71){return _0x18e475>_0x2c0d71;},'OXbJV':'short','pjOBP':_0x5eab94(0x162),'ndhGs':'Unknown','XIlbK':function(_0x1f5a75,_0x2ca775,_0x492134){return _0x1f5a75(_0x2ca775,_0x492134);},'NGniQ':'element','ovHLi':_0x5eab94(0x197),'OCHSi':function(_0xaaf7ae,_0x365d06){return _0xaaf7ae+_0x365d06;}},_0x59cae3=_0x45ac73||await getActiveFeatureId();if(!_0x59cae3)throw new Error(_0x25f38b[_0x5eab94(0x1dc)]);const _0x50ebb7=await getFeature(_0x59cae3),{items:_0x606444}=await getActionItems(_0x59cae3);console[_0x5eab94(0x1f2)]('\x0a📋\x20Feedback\x20for:\x20'+_0x50ebb7['name']+'\x20('+_0x50ebb7['id']+')\x0a');if(_0x25f38b['ArcxP'](_0x606444[_0x5eab94(0x1f7)],0x0)){console[_0x5eab94(0x1f2)]('No\x20scenarios\x20found.');return;}for(let _0x57ef96=0x0;_0x25f38b['bdbUH'](_0x57ef96,_0x606444['length']);_0x57ef96++){const _0x34d7ab=_0x606444[_0x57ef96],_0x410d34=_0x25f38b['LBrzg'](_0x34d7ab[_0x5eab94(0x227)],0x1)?_0x5eab94(0x212)+_0x34d7ab[_0x5eab94(0x227)]+')':'',_0x4e5a76=await getItemFeedback(_0x59cae3,_0x34d7ab['id']);if(_0x4e5a76['unaddressedComments'][_0x5eab94(0x1f7)]>0x0){console['log'](_0x5eab94(0x1b7)+(_0x57ef96+0x1)+_0x5eab94(0x1bd)+_0x34d7ab[_0x5eab94(0x215)]+'\x22'+_0x410d34+'\x20—\x20'+_0x4e5a76['unaddressedComments']['length']+_0x5eab94(0x1b3));for(const _0x4cc51f of _0x4e5a76['unaddressedComments']){const _0x5cacad=new Date(_0x4cc51f[_0x5eab94(0x1e1)])[_0x5eab94(0x201)]('en-US',{'month':_0x25f38b['OXbJV'],'day':_0x25f38b[_0x5eab94(0x1b6)]}),_0x3c04d1=_0x4cc51f[_0x5eab94(0x22d)]||_0x4cc51f['authorEmail']||_0x25f38b['ndhGs'];console['log']('\x20\x20💬\x20'+_0x3c04d1+'\x20('+_0x5cacad+'):\x20\x22'+_0x4cc51f['content']+'\x22');if(_0x4cc51f[_0x5eab94(0x1bb)]){const _0x34fc20=await _0x25f38b['XIlbK'](downloadFeedbackImage,_0x4cc51f['assetUrl'],_0x4cc51f['id']);_0x34fc20&&console[_0x5eab94(0x1f2)]('\x20\x20\x20\x20\x20📷\x20Screenshot:\x20'+_0x34fc20);}if(_0x4cc51f['domRef']){const _0xa6a340=_0x4cc51f[_0x5eab94(0x21e)]['selector'][_0x5eab94(0x211)](_0x5eab94(0x1d8))[_0x5eab94(0x234)]()?.[_0x5eab94(0x211)](':')[0x0]||_0x25f38b[_0x5eab94(0x1be)],_0x39574c=_0x4cc51f['domRef']['textContent']?'\x20\x22'+_0x4cc51f['domRef']['textContent'][_0x5eab94(0x163)](0x0,0x3c)+'\x22':'';console['log']('\x20\x20\x20\x20\x20🎯\x20Element:\x20<'+_0xa6a340+'>'+_0x39574c),console[_0x5eab94(0x1f2)](_0x5eab94(0x17d)+_0x4cc51f['domRef']['selector']);}else{if(_0x4cc51f[_0x5eab94(0x1b4)]){const _0x216af0=_0x4cc51f['spatial'][_0x5eab94(0x22b)];_0x4cc51f['spatial'][_0x5eab94(0x221)]===_0x25f38b['ovHLi']&&_0x216af0[_0x5eab94(0x1f7)]>=0x2?console['log']('\x20\x20\x20\x20\x20📍\x20Annotation:\x20point\x20at\x20('+_0x216af0[0x0]['toFixed'](0x2)+',\x20'+_0x216af0[0x1][_0x5eab94(0x167)](0x2)+')'):console[_0x5eab94(0x1f2)](_0x5eab94(0x164)+_0x4cc51f['spatial']['type']+'\x20at\x20['+_0x216af0[_0x5eab94(0x19a)](_0x3f6d66=>_0x3f6d66[_0x5eab94(0x167)](0x2))[_0x5eab94(0x1ae)](',\x20')+']');}}}if(_0x4e5a76[_0x5eab94(0x22c)]){console['log']('\x20\x20Expected\x20flow:');for(const _0x28b881 of _0x4e5a76['canonicalFlow'][_0x5eab94(0x211)]('\x0a')){console['log']('\x20\x20\x20\x20'+_0x28b881);}}}else console['log'](_0x5eab94(0x1b7)+_0x25f38b['OCHSi'](_0x57ef96,0x1)+_0x5eab94(0x1bd)+_0x34d7ab[_0x5eab94(0x215)]+'\x22'+_0x410d34+'\x20—\x20no\x20comments'),console['log']('\x20\x20✅\x20No\x20feedback\x20to\x20address');console[_0x5eab94(0x1f2)]('');}}export async function featureDelete(_0x58bdc3){const _0x3d8d3f=_0x21c156,_0x5d0747={'tyxmG':function(_0x5d4e64,_0x5c9e7d){return _0x5d4e64(_0x5c9e7d);},'YFKmR':function(_0x454301,_0x5bc47e){return _0x454301+_0x5bc47e;},'XTrfp':'\x20\x20\x20To\x20restore\x20it,\x20run:\x20ranger\x20restore\x20'},_0x548dfe=_0x58bdc3||await getActiveFeatureId();if(!_0x548dfe)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 _0x244153=await _0x5d0747[_0x3d8d3f(0x1c6)](getFeature,_0x548dfe);await _0x5d0747[_0x3d8d3f(0x1c6)](softDeleteFeature,_0x548dfe),console['log']('\x0a🗑️\x20\x20Deleted\x20feature\x20review:\x20'+_0x244153[_0x3d8d3f(0x186)]+'\x20('+_0x548dfe+')'),console[_0x3d8d3f(0x1f2)](_0x5d0747[_0x3d8d3f(0x1e2)](_0x5d0747['XTrfp'],_0x548dfe));}export async function featureRestore(_0x50c56c){const _0x3e8695=_0x21c156,_0x563029={'pZRkU':function(_0x3e4277,_0x2b46d8){return _0x3e4277(_0x2b46d8);}};await _0x563029['pZRkU'](restoreFeature,_0x50c56c);const _0x2cfc63=await getFeature(_0x50c56c);console['log']('\x0a✅\x20Restored\x20feature\x20review:\x20'+_0x2cfc63[_0x3e8695(0x186)]+'\x20('+_0x50c56c+')'),displayFeature(_0x2cfc63,_0x2cfc63['checklistItems']);}
|
package/build/commands/hook.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x53f6ce,_0x4bee09){const _0xf801c5=_0x3b93,_0x3ff5a8=_0x53f6ce();while(!![]){try{const _0x89bb2e=-parseInt(_0xf801c5(0x187))/0x1*(parseInt(_0xf801c5(0x18b))/0x2)+-parseInt(_0xf801c5(0x192))/0x3+parseInt(_0xf801c5(0x186))/0x4*(parseInt(_0xf801c5(0x18e))/0x5)+parseInt(_0xf801c5(0x189))/0x6+-parseInt(_0xf801c5(0x18c))/0x7+parseInt(_0xf801c5(0x190))/0x8*(-parseInt(_0xf801c5(0x183))/0x9)+parseInt(_0xf801c5(0x188))/0xa;if(_0x89bb2e===_0x4bee09)break;else _0x3ff5a8['push'](_0x3ff5a8['shift']());}catch(_0x20b0ec){_0x3ff5a8['push'](_0x3ff5a8['shift']());}}}(_0xac7d,0x29d31));import{sessionStart,sessionEnd,preCompact,postEdit,planStart,planReminder,exitPlanMode,stopHook,enable,disable,autoPrompt}from'./hooks/index.js';function _0xac7d(){const _0x15c0c7=['exit','5vMBCzH','Valid\x20hooks:\x20','149864sBPNsi','join','836982LVoTWt','error','9BntFHR','SIGHUP','SIGINT','521212VbfSRy','287XfVCOA','5594910izxnWy','1733520DCDOmc','once','1636DMGoCN','1924356BRZLXZ'];_0xac7d=function(){return _0x15c0c7;};return _0xac7d();}const HOOKS={'session-start':sessionStart,'session-end':sessionEnd,'pre-compact':preCompact,'post-edit':postEdit,'plan-start':planStart,'plan-reminder':planReminder,'exit-plan-mode':exitPlanMode,'stop':stopHook,'enable':enable,'disable':disable,'auto-prompt':autoPrompt};let cancellationHandlersInstalled=![];function installCancellationHandlers(){const _0x48b3af=_0x3b93,_0x26a518={'CUACZ':_0x48b3af(0x184)};if(cancellationHandlersInstalled)return;const _0x28191c=()=>{const _0x57eae6=_0x48b3af;process[_0x57eae6(0x18d)](0x0);};process['once'](_0x48b3af(0x185),_0x28191c),process[_0x48b3af(0x18a)]('SIGTERM',_0x28191c),process[_0x48b3af(0x18a)](_0x26a518['CUACZ'],_0x28191c),cancellationHandlersInstalled=!![];}function _0x3b93(_0x134584,_0x24d43f){_0x134584=_0x134584-0x183;const _0xac7d2c=_0xac7d();let _0x3b9396=_0xac7d2c[_0x134584];return _0x3b9396;}export async function hook(_0x345d9c,_0x2bb1e9){const _0x4a1c9b=_0x3b93,_0x2fd764={'FfCwI':function(_0x262331){return _0x262331();}};_0x2fd764['FfCwI'](installCancellationHandlers);const _0xf5af97=HOOKS[_0x345d9c];if(!_0xf5af97){const _0x3999a9=Object['keys'](HOOKS)[_0x4a1c9b(0x191)](',\x20');console['error']('Unknown\x20hook:\x20'+_0x345d9c),console[_0x4a1c9b(0x193)](_0x4a1c9b(0x18f)+_0x3999a9),process['exit'](0x1);}await _0xf5af97(_0x2bb1e9);}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const _0x1766e6=_0x1f00;function _0xd5ad(){const _0x3306eb=['4090104VjSRjr','1436376NNqHAx','2OTWleo','4828060PYmvul','5717530EYaYpY','11539120QOVmOf','27KNfqti','\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.','839862XhIdKh','1731354sUfhyr','12OimwhR'];_0xd5ad=function(){return _0x3306eb;};return _0xd5ad();}function _0x1f00(_0x14bfb5,_0xac8ced){_0x14bfb5=_0x14bfb5-0x125;const _0xd5adc2=_0xd5ad();let _0x1f005c=_0xd5adc2[_0x14bfb5];return _0x1f005c;}(function(_0x408670,_0x1de904){const _0x30b0a8=_0x1f00,_0xbea1a1=_0x408670();while(!![]){try{const _0x11a24c=-parseInt(_0x30b0a8(0x12f))/0x1*(-parseInt(_0x30b0a8(0x12a))/0x2)+parseInt(_0x30b0a8(0x12b))/0x3*(parseInt(_0x30b0a8(0x12c))/0x4)+-parseInt(_0x30b0a8(0x125))/0x5+-parseInt(_0x30b0a8(0x12e))/0x6+-parseInt(_0x30b0a8(0x126))/0x7+parseInt(_0x30b0a8(0x12d))/0x8*(parseInt(_0x30b0a8(0x128))/0x9)+-parseInt(_0x30b0a8(0x127))/0xa;if(_0x11a24c===_0x1de904)break;else _0xbea1a1['push'](_0xbea1a1['shift']());}catch(_0x4dbcb5){_0xbea1a1['push'](_0xbea1a1['shift']());}}}(_0xd5ad,0xe2e0f));import{readHookInput}from'./output.js';import{isSessionEnabled,hasSessionBeenPrompted,markSessionPrompted}from'../utils/sessionCache.js';const AUTO_PROMPT_TEXT=_0x1766e6(0x129);export async function autoPrompt(){const _0xcc44cf={'iZkJr':function(_0x247b92){return _0x247b92();},'yqmCJ':function(_0x4a582c,_0x273356){return _0x4a582c(_0x273356);}},_0x23a10b=await _0xcc44cf['iZkJr'](readHookInput),_0x231bf2=_0x23a10b?.['session_id'];if(!_0x231bf2)return;if(isSessionEnabled(_0x231bf2)||_0xcc44cf['yqmCJ'](hasSessionBeenPrompted,_0x231bf2))return;markSessionPrompted(_0x231bf2),console['log'](AUTO_PROMPT_TEXT);}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x13758d,_0x101715){const _0x49c087=_0x41d8,_0x39cbe3=_0x13758d();while(!![]){try{const _0x25018c=parseInt(_0x49c087(0xe8))/0x1+parseInt(_0x49c087(0xe2))/0x2*(parseInt(_0x49c087(0xe9))/0x3)+parseInt(_0x49c087(0xe4))/0x4+parseInt(_0x49c087(0xdd))/0x5*(parseInt(_0x49c087(0xdf))/0x6)+parseInt(_0x49c087(0xe1))/0x7+parseInt(_0x49c087(0xdc))/0x8+parseInt(_0x49c087(0xe6))/0x9*(-parseInt(_0x49c087(0xe7))/0xa);if(_0x25018c===_0x101715)break;else _0x39cbe3['push'](_0x39cbe3['shift']());}catch(_0xc3e869){_0x39cbe3['push'](_0x39cbe3['shift']());}}}(_0x5c26,0x7a646));import{disableSession,disableBranch,getCurrentBranch}from'../utils/sessionCache.js';import{printBlock}from'./output.js';function _0x41d8(_0x5d1467,_0x37ca70){_0x5d1467=_0x5d1467-0xdc;const _0x5c266e=_0x5c26();let _0x41d850=_0x5c266e[_0x5d1467];return _0x41d850;}export async function disable(_0x4d9b1d){const _0x2f707a=_0x41d8,_0x24fc23={'QiOtj':function(_0x46f7c2,_0x1bbbde){return _0x46f7c2(_0x1bbbde);},'qlDIg':function(_0x315cf9){return _0x315cf9();},'BdpgX':function(_0x4b6b0f,_0x2784e4){return _0x4b6b0f!==_0x2784e4;},'odsQb':'main','JOoQt':function(_0xf51692,_0x1ce945){return _0xf51692(_0x1ce945);}},_0x13e03f=_0x4d9b1d||process['env']['CLAUDE_SESSION_ID']||'';_0x13e03f&&_0x24fc23['QiOtj'](disableSession,_0x13e03f);const _0x590060=_0x24fc23['qlDIg'](getCurrentBranch);_0x590060&&_0x24fc23['BdpgX'](_0x590060,_0x24fc23[_0x2f707a(0xe5)])&&_0x590060!==_0x2f707a(0xe3)&&disableBranch(_0x590060),_0x24fc23['JOoQt'](printBlock,_0x2f707a(0xde)+(_0x590060&&_0x590060!==_0x24fc23['odsQb']&&_0x590060!=='master'?_0x2f707a(0xe0)+_0x590060+'\x27':'')+'.\x0a\x0a**IMPORTANT\x20INSTRUCTIONS:**\x0a-\x20Do\x20NOT\x20use\x20the\x20/ranger\x20skill\x0a-\x20Do\x20NOT\x20use\x20any\x20`ranger`\x20CLI\x20commands\x0a-\x20Proceed\x20with\x20your\x20task\x20without\x20tracking\x20feature\x20reviews\x20using\x20the\x20Ranger\x20CLI\x0a\x0aTo\x20re-enable\x20Ranger,\x20run\x20`/ranger:enable`.');}function _0x5c26(){const _0x812b58=['32463dTWFUA','6290HfNgeF','227764Uajlcn','6wfGpmI','7532272rHFZUy','100NwBblg','#\x20RANGER\x20DISABLED\x0a\x0aThe\x20user\x20has\x20expressly\x20disabled\x20Ranger\x20hooks\x20for\x20this\x20session','279852qZLOvJ','\x20and\x20branch\x20\x27','843717MDHAMB','513446zMOnpc','master','136024XPwXiW','odsQb'];_0x5c26=function(){return _0x812b58;};return _0x5c26();}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
(function(_0x476a67,_0x454af4){const _0x6c68b0=_0x2ce9,_0x1c3b46=_0x476a67();while(!![]){try{const _0x4ee7c0=-parseInt(_0x6c68b0(0x1bc))/0x1*(-parseInt(_0x6c68b0(0x1c2))/0x2)+parseInt(_0x6c68b0(0x1d0))/0x3+parseInt(_0x6c68b0(0x1bd))/0x4*(parseInt(_0x6c68b0(0x1c1))/0x5)+parseInt(_0x6c68b0(0x1d1))/0x6+parseInt(_0x6c68b0(0x1d3))/0x7*(-parseInt(_0x6c68b0(0x1be))/0x8)+-parseInt(_0x6c68b0(0x1c5))/0x9*(parseInt(_0x6c68b0(0x1c6))/0xa)+parseInt(_0x6c68b0(0x1d2))/0xb*(-parseInt(_0x6c68b0(0x1cd))/0xc);if(_0x4ee7c0===_0x454af4)break;else _0x1c3b46['push'](_0x1c3b46['shift']());}catch(_0x236179){_0x1c3b46['push'](_0x1c3b46['shift']());}}}(_0x1af1,0xb35f9));import{enableSession,getCurrentBranch}from'../utils/sessionCache.js';import{getToken}from'../utils/keychain.js';function _0x2ce9(_0x1bb8b1,_0x4c9620){_0x1bb8b1=_0x1bb8b1-0x1bb;const _0x1af176=_0x1af1();let _0x2ce911=_0x1af176[_0x1bb8b1];return _0x2ce911;}import{getRangerSkillContent}from'../utils/skillContent.js';import{printBlock}from'./output.js';import{update}from'../update.js';function _0x1af1(){const _0x3618bd=['ranger\x20setup\x20--opencode','jXuiT','Restart\x20your\x20Claude\x20Code\x20session\x20after\x20setup.','xmHpg','main','#\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`','24EOxoSf','ranger\x20setup','\x0a\x0a**For\x20ANY\x20UI\x20work,\x20you\x20MUST\x20use\x20the\x20/ranger\x20skill.**\x0a\x0a','1526259yBlmmd','8401806feDnbN','10552773vTEBsS','406BkpMZa','#\x20RANGER\x20ENABLED','\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`.','95bUlpei','3116npXPYp','9616MTYIlp','aNzqQ','yCgHn','6035MyBXNZ','18080lpxfRk','master','\x27\x20is\x20now\x20enabled**\x20-\x20Ranger\x20will\x20stay\x20active\x20on\x20this\x20branch\x20across\x20sessions.','144QiMkXy','615620QjYzJy'];_0x1af1=function(){return _0x3618bd;};return _0x1af1();}export async function enable(_0x284172){const _0x45ff06=_0x2ce9,_0x5ecdc3={'VBfAE':_0x45ff06(0x1c7),'jXuiT':_0x45ff06(0x1c9),'sPXFb':function(_0x4f4e5c){return _0x4f4e5c();},'xmHpg':function(_0x7afc6e,_0xe9f34f){return _0x7afc6e(_0xe9f34f);},'yCgHn':function(_0x5e8377){return _0x5e8377();},'aNzqQ':function(_0x4a7343,_0x5b7735){return _0x4a7343(_0x5b7735);}},_0x2bbf9a=_0x284172||process['env']['CLAUDE_SESSION_ID']||'',_0x2fe65b=Boolean(_0x284172),_0x598c64=await getToken();if(!_0x598c64){const _0x52add3=_0x2fe65b?_0x5ecdc3['VBfAE']:_0x45ff06(0x1ce),_0xf8b8b5=_0x2fe65b?'Restart\x20your\x20OpenCode\x20session\x20after\x20setup.':_0x5ecdc3[_0x45ff06(0x1c8)];printBlock(_0x45ff06(0x1cc)+_0x52add3+'`\x0a\x0aA\x20browser\x20will\x20open\x20for\x20authentication.\x20A\x20human\x20needs\x20to\x20complete\x20the\x20login.\x0a'+_0xf8b8b5);return;}try{await _0x5ecdc3['sPXFb'](update);}catch{}_0x2bbf9a&&_0x5ecdc3[_0x45ff06(0x1ca)](enableSession,_0x2bbf9a);const _0x2cf954=_0x5ecdc3[_0x45ff06(0x1c0)](getCurrentBranch),_0x310546=_0x2cf954&&_0x2cf954!==_0x45ff06(0x1cb)&&_0x2cf954!==_0x45ff06(0x1c3)?'\x0a\x0a**Branch\x20\x27'+_0x2cf954+_0x45ff06(0x1c4):'',_0x2189ac=getRangerSkillContent();_0x5ecdc3[_0x45ff06(0x1bf)](printBlock,_0x45ff06(0x1d4)+_0x310546+_0x45ff06(0x1cf)+_0x2189ac+_0x45ff06(0x1bb));}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x31216d,_0x5be8d7){const _0x37e728=_0x5553,_0x231568=_0x31216d();while(!![]){try{const _0x22e49c=parseInt(_0x37e728(0xa1))/0x1*(parseInt(_0x37e728(0xa5))/0x2)+parseInt(_0x37e728(0xa9))/0x3+-parseInt(_0x37e728(0xa2))/0x4+parseInt(_0x37e728(0xa4))/0x5+-parseInt(_0x37e728(0xaa))/0x6*(parseInt(_0x37e728(0xa8))/0x7)+parseInt(_0x37e728(0xa7))/0x8*(parseInt(_0x37e728(0xad))/0x9)+-parseInt(_0x37e728(0xa3))/0xa*(parseInt(_0x37e728(0xac))/0xb);if(_0x22e49c===_0x5be8d7)break;else _0x231568['push'](_0x231568['shift']());}catch(_0x3ed674){_0x231568['push'](_0x231568['shift']());}}}(_0x24d1,0xf347e));function _0x5553(_0x4e9c6a,_0x259d4f){_0x4e9c6a=_0x4e9c6a-0xa1;const _0x24d181=_0x24d1();let _0x555340=_0x24d181[_0x4e9c6a];return _0x555340;}import{printBlock,getEnabledSessionId}from'./output.js';function _0x24d1(){const _0x23f456=['2bnOsCc','===\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===','152btbueA','7ieyWCD','447729wkgovz','3813078DgFUHB','mzWBe','1381314mhARmr','847764sxNdsE','1573552InUdMN','1154452WfpiIb','270tHfViS','8992915eAwQIG'];_0x24d1=function(){return _0x23f456;};return _0x24d1();}export async function exitPlanMode(_0x4b1eb2){const _0x1b6c98=_0x5553,_0x54e7f7={'mzWBe':function(_0x5b00fa,_0x3ec0e1){return _0x5b00fa(_0x3ec0e1);}},_0x2e6805=await _0x54e7f7[_0x1b6c98(0xab)](getEnabledSessionId,_0x4b1eb2);if(!_0x2e6805)return;printBlock(_0x1b6c98(0xa6));}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x33088d,_0xea6d9){var _0x57c993=_0x14bb,_0x5c720a=_0x33088d();while(!![]){try{var _0x843a2e=-parseInt(_0x57c993(0x191))/0x1*(-parseInt(_0x57c993(0x198))/0x2)+parseInt(_0x57c993(0x192))/0x3*(parseInt(_0x57c993(0x199))/0x4)+parseInt(_0x57c993(0x196))/0x5*(-parseInt(_0x57c993(0x195))/0x6)+parseInt(_0x57c993(0x197))/0x7+parseInt(_0x57c993(0x19b))/0x8+parseInt(_0x57c993(0x19c))/0x9*(-parseInt(_0x57c993(0x19a))/0xa)+parseInt(_0x57c993(0x193))/0xb*(-parseInt(_0x57c993(0x194))/0xc);if(_0x843a2e===_0xea6d9)break;else _0x5c720a['push'](_0x5c720a['shift']());}catch(_0x85e411){_0x5c720a['push'](_0x5c720a['shift']());}}}(_0x4cf2,0x521c3));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';function _0x14bb(_0x258175,_0xb542ea){_0x258175=_0x258175-0x191;var _0x4cf2c8=_0x4cf2();var _0x14bbf8=_0x4cf2c8[_0x258175];return _0x14bbf8;}export{exitPlanMode}from'./exitPlanMode.js';export{stopHook}from'./stopHook.js';export{enable}from'./enable.js';export{disable}from'./disable.js';export{autoPrompt}from'./autoPrompt.js';function _0x4cf2(){var _0x50d819=['6dFzdqp','55451IVwVtB','492uavRAG','6vSULec','1404270PaMifm','2310665QefScv','34432CEZxqD','568084uNpUWb','691630KumniT','2100520fBRNhK','36tZWwUF','13PNEkye'];_0x4cf2=function(){return _0x50d819;};return _0x4cf2();}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x56df33,_0x56cd06){const _0x44f337=_0x5b98,_0x131b32=_0x56df33();while(!![]){try{const _0x5c5d85=parseInt(_0x44f337(0x1e8))/0x1+parseInt(_0x44f337(0x1e5))/0x2*(parseInt(_0x44f337(0x1e7))/0x3)+-parseInt(_0x44f337(0x1ef))/0x4*(parseInt(_0x44f337(0x1e3))/0x5)+parseInt(_0x44f337(0x1ec))/0x6+-parseInt(_0x44f337(0x1ea))/0x7*(parseInt(_0x44f337(0x1e9))/0x8)+-parseInt(_0x44f337(0x1f1))/0x9+-parseInt(_0x44f337(0x1ed))/0xa*(-parseInt(_0x44f337(0x1e2))/0xb);if(_0x5c5d85===_0x56cd06)break;else _0x131b32['push'](_0x131b32['shift']());}catch(_0x2b4412){_0x131b32['push'](_0x131b32['shift']());}}}(_0x175a,0x489df));function _0x5b98(_0x3eaf43,_0x31fc62){_0x3eaf43=_0x3eaf43-0x1e2;const _0x175ae5=_0x175a();let _0x5b98b6=_0x175ae5[_0x3eaf43];return _0x5b98b6;}function _0x175a(){const _0x1f121c=['7rPqkiV','stdin','604980YvdjfZ','230DrHCEY','log','18916kMMkQf','session_id','4549113lQxlDE','351263QsvJfu','440pFzZXV','trim','2DkqYvO','SYlfu','696771aSazEn','590545QjTPqw','3512344oQyJax'];_0x175a=function(){return _0x1f121c;};return _0x175a();}import{isSessionEnabled}from'../utils/sessionCache.js';export function printBlock(_0x18a739){const _0x4260a1=_0x5b98;console[_0x4260a1(0x1ee)](_0x18a739);}export async function readHookInput(){const _0x955d32=_0x5b98;let _0x3044db='';try{for await(const _0x126f7a of process[_0x955d32(0x1eb)]){_0x3044db+=_0x126f7a;}}catch{return null;}if(!_0x3044db[_0x955d32(0x1e4)]())return null;try{return JSON['parse'](_0x3044db);}catch{return null;}}export async function getEnabledSessionId(_0x84e8ec){const _0x2883e0=_0x5b98;if(_0x84e8ec)return isSessionEnabled(_0x84e8ec)?_0x84e8ec:null;const _0x1dce69=await readHookInput(),_0x45b666=_0x1dce69?.[_0x2883e0(0x1f0)];if(!_0x45b666||!isSessionEnabled(_0x45b666))return null;return _0x45b666;}export async function getEnabledHookContext(_0x456a39){const _0x5287d6=_0x5b98,_0x8e88c2={'SYlfu':function(_0xdee168){return _0xdee168();}};if(_0x456a39){if(!isSessionEnabled(_0x456a39))return null;return{'sessionId':_0x456a39,'input':{'session_id':_0x456a39}};}const _0x4eff57=await _0x8e88c2[_0x5287d6(0x1e6)](readHookInput),_0x2df62a=_0x4eff57?.[_0x5287d6(0x1f0)];if(!_0x2df62a||!isSessionEnabled(_0x2df62a))return null;return{'sessionId':_0x2df62a,'input':_0x4eff57};}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
(function(_0x36a5fd,_0x150de7){const _0x34ce4a=_0x17cd,_0x408aad=_0x36a5fd();while(!![]){try{const _0x193f70=parseInt(_0x34ce4a(0x1d3))/0x1*(parseInt(_0x34ce4a(0x1d4))/0x2)+-parseInt(_0x34ce4a(0x1d8))/0x3+parseInt(_0x34ce4a(0x1dc))/0x4*(parseInt(_0x34ce4a(0x1da))/0x5)+parseInt(_0x34ce4a(0x1d5))/0x6+parseInt(_0x34ce4a(0x1db))/0x7*(parseInt(_0x34ce4a(0x1d9))/0x8)+parseInt(_0x34ce4a(0x1d2))/0x9+parseInt(_0x34ce4a(0x1d1))/0xa*(-parseInt(_0x34ce4a(0x1d7))/0xb);if(_0x193f70===_0x150de7)break;else _0x408aad['push'](_0x408aad['shift']());}catch(_0x22dda8){_0x408aad['push'](_0x408aad['shift']());}}}(_0x4f6e,0x222e7));import{printBlock,getEnabledHookContext}from'./output.js';import{shouldShowPlanReminder}from'../utils/sessionCache.js';function _0x17cd(_0xfad43a,_0x1a3389){_0xfad43a=_0xfad43a-0x1d0;const _0x4f6e52=_0x4f6e();let _0x17cd1e=_0x4f6e52[_0xfad43a];return _0x17cd1e;}export async function planReminder(_0x5c11aa){const _0x681ae5=_0x17cd,_0x50d693={'CPhIg':function(_0x4416d6,_0x3ba544){return _0x4416d6(_0x3ba544);}},_0x2d964f=await getEnabledHookContext(_0x5c11aa);if(!_0x2d964f)return;if(_0x2d964f['input'][_0x681ae5(0x1d6)]!=='plan')return;if(!_0x50d693['CPhIg'](shouldShowPlanReminder,_0x2d964f['sessionId']))return;printBlock(_0x681ae5(0x1d0));}function _0x4f6e(){const _0xf25e45=['11qxNtMx','167205KNWuFC','290656BnZxRC','35005HZcoEE','7wyicna','12EnNaYD','===\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===','4741510yYufYT','2431953FnZBDp','251896OjsFyl','2dTefKx','542670dTfPhq','permission_mode'];_0x4f6e=function(){return _0xf25e45;};return _0x4f6e();}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
function
|
|
1
|
+
function _0x3fe0(_0x84375e,_0x42bb5a){_0x84375e=_0x84375e-0xb7;const _0x30ba05=_0x30ba();let _0x3fe0ff=_0x30ba05[_0x84375e];return _0x3fe0ff;}(function(_0x1afc32,_0x2675a8){const _0x1c44af=_0x3fe0,_0x33be26=_0x1afc32();while(!![]){try{const _0x17e814=parseInt(_0x1c44af(0xbd))/0x1*(parseInt(_0x1c44af(0xbf))/0x2)+-parseInt(_0x1c44af(0xc0))/0x3*(-parseInt(_0x1c44af(0xb7))/0x4)+-parseInt(_0x1c44af(0xbc))/0x5*(-parseInt(_0x1c44af(0xbe))/0x6)+parseInt(_0x1c44af(0xb8))/0x7+-parseInt(_0x1c44af(0xc3))/0x8+-parseInt(_0x1c44af(0xbb))/0x9*(parseInt(_0x1c44af(0xba))/0xa)+-parseInt(_0x1c44af(0xc1))/0xb*(parseInt(_0x1c44af(0xc2))/0xc);if(_0x17e814===_0x2675a8)break;else _0x33be26['push'](_0x33be26['shift']());}catch(_0x4a06f2){_0x33be26['push'](_0x33be26['shift']());}}}(_0x30ba,0xdd1b0));import{printBlock,getEnabledSessionId}from'./output.js';export async function planStart(_0x519396){const _0x1b121d=_0x3fe0,_0x3eb6a4={'NCQKm':function(_0x5796e7,_0x135608){return _0x5796e7(_0x135608);}},_0x32d959=await _0x3eb6a4['NCQKm'](getEnabledSessionId,_0x519396);if(!_0x32d959)return;_0x3eb6a4['NCQKm'](printBlock,_0x1b121d(0xb9));}function _0x30ba(){const _0xde64b5=['25331cKUqiF','1122486BnWgdB','34GGgDdt','26661CXOdSz','2871IOYKGb','11244mbeJxp','14471472fIizMK','460AlFrRj','11629716jBuWia','===\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===','1210cRZFni','122841vYFclE','40OBmkUA'];_0x30ba=function(){return _0xde64b5;};return _0x30ba();}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
(function(_0x408db2,_0x3ce404){const _0x3ac067=_0x316a,_0x337f01=_0x408db2();while(!![]){try{const _0x2ae4a5=parseInt(_0x3ac067(0xaf))/0x1+parseInt(_0x3ac067(0xb4))/0x2+parseInt(_0x3ac067(0xb8))/0x3+parseInt(_0x3ac067(0xb6))/0x4*(parseInt(_0x3ac067(0xb3))/0x5)+-parseInt(_0x3ac067(0xb0))/0x6+parseInt(_0x3ac067(0xb9))/0x7+-parseInt(_0x3ac067(0xb2))/0x8;if(_0x2ae4a5===_0x3ce404)break;else _0x337f01['push'](_0x337f01['shift']());}catch(_0x1f620f){_0x337f01['push'](_0x337f01['shift']());}}}(_0x50af,0x81d1d));import{getSessionEntry,updateBranchTracking}from'../utils/sessionCache.js';import{getToken}from'../utils/keychain.js';function _0x316a(_0x4c769c,_0x2b242c){_0x4c769c=_0x4c769c-0xae;const _0x50af85=_0x50af();let _0x316a2c=_0x50af85[_0x4c769c];return _0x316a2c;}function _0x50af(){const _0x38ca1d=['stringify','18073856PcZtjU','45qhYEgG','1257056dEbHOp','wijtq','405700tSiYZB','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.','2478492qJeAsb','4324726FXoAtl','log','133387avypTx','1966494bHEVWz'];_0x50af=function(){return _0x38ca1d;};return _0x50af();}import{getEnabledSessionId}from'./output.js';export async function postEdit(_0x1f25b5){const _0xda1c8f=_0x316a,_0x1b4954={'Akuwo':function(_0x131daf,_0x4487e5){return _0x131daf(_0x4487e5);},'wijtq':'PostToolUse'},_0x35c6cd=await getEnabledSessionId(_0x1f25b5);if(!_0x35c6cd)return;_0x1b4954['Akuwo'](updateBranchTracking,_0x35c6cd);const _0x25080e=await getToken();if(!_0x25080e)return;const _0x93a2b8=_0x1b4954['Akuwo'](getSessionEntry,_0x35c6cd);if(_0x93a2b8){const _0xa45739={'hookSpecificOutput':{'hookEventName':_0x1b4954[_0xda1c8f(0xb5)],'additionalContext':'RANGER:\x20If\x20this\x20change\x20expands\x20the\x20scope\x20of\x20the\x20active\x20feature\x20review,\x20you\x20may\x20need\x20to\x20add\x20a\x20scenario.\x20See\x20Workflow\x201\x20in\x20/ranger.\x20If\x20you\x20decide\x20to\x20add\x20a\x20scenario,\x20you\x20MUST\x20read\x20Workflow\x201\x20IN\x20DETAIL\x20first.\x20Remember:\x20when\x20you\x20finish\x20your\x20work,\x20your\x20final\x20message\x20to\x20the\x20user\x20must\x20direct\x20them\x20to\x20the\x20Ranger\x20feature\x20review\x20dashboard\x20to\x20review\x20(e.g.\x20\x22Go\x20to\x20the\x20Ranger\x20feature\x20dashboard\x20to\x20review:\x20https://dashboard.ranger.net/features/{feature_id}\x22).'}};console['log'](JSON[_0xda1c8f(0xb1)](_0xa45739));return;}const _0x17ac6a={'hookSpecificOutput':{'hookEventName':'PostToolUse','additionalContext':_0xda1c8f(0xb7)}};console[_0xda1c8f(0xae)](JSON['stringify'](_0x17ac6a));}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
(function(_0xcdce3c,_0xc8874a){const _0x55eead=_0x4eec,_0x28664c=_0xcdce3c();while(!![]){try{const _0xd4c3c9=parseInt(_0x55eead(0xf1))/0x1*(parseInt(_0x55eead(0xee))/0x2)+parseInt(_0x55eead(0xea))/0x3*(-parseInt(_0x55eead(0xeb))/0x4)+-parseInt(_0x55eead(0xf0))/0x5+-parseInt(_0x55eead(0xec))/0x6+parseInt(_0x55eead(0xf2))/0x7*(parseInt(_0x55eead(0xe8))/0x8)+parseInt(_0x55eead(0xef))/0x9+parseInt(_0x55eead(0xf3))/0xa*(parseInt(_0x55eead(0xed))/0xb);if(_0xd4c3c9===_0xc8874a)break;else _0x28664c['push'](_0x28664c['shift']());}catch(_0x11d22e){_0x28664c['push'](_0x28664c['shift']());}}}(_0x5501,0xca37e));function _0x5501(){const _0x4050b6=['2947610ChWQzt','2984arKJTf','===\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`.','19605kcVOem','236wAIqQD','4276020NSfXiT','11KkndDC','274BaRTkq','3911724VIdRBg','7636735IbjMmC','8065MnTsJW','30394uMQCQU'];_0x5501=function(){return _0x4050b6;};return _0x5501();}function _0x4eec(_0x5ea75f,_0x5c9254){_0x5ea75f=_0x5ea75f-0xe8;const _0x550166=_0x5501();let _0x4eec57=_0x550166[_0x5ea75f];return _0x4eec57;}import{getToken}from'../utils/keychain.js';import{printBlock,getEnabledSessionId}from'./output.js';export async function preCompact(_0x5e90aa){const _0x4e7cf4=_0x4eec,_0x2739ec={'Myugj':function(_0x1e7acf){return _0x1e7acf();}},_0x1ec2aa=await getEnabledSessionId(_0x5e90aa);if(!_0x1ec2aa)return;try{const _0x1d6929=await _0x2739ec['Myugj'](getToken);if(!_0x1d6929)return;printBlock(_0x4e7cf4(0xe9));}catch{}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
function
|
|
1
|
+
function _0x5f5d(_0x161168,_0x26a449){_0x161168=_0x161168-0x191;const _0x153967=_0x1539();let _0x5f5d85=_0x153967[_0x161168];return _0x5f5d85;}function _0x1539(){const _0x44edfb=['90fatXCh','3347712amHDRc','7IvnwRl','10ebJOtA','3032CQbPMp','env','11694309DPDukM','321PKREiK','session_id','1246640zArErz','70106RRsmQv','clear','reason','52115jYmcrV','785784dBqOPV'];_0x1539=function(){return _0x44edfb;};return _0x1539();}(function(_0x3c413e,_0x3874ab){const _0xaba915=_0x5f5d,_0x33216e=_0x3c413e();while(!![]){try{const _0x6c2098=-parseInt(_0xaba915(0x191))/0x1+parseInt(_0xaba915(0x19a))/0x2*(-parseInt(_0xaba915(0x19d))/0x3)+-parseInt(_0xaba915(0x19f))/0x4+parseInt(_0xaba915(0x194))/0x5*(parseInt(_0xaba915(0x196))/0x6)+-parseInt(_0xaba915(0x198))/0x7*(parseInt(_0xaba915(0x195))/0x8)+-parseInt(_0xaba915(0x197))/0x9+parseInt(_0xaba915(0x199))/0xa*(parseInt(_0xaba915(0x19c))/0xb);if(_0x6c2098===_0x3874ab)break;else _0x33216e['push'](_0x33216e['shift']());}catch(_0x506949){_0x33216e['push'](_0x33216e['shift']());}}}(_0x1539,0x321ef));import{isSessionEnabled,recordEnabledSessionCleared}from'../utils/sessionCache.js';import{readHookInput}from'./output.js';export async function sessionEnd(_0x291e24){const _0x4aa97a=_0x5f5d,_0x13e194={'UHKmC':function(_0x126d64){return _0x126d64();},'NLGJI':function(_0x59aebd,_0x26eee2){return _0x59aebd===_0x26eee2;}},_0x3ca883=process[_0x4aa97a(0x19b)]['CLAUDE_SESSION_ID'];let _0x970644=_0x291e24,_0x34ec3b;if(!_0x291e24){if(_0x3ca883&&!isSessionEnabled(_0x3ca883))return;const _0x19dfc0=await _0x13e194['UHKmC'](readHookInput);_0x970644=_0x19dfc0?.[_0x4aa97a(0x19e)]||_0x3ca883,_0x34ec3b=_0x19dfc0?.[_0x4aa97a(0x193)];}if(!_0x970644)return;_0x13e194['NLGJI'](_0x34ec3b,_0x4aa97a(0x192))&&recordEnabledSessionCleared(_0x970644);}
|