@ranger-testing/ranger-cli 2.1.3 → 2.1.5

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.
Files changed (66) hide show
  1. package/build/cli.js +1 -1
  2. package/build/commands/addEnv.js +1 -1
  3. package/build/commands/authEncrypt.js +1 -1
  4. package/build/commands/clean.js +1 -1
  5. package/build/commands/config.js +1 -1
  6. package/build/commands/env.js +1 -1
  7. package/build/commands/feature.js +1 -1
  8. package/build/commands/hook.js +1 -1
  9. package/build/commands/hooks/autoPrompt.js +1 -1
  10. package/build/commands/hooks/disable.js +1 -1
  11. package/build/commands/hooks/enable.js +1 -1
  12. package/build/commands/hooks/exitPlanMode.js +1 -1
  13. package/build/commands/hooks/index.js +1 -1
  14. package/build/commands/hooks/output.js +1 -1
  15. package/build/commands/hooks/planReminder.js +1 -1
  16. package/build/commands/hooks/planStart.js +1 -1
  17. package/build/commands/hooks/postEdit.js +1 -1
  18. package/build/commands/hooks/preCompact.js +1 -1
  19. package/build/commands/hooks/sessionEnd.js +1 -1
  20. package/build/commands/hooks/sessionStart.js +1 -1
  21. package/build/commands/hooks/stopHook.js +1 -1
  22. package/build/commands/index.js +1 -1
  23. package/build/commands/login.js +1 -1
  24. package/build/commands/setup/claude.js +1 -1
  25. package/build/commands/setup/opencode.js +1 -1
  26. package/build/commands/setupCi.js +1 -1
  27. package/build/commands/skillup.js +1 -1
  28. package/build/commands/start.js +1 -1
  29. package/build/commands/status.js +1 -1
  30. package/build/commands/update.js +1 -1
  31. package/build/commands/updateEnv.js +1 -1
  32. package/build/commands/useEnv.js +1 -1
  33. package/build/commands/utils/activeProfile.js +1 -1
  34. package/build/commands/utils/browserSessionsApi.js +1 -1
  35. package/build/commands/utils/claudeConfig.js +1 -1
  36. package/build/commands/utils/claudePlugin.js +1 -1
  37. package/build/commands/utils/crypto.js +1 -1
  38. package/build/commands/utils/desirePathLog.js +1 -1
  39. package/build/commands/utils/deviceAuth.js +1 -1
  40. package/build/commands/utils/environment.js +1 -1
  41. package/build/commands/utils/featureApi.js +1 -1
  42. package/build/commands/utils/featureReportGenerator.js +1 -1
  43. package/build/commands/utils/fixWebmDuration.js +1 -1
  44. package/build/commands/utils/git.js +1 -1
  45. package/build/commands/utils/keychain.js +1 -1
  46. package/build/commands/utils/localAgentInstallationsApi.js +1 -1
  47. package/build/commands/utils/mcpImageBase64.js +1 -1
  48. package/build/commands/utils/model.js +1 -1
  49. package/build/commands/utils/opencodeConfig.js +1 -1
  50. package/build/commands/utils/profileMessages.js +1 -1
  51. package/build/commands/utils/profileSetupBanner.js +1 -1
  52. package/build/commands/utils/rangerConfig.js +1 -1
  53. package/build/commands/utils/rangerRoot.js +1 -1
  54. package/build/commands/utils/reportGenerator.js +1 -1
  55. package/build/commands/utils/retry.js +1 -1
  56. package/build/commands/utils/sessionCache.js +1 -1
  57. package/build/commands/utils/settings.js +1 -1
  58. package/build/commands/utils/skillContent.js +1 -1
  59. package/build/commands/utils/skills.js +1 -1
  60. package/build/commands/utils/telemetry.js +1 -1
  61. package/build/commands/utils/traceSnapshotMapper.js +1 -1
  62. package/build/commands/utils/userApi.js +1 -1
  63. package/build/commands/utils/version.js +1 -1
  64. package/build/commands/verifyFeature.js +1 -1
  65. package/build/commands/verifyInBrowser.js +1 -1
  66. package/package.json +2 -2
@@ -1 +1 @@
1
- function _0xa8b0(){const _0x19fdfc=['9GvEysL','includes','length','baseUrl','AlsZz','sessions','bug-bashes','1939NOAeVL','FIQzl','56518NKPnYU','21832wOIVwc','1172910EBSWjg','push','kukWp','settings.json','1859270tsvDMD','2199356yJSnIG','log','legacy','vWpmg','\x0aNo\x20profiles\x20found.','6GJlYFk','1807210nYHXDI','isDirectory','\x20\x20\x20\x20\x20\x20Details:\x20','environmentDetails','ZMuao','reports','.txt','4860XcpoiM','3kGTRxW','283848cOUeiy','VqQcs','local','qAxwU'];_0xa8b0=function(){return _0x19fdfc;};return _0xa8b0();}const _0x517e83=_0x3950;(function(_0x219844,_0x5521d2){const _0x43d9bb=_0x3950,_0x14cedc=_0x219844();while(!![]){try{const _0x1e308e=parseInt(_0x43d9bb(0x13b))/0x1+parseInt(_0x43d9bb(0x155))/0x2+parseInt(_0x43d9bb(0x13a))/0x3*(parseInt(_0x43d9bb(0x14f))/0x4)+parseInt(_0x43d9bb(0x14e))/0x5*(parseInt(_0x43d9bb(0x154))/0x6)+-parseInt(_0x43d9bb(0x146))/0x7*(-parseInt(_0x43d9bb(0x149))/0x8)+-parseInt(_0x43d9bb(0x13f))/0x9*(parseInt(_0x43d9bb(0x14a))/0xa)+parseInt(_0x43d9bb(0x148))/0xb*(-parseInt(_0x43d9bb(0x139))/0xc);if(_0x1e308e===_0x5521d2)break;else _0x14cedc['push'](_0x14cedc['shift']());}catch(_0x16b35b){_0x14cedc['push'](_0x14cedc['shift']());}}}(_0xa8b0,0xa2d12));function _0x3950(_0x4bfca8,_0x3b552a){_0x4bfca8=_0x4bfca8-0x135;const _0xa8b01c=_0xa8b0();let _0x395077=_0xa8b01c[_0x4bfca8];return _0x395077;}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';import{readActiveProfileName}from'./utils/activeProfile.js';const NON_ENV_DIRS=[_0x517e83(0x144),_0x517e83(0x145),_0x517e83(0x137),'local','ci'];export async function getEnvNames(){const _0x2dc426=_0x517e83,_0x17e744={'PaDBX':function(_0x57772e){return _0x57772e();},'SNbgd':function(_0x2c85fd,_0xbadde3){return _0x2c85fd(_0xbadde3);},'ZMuao':_0x2dc426(0x13d),'kukWp':function(_0x12ca3e,_0x41f9e8){return _0x12ca3e(_0x41f9e8);},'CeTXo':function(_0x5179f1,_0x5a5501,_0xc2b4fb){return _0x5179f1(_0x5a5501,_0xc2b4fb);},'FIQzl':function(_0x4b6736,_0xb82300){return _0x4b6736(_0xb82300);},'AlsZz':function(_0x590d32,_0x37779b){return _0x590d32(_0x37779b);},'yOUjw':_0x2dc426(0x14d)},_0x39c112=_0x17e744['PaDBX'](getRangerDir);if(!_0x17e744['SNbgd'](existsSync,_0x39c112))return{'envNames':[],'activeEnv':null,'envTypes':{}};const _0x3d176c=await readActiveProfileName(),_0x2064f2=[],_0x2ab3bb={},_0x17bfd2=join(_0x39c112,_0x17e744[_0x2dc426(0x136)]);if(existsSync(_0x17bfd2)){const _0x5f09e2=await _0x17e744[_0x2dc426(0x14c)](readdir,_0x17bfd2);for(const _0x38b716 of _0x5f09e2){const _0x175690=join(_0x17bfd2,_0x38b716),_0x95a56d=await stat(_0x175690);_0x95a56d['isDirectory']()&&(_0x2064f2[_0x2dc426(0x14b)](_0x38b716),_0x2ab3bb[_0x38b716]=_0x2dc426(0x13d));}}const _0x5985bb=_0x17e744['CeTXo'](join,_0x39c112,'ci');if(existsSync(_0x5985bb)){const _0x2c0ad8=await readdir(_0x5985bb);for(const _0x4bee6e of _0x2c0ad8){const _0x7da4a3=join(_0x5985bb,_0x4bee6e),_0x5f0810=await _0x17e744[_0x2dc426(0x147)](stat,_0x7da4a3);_0x5f0810['isDirectory']()&&(_0x2064f2['push'](_0x4bee6e),_0x2ab3bb[_0x4bee6e]='ci');}}const _0x59efee=await readdir(_0x39c112);for(const _0x96578e of _0x59efee){if(NON_ENV_DIRS[_0x2dc426(0x140)](_0x96578e))continue;if(_0x96578e['startsWith']('.'))continue;if(_0x96578e['endsWith'](_0x2dc426(0x138)))continue;const _0xa3b9c9=join(_0x39c112,_0x96578e),_0x2ddb93=await _0x17e744[_0x2dc426(0x143)](stat,_0xa3b9c9);_0x2ddb93[_0x2dc426(0x156)]()&&existsSync(_0x17e744['CeTXo'](join,_0xa3b9c9,_0x17e744['yOUjw']))&&(!_0x2064f2['includes'](_0x96578e)&&(_0x2064f2[_0x2dc426(0x14b)](_0x96578e),_0x2ab3bb[_0x96578e]=_0x2dc426(0x151)));}return{'envNames':_0x2064f2,'activeEnv':_0x3d176c,'envTypes':_0x2ab3bb};}export async function envList(){const _0x3fa07e=_0x517e83,_0xbe418e={'LkRyY':function(_0x42cad1){return _0x42cad1();},'qAxwU':function(_0xffbcc,_0x5ca558){return _0xffbcc===_0x5ca558;},'VqQcs':_0x3fa07e(0x153),'mirCm':function(_0x26215c,_0x890221){return _0x26215c(_0x890221);},'vWpmg':_0x3fa07e(0x151)},{envNames:_0x474493,activeEnv:_0x50aa1a,envTypes:_0x49f1b5}=await _0xbe418e['LkRyY'](getEnvNames);if(_0xbe418e[_0x3fa07e(0x13e)](_0x474493[_0x3fa07e(0x141)],0x0)){console[_0x3fa07e(0x150)](_0xbe418e[_0x3fa07e(0x13c)]),console[_0x3fa07e(0x150)]('Run:\x20ranger\x20profile\x20add\x20<profile-name>');return;}console['log']('\x0aProfiles:');for(const _0x1b2bef of _0x474493['sort']()){const _0x2f40c7=_0x1b2bef===_0x50aa1a,_0x1f360e=_0x49f1b5[_0x1b2bef]||_0x3fa07e(0x13d),_0x88e635=await _0xbe418e['mirCm'](loadSettings,_0x1b2bef),_0x4f751a=_0x1f360e===_0xbe418e[_0x3fa07e(0x152)]?'':'\x20['+_0x1f360e+']';console['log']('\x20\x20'+(_0x2f40c7?'*\x20':'\x20\x20')+_0x1b2bef+_0x4f751a),_0x88e635[_0x3fa07e(0x142)]&&console['log']('\x20\x20\x20\x20\x20\x20URL:\x20'+_0x88e635['baseUrl']),_0x88e635['environmentDetails']&&console['log'](_0x3fa07e(0x157)+_0x88e635[_0x3fa07e(0x135)]);}_0x50aa1a&&console[_0x3fa07e(0x150)]('\x0a*\x20=\x20active\x20profile');}
1
+ const _0x225502=_0x393e;(function(_0xfcfe4f,_0x2098a5){const _0x38fe5f=_0x393e,_0x3b73aa=_0xfcfe4f();while(!![]){try{const _0x4592b3=parseInt(_0x38fe5f(0x1d2))/0x1+-parseInt(_0x38fe5f(0x1da))/0x2+-parseInt(_0x38fe5f(0x1c6))/0x3*(parseInt(_0x38fe5f(0x1c7))/0x4)+-parseInt(_0x38fe5f(0x1c3))/0x5+-parseInt(_0x38fe5f(0x1c4))/0x6*(parseInt(_0x38fe5f(0x1cc))/0x7)+-parseInt(_0x38fe5f(0x1ce))/0x8+parseInt(_0x38fe5f(0x1db))/0x9;if(_0x4592b3===_0x2098a5)break;else _0x3b73aa['push'](_0x3b73aa['shift']());}catch(_0x18a8b2){_0x3b73aa['push'](_0x3b73aa['shift']());}}}(_0x3f9d,0x341ea));function _0x393e(_0xe43a27,_0x357e76){_0xe43a27=_0xe43a27-0x1bf;const _0x3f9d9c=_0x3f9d();let _0x393ebd=_0x3f9d9c[_0xe43a27];return _0x393ebd;}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 _0x3f9d(){const _0x5aca3c=['HBKbg','60jkIXMd','11060MnMJUT','aRvyf','ABcEX','reports','kTwLb','1688442eAwzyL','environmentDetails','2223344oPcEnl','log','isDirectory','legacy','410553aUXvfn','baseUrl','mOVkG','push','Run:\x20ranger\x20profile\x20add\x20<profile-name>','nmcPm','RSdjN','length','23322PfSkcb','6678549CrxLPR','\x0aProfiles:','includes','\x20\x20\x20\x20\x20\x20Details:\x20','\x20\x20\x20\x20\x20\x20URL:\x20','1765235NcDLPf','6TVSmiX'];_0x3f9d=function(){return _0x5aca3c;};return _0x3f9d();}import{readActiveProfileName}from'./utils/activeProfile.js';const NON_ENV_DIRS=['sessions','bug-bashes',_0x225502(0x1ca),'local','ci'];export async function getEnvNames(){const _0x2c2c76=_0x225502,_0x8816a5={'GlQnj':function(_0x54b2d6){return _0x54b2d6();},'YdcRK':function(_0x3b305f,_0x5c8d80){return _0x3b305f(_0x5c8d80);},'kTwLb':'local','nmcPm':function(_0x3ba98a,_0x484cea,_0x3fe19d){return _0x3ba98a(_0x484cea,_0x3fe19d);},'cRIhO':function(_0x291768,_0x2b6351){return _0x291768(_0x2b6351);},'aRvyf':function(_0x5674ba,_0x22bf90){return _0x5674ba(_0x22bf90);},'mOVkG':'.txt','RSdjN':function(_0x65eb3d,_0x4823fd){return _0x65eb3d(_0x4823fd);},'HBKbg':_0x2c2c76(0x1d1)},_0x336329=_0x8816a5['GlQnj'](getRangerDir);if(!_0x8816a5['YdcRK'](existsSync,_0x336329))return{'envNames':[],'activeEnv':null,'envTypes':{}};const _0x4d965f=await readActiveProfileName(),_0x381448=[],_0x13de6c={},_0x3e2ede=join(_0x336329,_0x8816a5['kTwLb']);if(existsSync(_0x3e2ede)){const _0xd86f3e=await readdir(_0x3e2ede);for(const _0x90c44b of _0xd86f3e){const _0x427695=_0x8816a5[_0x2c2c76(0x1d7)](join,_0x3e2ede,_0x90c44b),_0x38b045=await stat(_0x427695);_0x38b045[_0x2c2c76(0x1d0)]()&&(_0x381448['push'](_0x90c44b),_0x13de6c[_0x90c44b]=_0x8816a5[_0x2c2c76(0x1cb)]);}}const _0x4b4a5b=join(_0x336329,'ci');if(_0x8816a5['cRIhO'](existsSync,_0x4b4a5b)){const _0x2c5051=await readdir(_0x4b4a5b);for(const _0x3023a7 of _0x2c5051){const _0x45bbb5=join(_0x4b4a5b,_0x3023a7),_0x4d204f=await stat(_0x45bbb5);_0x4d204f['isDirectory']()&&(_0x381448['push'](_0x3023a7),_0x13de6c[_0x3023a7]='ci');}}const _0x201519=await _0x8816a5[_0x2c2c76(0x1c8)](readdir,_0x336329);for(const _0x242e30 of _0x201519){if(NON_ENV_DIRS['includes'](_0x242e30))continue;if(_0x242e30['startsWith']('.'))continue;if(_0x242e30['endsWith'](_0x8816a5[_0x2c2c76(0x1d4)]))continue;const _0x42480a=join(_0x336329,_0x242e30),_0x3d59ab=await _0x8816a5[_0x2c2c76(0x1d8)](stat,_0x42480a);_0x3d59ab[_0x2c2c76(0x1d0)]()&&existsSync(join(_0x42480a,'settings.json'))&&(!_0x381448[_0x2c2c76(0x1c0)](_0x242e30)&&(_0x381448[_0x2c2c76(0x1d5)](_0x242e30),_0x13de6c[_0x242e30]=_0x8816a5[_0x2c2c76(0x1c5)]));}return{'envNames':_0x381448,'activeEnv':_0x4d965f,'envTypes':_0x13de6c};}export async function envList(){const _0xda65bc=_0x225502,_0x19e57c={'lvSeM':'\x0aNo\x20profiles\x20found.','ABcEX':function(_0x2b319e,_0x412830){return _0x2b319e===_0x412830;},'QXorn':'legacy'},{envNames:_0x25a625,activeEnv:_0x576238,envTypes:_0x51befa}=await getEnvNames();if(_0x25a625[_0xda65bc(0x1d9)]===0x0){console['log'](_0x19e57c['lvSeM']),console['log'](_0xda65bc(0x1d6));return;}console['log'](_0xda65bc(0x1bf));for(const _0x2c202e of _0x25a625['sort']()){const _0x38883d=_0x2c202e===_0x576238,_0x47f324=_0x51befa[_0x2c202e]||'local',_0x25ccc9=await loadSettings(_0x2c202e),_0x226973=_0x19e57c[_0xda65bc(0x1c9)](_0x47f324,_0x19e57c['QXorn'])?'':'\x20['+_0x47f324+']';console[_0xda65bc(0x1cf)]('\x20\x20'+(_0x38883d?'*\x20':'\x20\x20')+_0x2c202e+_0x226973),_0x25ccc9['baseUrl']&&console['log'](_0xda65bc(0x1c2)+_0x25ccc9[_0xda65bc(0x1d3)]),_0x25ccc9[_0xda65bc(0x1cd)]&&console[_0xda65bc(0x1cf)](_0xda65bc(0x1c1)+_0x25ccc9['environmentDetails']);}_0x576238&&console['log']('\x0a*\x20=\x20active\x20profile');}
@@ -1 +1 @@
1
- const _0x5cb4dc=_0x3172;(function(_0x5523db,_0x21dfeb){const _0x7bed0b=_0x3172,_0x25c44f=_0x5523db();while(!![]){try{const _0x57d325=-parseInt(_0x7bed0b(0x254))/0x1*(-parseInt(_0x7bed0b(0x1e4))/0x2)+parseInt(_0x7bed0b(0x24d))/0x3*(-parseInt(_0x7bed0b(0x26b))/0x4)+parseInt(_0x7bed0b(0x286))/0x5+-parseInt(_0x7bed0b(0x267))/0x6*(-parseInt(_0x7bed0b(0x1f3))/0x7)+-parseInt(_0x7bed0b(0x1ee))/0x8*(-parseInt(_0x7bed0b(0x203))/0x9)+parseInt(_0x7bed0b(0x1f0))/0xa*(parseInt(_0x7bed0b(0x1d4))/0xb)+-parseInt(_0x7bed0b(0x1e5))/0xc*(parseInt(_0x7bed0b(0x1c6))/0xd);if(_0x57d325===_0x21dfeb)break;else _0x25c44f['push'](_0x25c44f['shift']());}catch(_0x10c598){_0x25c44f['push'](_0x25c44f['shift']());}}}(_0x6e3f,0xef486));function _0x3172(_0x115bcf,_0x26d63e){_0x115bcf=_0x115bcf-0x1be;const _0x6e3f92=_0x6e3f();let _0x317290=_0x6e3f92[_0x115bcf];return _0x317290;}import{readFile,writeFile,mkdir}from'fs/promises';import{join}from'path';import{existsSync}from'fs';import{execSync}from'child_process';import _0x567b4d from'inquirer';import{createFeature,listFeatures,getFeature,updateFeature,getFeatureReportMarkdown,listFeatureSessions,startSession,concludeSession,createChecklistItem,getActionItems,getItemFeedback,softDeleteFeature,restoreFeature,updateChecklistItem}from'./utils/featureApi.js';import{getRangerDir}from'./utils/rangerRoot.js';function _0x6e3f(){const _0x548910=['canonicalFlow','qcGNB','\x0a❌\x20No\x20scenarios\x20found\x20to\x20include.','1482668VDcAtR','utf-8','No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.','authorName','pipe','createdAt','\x20>\x20','en-US','gcUPy','kpyNI','numeric','YpRwZ','error','\x20\x20\x20Completed:\x20','pendingItems','iMqRw','590IOikTE','696SGnbSd','Cannot\x20add\x20scenario:\x20feature\x20review\x20has\x20an\x20active\x20review.\x20Please\x20finish\x20your\x20review\x20first:\x20','Next\x20page:\x20ranger\x20list\x20--offset\x20','completedAt','gitRepoUrl','Please\x20finish\x20your\x20review\x20first:','point','jdJPA','\x20at\x20[','6002776uOIUhP','\x20blocked','80WmzyaV','Scenario\x20','offset','28XWAuSX','Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','totalCount','assetUrl','PpLTC','push','\x20(v','\x0a✅\x20Feature\x20review\x20created:\x20','IGRxp','has','dashboardUrl','GOCFX','lGfDF','\x20\x20\x20Branch:\x20','lXrbi','\x0a📁\x20Sessions\x20for\x20feature\x20review:\x20','9PXngQO','VTJLR','spatial','incompleteItems','git\x20rev-parse\x20--abbrev-ref\x20HEAD','\x20\x20\x20\x20\x20Progress:\x20','\x20\x20\x20\x20\x20🎯\x20Element:\x20<','Multiple\x20feature\x20reviews\x20found.\x20Select\x20one:','QqNuP','status','\x20\x20\x20\x20','DHedC','\x0a✅\x20Resumed\x20feature\x20review:\x20','QQREa','split','verification_in_progress','.md','github.com/','\x20\x20\x20Created:\x20','paIBG','pDSas','description','rwjwK','map','DboTk','iWvHT','canceledReason','\x20\x20\x20\x20\x20\x20Approved','scenarios','currentBranch','qYmiI','\x20feature\x20review(s)\x20found','\x20Session\x20','TBaMx','mQtyt','cRkOr','iAUjk','\x0a❌\x20Invalid\x20scenario\x20number(s):\x20','\x0a✅\x20Restored\x20feature\x20review:\x20','thlKw','iRdJk','DWRoH','Gwwee','blockedItems','wAuJl','CfdTD','approved','limit','\x0a📋\x20Feedback\x20for:\x20','unaddressedComments','UjIlZ','closed','BLGXa','version','\x20\x20\x20Run\x20`ranger\x20get-review`\x20to\x20see\x20what\x20needs\x20to\x20be\x20fixed.','completed','\x20verified','sccCI','\x20—\x20','UnNWI','checklistItems','VNVdg','\x0a✅\x20Scenario\x20added','position','viwmu','submittedAt','KWhze','IymiH','\x20\x20\x20Updated\x20branch\x20to:\x20','latestReview','dSWbu','name','find','toLocaleDateString','6UWTZYJ','length','mYfOA','FhdeD','currentSessionId','\x20/\x20','domRef','1967UUSDeW','BkRAx','bEbJx','TYwWV','textContent','iteration','rsAiO','\x20\x20\x20To\x20restore\x20it,\x20run:\x20ranger\x20restore\x20','log','mHPDv','No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','No\x20sessions\x20found.','Current\x20session\x20not\x20found.','blocked','filter','isTTY','stdout','PVbmF','\x20\x20\x20Repository:\x20','2073426wZclAV','\x0aNon-interactive\x20mode\x20detected.\x20Multiple\x20feature\x20reviews\x20found:','toLocaleString','\x20of\x20','3802852mTRNwI','toFixed','\x0a\x20\x20\x20Scenarios:','isInteger','xlvEY','\x20--current-branch','\x0a🗑️\x20\x20Deleted\x20feature\x20review:\x20','in_progress','stats','type','goBLW','prompt','WgGZX','sessionId','\x20\x20\x20\x20\x20\x20Incomplete:\x20','replace','from','pop','env','yfGYO','gitBranch','No\x20scenarios\x20found.','includeDeleted','\x20\x20Expected\x20flow:','exit','incompleteReason','zfbYa','5840310cYJtMT','\x20\x20\x20▶️\x20Started\x20session\x20','repeat','terminalReason','items','QMZdK','kzeOu','blockedReason','\x1b[0m','trimEnd','trim','465699XOwSVo','join','hOmhA','\x0aGenerating\x20report...','\x20\x20\x20\x20\x20ID:\x20','any','git\x20remote\x20get-url\x20origin','ZfQUv','sort','Showing\x20','iYJcU'];_0x6e3f=function(){return _0x548910;};return _0x6e3f();}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=_0x478bf3=>'\x1b[1m'+_0x478bf3+_0x5cb4dc(0x1c3);function getGitRepoUrl(){const _0x59111a=_0x5cb4dc,_0x446b2d={'OzCPo':function(_0x3cbbfb,_0x14e732,_0xccd3a7){return _0x3cbbfb(_0x14e732,_0xccd3a7);},'TYwWV':_0x59111a(0x1cc),'DHedC':'utf-8','xlvEY':_0x59111a(0x1d8),'iAUjk':_0x59111a(0x214)};try{const _0x400bab=_0x446b2d['OzCPo'](execSync,_0x446b2d[_0x59111a(0x257)],{'encoding':_0x446b2d[_0x59111a(0x20e)],'stdio':[_0x446b2d[_0x59111a(0x26f)],_0x59111a(0x1d8),'pipe']})[_0x59111a(0x1c5)]();return _0x400bab['replace'](/\.git$/,'')[_0x59111a(0x27a)](/^git@github\.com:/,_0x446b2d[_0x59111a(0x227)])[_0x59111a(0x27a)](/^https?:\/\//,'');}catch{return undefined;}}function getGitBranch(){const _0x31b95b=_0x5cb4dc,_0xa3533e={'pDSas':function(_0x2986df,_0x5e5b27,_0x4a2123){return _0x2986df(_0x5e5b27,_0x4a2123);},'cvrPP':_0x31b95b(0x207),'owoTZ':'utf-8','GOCFX':_0x31b95b(0x1d8)};try{return _0xa3533e[_0x31b95b(0x217)](execSync,_0xa3533e['cvrPP'],{'encoding':_0xa3533e['owoTZ'],'stdio':[_0xa3533e['GOCFX'],_0xa3533e[_0x31b95b(0x1fe)],'pipe']})[_0x31b95b(0x1c5)]();}catch{return undefined;}}export async function getActiveFeatureId(){const _0x4f165e=_0x5cb4dc,_0x5a0b59={'QOAps':function(_0xc1e5a6,_0x5d616f){return _0xc1e5a6(_0x5d616f);},'IGRxp':'utf-8'},_0x3a44ef=join(getRangerDir(),ACTIVE_FEATURE_FILE);if(!_0x5a0b59['QOAps'](existsSync,_0x3a44ef))return null;try{const _0x4b8d27=await readFile(_0x3a44ef,_0x5a0b59[_0x4f165e(0x1fb)]);return _0x4b8d27[_0x4f165e(0x1c5)]()||null;}catch{return null;}}async function setActiveFeatureId(_0x49b4d0){const _0xa4d0c2=_0x5cb4dc,_0xde1492={'bEbJx':function(_0x3b005c,_0x43cc37,_0x1972f8){return _0x3b005c(_0x43cc37,_0x1972f8);},'fglce':function(_0x4937d6,_0x589367){return _0x4937d6(_0x589367);},'wAuJl':function(_0x4c2c13,_0x4877da,_0x3a710c,_0x3ec74f){return _0x4c2c13(_0x4877da,_0x3a710c,_0x3ec74f);},'yvHyk':_0xa4d0c2(0x1d5)},_0x4685fe=getRangerDir(),_0x3ccaa7=_0xde1492[_0xa4d0c2(0x256)](join,_0x4685fe,ACTIVE_FEATURE_FILE);!_0xde1492['fglce'](existsSync,_0x4685fe)&&await mkdir(_0x4685fe,{'recursive':!![]}),await _0xde1492[_0xa4d0c2(0x22f)](writeFile,_0x3ccaa7,_0x49b4d0,_0xde1492['yvHyk']);}function getProgressDisplay(_0x4b9c26){const _0x10f2b5=_0x5cb4dc,_0x56f7bc={'tWlQE':function(_0x195780,_0x217210){return _0x195780+_0x217210;},'EvHGx':function(_0x2e1bbf,_0x191c8f){return _0x2e1bbf+_0x191c8f;},'qcGNB':function(_0x248840,_0x3f7d1e){return _0x248840*_0x3f7d1e;},'iYJcU':function(_0x53bad9,_0x2117dc){return _0x53bad9/_0x2117dc;},'gYsyb':function(_0x5a3ce5,_0x3858ef){return _0x5a3ce5-_0x3858ef;}},_0x1aa8fe=_0x4b9c26['verifiedItems']||0x0,_0x139c7c=_0x4b9c26['verificationInProgressItems']||0x0,_0x20ba4b=_0x4b9c26[_0x10f2b5(0x22e)]||0x0,_0x848936=_0x4b9c26[_0x10f2b5(0x206)]||0x0,_0x102b11=_0x4b9c26[_0x10f2b5(0x1e2)]||0x0,_0x3a97f1=_0x56f7bc['tWlQE'](_0x56f7bc['EvHGx'](_0x1aa8fe,_0x139c7c)+_0x20ba4b,_0x848936)+_0x102b11;if(_0x3a97f1===0x0)return'-';const _0x1bf4f6=0xa,_0x4fbea4=Math['round'](_0x56f7bc[_0x10f2b5(0x1d2)](_0x56f7bc[_0x10f2b5(0x1d0)](_0x1aa8fe,_0x3a97f1),_0x1bf4f6)),_0x203858='█'['repeat'](_0x4fbea4)+'░'[_0x10f2b5(0x288)](_0x56f7bc['gYsyb'](_0x1bf4f6,_0x4fbea4)),_0x49abbe=[];if(_0x20ba4b>0x0)_0x49abbe['push'](_0x20ba4b+_0x10f2b5(0x1ef));if(_0x848936>0x0)_0x49abbe[_0x10f2b5(0x1f8)](_0x848936+'\x20incomplete');if(_0x139c7c>0x0)_0x49abbe[_0x10f2b5(0x1f8)](_0x139c7c+'\x20in\x20progress');const _0x4ace80=_0x49abbe['length']>0x0?'\x20('+_0x49abbe[_0x10f2b5(0x1c7)](',\x20')+')':'';return _0x203858+'\x20'+_0x1aa8fe+'/'+_0x3a97f1+_0x10f2b5(0x23b)+_0x4ace80;}function getCurrentSessionItems(_0x40e8cf,_0x2965d6){const _0x34aed5=_0x5cb4dc;if(!_0x40e8cf[_0x34aed5(0x251)])return _0x2965d6['filter'](_0x3bb602=>!_0x3bb602[_0x34aed5(0x278)])['sort']((_0x17b731,_0x33034e)=>_0x17b731[_0x34aed5(0x242)]-_0x33034e[_0x34aed5(0x242)]);return _0x2965d6[_0x34aed5(0x262)](_0x14a4dd=>_0x14a4dd[_0x34aed5(0x278)]===_0x40e8cf[_0x34aed5(0x251)]||!_0x14a4dd[_0x34aed5(0x278)])[_0x34aed5(0x1ce)]((_0x376301,_0x4988da)=>_0x376301['position']-_0x4988da[_0x34aed5(0x242)]);}function displayFeature(_0x42fd8f,_0xb694d0){const _0x164ca3=_0x5cb4dc,_0x341164={'DWRoH':function(_0x50f83a,_0x2f758b){return _0x50f83a===_0x2f758b;},'YpRwZ':_0x164ca3(0x231),'rwjwK':function(_0x4d7d5b,_0x20ed89){return _0x4d7d5b===_0x20ed89;},'lXrbi':'verified','Zkfre':_0x164ca3(0x261),'QqNuP':_0x164ca3(0x236),'vJuKn':function(_0x5ce926,_0x424027){return _0x5ce926>_0x424027;},'DboTk':function(_0x5dc76b,_0x428196){return _0x5dc76b!==_0x428196;},'Gwwee':'\x20[has\x20reviewer\x20feedback]','gcUPy':'incomplete','OVygl':function(_0x574d8a,_0x59dbd8){return _0x574d8a===_0x59dbd8;}};console[_0x164ca3(0x25c)]('\x0a'+_0x42fd8f[_0x164ca3(0x24a)]+'\x20('+_0x42fd8f[_0x164ca3(0x1fd)]+')');_0x42fd8f[_0x164ca3(0x273)]&&console['log']('\x20\x20\x20Progress:\x20'+getProgressDisplay(_0x42fd8f['stats']));_0x42fd8f[_0x164ca3(0x218)]&&console['log']('\x20\x20\x20Description:\x20'+_0x42fd8f['description']);_0x42fd8f[_0x164ca3(0x1e9)]&&console[_0x164ca3(0x25c)](_0x164ca3(0x266)+_0x42fd8f[_0x164ca3(0x1e9)]);_0x42fd8f[_0x164ca3(0x27f)]&&console[_0x164ca3(0x25c)](_0x164ca3(0x200)+_0x42fd8f['gitBranch']);console[_0x164ca3(0x25c)](_0x164ca3(0x215)+new Date(_0x42fd8f[_0x164ca3(0x1d9)])[_0x164ca3(0x269)]());_0x42fd8f[_0x164ca3(0x1e8)]&&console[_0x164ca3(0x25c)]('\x20\x20\x20Completed:\x20'+new Date(_0x42fd8f[_0x164ca3(0x1e8)])['toLocaleString']());if(_0xb694d0&&_0xb694d0[_0x164ca3(0x24e)]>0x0){console[_0x164ca3(0x25c)](_0x164ca3(0x26d));for(let _0x3b8fff=0x0;_0x3b8fff<_0xb694d0['length'];_0x3b8fff++){const _0x4c993c=_0xb694d0[_0x3b8fff];let _0x5ec57a;if(_0x341164[_0x164ca3(0x22c)](_0x4c993c['status'],'closed')&&_0x341164[_0x164ca3(0x22c)](_0x4c993c[_0x164ca3(0x1be)],_0x341164['YpRwZ']))_0x5ec57a='✅';else{if(_0x341164[_0x164ca3(0x219)](_0x4c993c['status'],_0x341164[_0x164ca3(0x201)]))_0x5ec57a='🟢';else{if(_0x4c993c[_0x164ca3(0x20c)]==='incomplete')_0x5ec57a='🟠';else{if(_0x4c993c['status']===_0x341164['Zkfre'])_0x5ec57a='🛑';else{if(_0x4c993c[_0x164ca3(0x20c)]===_0x341164[_0x164ca3(0x20b)])_0x5ec57a='⛔';else _0x341164['rwjwK'](_0x4c993c[_0x164ca3(0x20c)],_0x164ca3(0x212))?_0x5ec57a='⏳':_0x5ec57a='⬜';}}}}const _0x46a7e9=_0x4c993c[_0x164ca3(0x238)]>0x1?_0x164ca3(0x1f9)+_0x4c993c[_0x164ca3(0x238)]+')':'',_0x5e0e22=_0x341164['vJuKn'](_0x4c993c[_0x164ca3(0x238)],0x1)&&_0x4c993c['parentItemId']&&_0x4c993c[_0x164ca3(0x20c)]!==_0x341164[_0x164ca3(0x20b)]&&_0x341164[_0x164ca3(0x21b)](_0x4c993c[_0x164ca3(0x20c)],_0x341164['lXrbi'])?_0x341164[_0x164ca3(0x22d)]:'';console[_0x164ca3(0x25c)]('\x20\x20\x20'+(_0x3b8fff+0x1)+'.\x20'+_0x5ec57a+'\x20'+_0x4c993c['description']+_0x46a7e9+_0x5e0e22);_0x4c993c[_0x164ca3(0x20c)]==='blocked'&&_0x4c993c['blockedReason']&&console['log']('\x20\x20\x20\x20\x20\x20Blocked:\x20'+_0x4c993c[_0x164ca3(0x1c2)]);_0x341164[_0x164ca3(0x22c)](_0x4c993c['status'],_0x341164[_0x164ca3(0x1dc)])&&_0x4c993c[_0x164ca3(0x284)]&&console['log'](_0x164ca3(0x279)+_0x4c993c[_0x164ca3(0x284)]);if(_0x4c993c['status']===_0x341164['QqNuP']&&_0x341164['OVygl'](_0x4c993c['terminalReason'],_0x341164[_0x164ca3(0x1df)]))console[_0x164ca3(0x25c)](_0x164ca3(0x21e));else _0x4c993c['status']===_0x341164[_0x164ca3(0x20b)]&&_0x4c993c[_0x164ca3(0x21d)]&&console[_0x164ca3(0x25c)]('\x20\x20\x20\x20\x20\x20Cancelled:\x20'+_0x4c993c['canceledReason']);}}}export async function featureCreate(_0x391364,_0x495022){const _0x3b9840=_0x5cb4dc,_0x4ccc92={'ONGLk':function(_0x3f7e15,_0x4949c4){return _0x3f7e15===_0x4949c4;},'iWvHT':function(_0x5336bb){return _0x5336bb();},'GqdNB':'\x0aCreating\x20feature\x20review...','sotFJ':function(_0x2db7e9,_0x1e9dfc){return _0x2db7e9(_0x1e9dfc);},'nfKcF':function(_0x3e3c67,_0x39f96c){return _0x3e3c67(_0x39f96c);},'iNgEz':function(_0x101d80,_0x155933,_0xff9961){return _0x101d80(_0x155933,_0xff9961);}},{envNames:_0x565980}=await getEnvNames();_0x4ccc92['ONGLk'](_0x565980[_0x3b9840(0x24e)],0x0)&&console['warn']('\x0a'+formatProfileRequiredMessage(_0x43b00a=>bold(_0x43b00a)));const _0x3d724f=_0x495022[_0x3b9840(0x21f)]?_0x495022['scenarios'][_0x3b9840(0x21a)](_0x30249a=>_0x30249a['trim']()):[],_0x4d1f41=getGitRepoUrl(),_0x307ca2=_0x4ccc92[_0x3b9840(0x21c)](getGitBranch);console['log'](_0x4ccc92['GqdNB']);const _0x1a4efd=await _0x4ccc92['sotFJ'](createFeature,{'name':_0x391364,'description':_0x495022[_0x3b9840(0x218)],'checklist':_0x3d724f,'gitRepoUrl':_0x4d1f41,'gitBranch':_0x307ca2});await setActiveFeatureId(_0x1a4efd['id']),await _0x4ccc92['nfKcF'](tryStartCurrentSession,_0x1a4efd['id']);const _0x1e3ca8=process['env']['CLAUDE_SESSION_ID'];_0x1e3ca8&&_0x4ccc92['iNgEz'](registerSession,_0x1e3ca8,_0x1a4efd['id']),console['log'](_0x3b9840(0x1fa)+_0x1a4efd['id']),displayFeature(_0x1a4efd,_0x1a4efd[_0x3b9840(0x23f)]),console['log']('\x0a➡️\x20\x20Set\x20as\x20active\x20feature\x20review');}export async function featureList(_0x548699){const _0x210993=_0x5cb4dc,_0x4168db={'KCxMo':function(_0x5deb04){return _0x5deb04();},'xoLwE':function(_0xa224d9,_0x4ae1fd){return _0xa224d9(_0x4ae1fd);},'sccCI':'\x0aNo\x20feature\x20reviews\x20found.','mvMyV':function(_0x50ac7d,_0x883a9d){return _0x50ac7d+_0x883a9d;},'QjYUr':function(_0x52d510,_0xf91067){return _0x52d510<_0xf91067;},'mYfOA':function(_0x1033d8,_0x20417b){return _0x1033d8!==_0x20417b;}},_0xa8c852={'limit':_0x548699[_0x210993(0x232)]??0xa,'offset':_0x548699[_0x210993(0x1f2)]??0x0,'includeDeleted':_0x548699['includeDeleted']};_0x548699[_0x210993(0x220)]&&(_0xa8c852['gitRepoUrl']=_0x4168db['KCxMo'](getGitRepoUrl),_0xa8c852[_0x210993(0x27f)]=getGitBranch());const _0x1bf235=await _0x4168db['xoLwE'](listFeatures,_0xa8c852);if(_0x1bf235[_0x210993(0x1bf)]['length']===0x0){console[_0x210993(0x25c)](_0x4168db[_0x210993(0x23c)]);return;}const _0x53d7ab=_0x1bf235[_0x210993(0x1f5)]>_0x1bf235['items']['length']?_0x210993(0x1cf)+_0x1bf235['items']['length']+_0x210993(0x26a)+_0x1bf235[_0x210993(0x1f5)]:_0x1bf235[_0x210993(0x1f5)]+_0x210993(0x222);console['log']('\x0a'+_0x53d7ab+':\x0a');for(const _0x1bf578 of _0x1bf235['items']){console[_0x210993(0x25c)](''+_0x1bf578[_0x210993(0x24a)]),console['log']('\x20\x20\x20ID:\x20'+_0x1bf578['id']),_0x1bf578['stats']&&console[_0x210993(0x25c)]('\x20\x20\x20Progress:\x20'+getProgressDisplay(_0x1bf578['stats'])),_0x1bf578['gitBranch']&&console[_0x210993(0x25c)](_0x210993(0x200)+_0x1bf578[_0x210993(0x27f)]),console['log'](_0x210993(0x215)+new Date(_0x1bf578['createdAt'])[_0x210993(0x24c)]()),console[_0x210993(0x25c)]('');}const _0x115ff0=_0xa8c852['limit']??0xa,_0x325e09=_0x4168db['mvMyV'](_0xa8c852['offset']??0x0,_0x1bf235['items']['length']);if(_0x4168db['QjYUr'](_0x325e09,_0x1bf235['totalCount'])){const _0x7a8cb0=_0x4168db[_0x210993(0x24f)](_0x115ff0,0xa)?'\x20--limit\x20'+_0x115ff0:'',_0x323a12=_0x548699[_0x210993(0x220)]?_0x210993(0x270):'',_0x12babe=_0x548699[_0x210993(0x281)]?'\x20--include-deleted':'';console[_0x210993(0x25c)](_0x210993(0x1e7)+_0x325e09+_0x7a8cb0+_0x323a12+_0x12babe);}}export async function featureShow(_0x3e3320){const _0x173d05=_0x5cb4dc,_0x228d77={'QQREa':function(_0x120772){return _0x120772();},'GzXHS':'No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review'},_0x29b53f=_0x3e3320||await _0x228d77[_0x173d05(0x210)](getActiveFeatureId);if(!_0x29b53f)throw new Error(_0x228d77['GzXHS']);const _0x16abee=await getFeature(_0x29b53f);displayFeature(_0x16abee,_0x16abee['checklistItems']);}export async function featureResume(_0x1c6781){const _0x14289d=_0x5cb4dc,_0x51a9bb={'CfdTD':function(_0x2e4569,_0x317fb6){return _0x2e4569(_0x317fb6);},'PVbmF':function(_0x518d60){return _0x518d60();},'sCifb':function(_0x544cbe,_0x51b4fd){return _0x544cbe&&_0x51b4fd;},'zfbYa':'Not\x20in\x20a\x20git\x20repository.','jjntN':function(_0x3a5ce4,_0x399f40){return _0x3a5ce4||_0x399f40;},'ZoHKA':function(_0x55f7cd,_0x1df9cf){return _0x55f7cd||_0x1df9cf;},'iRdJk':_0x14289d(0x20a),'UjIlZ':function(_0x35af0d,_0x268cf0){return _0x35af0d(_0x268cf0);},'iNpgU':function(_0x299f05,_0x1be43d,_0x112192){return _0x299f05(_0x1be43d,_0x112192);}};if(_0x1c6781){const _0x32dc34=await _0x51a9bb[_0x14289d(0x230)](getFeature,_0x1c6781);await setActiveFeatureId(_0x32dc34['id']);const _0x3c7ac7=getGitBranch();_0x3c7ac7&&_0x3c7ac7!==_0x32dc34[_0x14289d(0x27f)]&&(await updateFeature(_0x32dc34['id'],{'gitBranch':_0x3c7ac7}),console['log']('\x20\x20\x20Updated\x20branch\x20to:\x20'+_0x3c7ac7));console['log']('\x0a✅\x20Resumed\x20feature\x20review:\x20'+_0x32dc34[_0x14289d(0x24a)]+'\x20('+_0x32dc34['id']+')'),await _0x51a9bb[_0x14289d(0x230)](tryStartCurrentSession,_0x32dc34['id']);const _0x118774=process[_0x14289d(0x27d)]['CLAUDE_SESSION_ID'];_0x118774&&registerSession(_0x118774,_0x32dc34['id']);displayFeature(_0x32dc34,_0x32dc34['checklistItems']),await printFeedbackNudge(_0x32dc34['id']);return;}const _0x2ce98f=_0x51a9bb[_0x14289d(0x265)](getGitRepoUrl),_0x268d0f=_0x51a9bb['PVbmF'](getGitBranch);if(_0x51a9bb['sCifb'](!_0x2ce98f,!_0x268d0f))throw new Error(_0x51a9bb[_0x14289d(0x285)]);console['log']('\x0aSearching\x20for\x20feature\x20reviews\x20matching:\x20'+_0x51a9bb['jjntN'](_0x2ce98f,'any')+_0x14289d(0x252)+_0x51a9bb['ZoHKA'](_0x268d0f,_0x14289d(0x1cb))+'...');const _0x56cb15=await listFeatures({'gitRepoUrl':_0x2ce98f,'gitBranch':_0x268d0f}),_0x315ff9=_0x56cb15[_0x14289d(0x1bf)][_0x14289d(0x262)](_0x150ca7=>!_0x150ca7[_0x14289d(0x1e8)]);if(_0x315ff9['length']===0x0){console[_0x14289d(0x25c)]('\x0aNo\x20matching\x20active\x20feature\x20reviews\x20found.'),console['log']('Run:\x20ranger\x20create\x20\x22<name>\x22\x20to\x20create\x20a\x20new\x20feature\x20review');return;}let _0x370295;if(_0x315ff9[_0x14289d(0x24e)]===0x1)_0x370295=_0x315ff9[0x0];else{const _0x491d83=process['stdin'][_0x14289d(0x263)]&&process['stdout']['isTTY'];if(!_0x491d83){console['log'](_0x14289d(0x268));for(const _0x17ee02 of _0x315ff9){console[_0x14289d(0x25c)]('\x20\x20'+_0x17ee02[_0x14289d(0x24a)]),console[_0x14289d(0x25c)](_0x14289d(0x1ca)+_0x17ee02['id']),_0x17ee02[_0x14289d(0x273)]&&console['log'](_0x14289d(0x208)+_0x51a9bb[_0x14289d(0x230)](getProgressDisplay,_0x17ee02['stats'])),_0x17ee02[_0x14289d(0x27f)]&&console[_0x14289d(0x25c)]('\x20\x20\x20\x20\x20Branch:\x20'+_0x17ee02['gitBranch']);}throw new Error('Please\x20specify\x20the\x20feature\x20review\x20ID:\x20ranger\x20resume\x20<id>');}const {selected:_0x34f439}=await _0x567b4d[_0x14289d(0x276)]([{'type':'list','name':'selected','message':_0x51a9bb[_0x14289d(0x22b)],'choices':_0x315ff9[_0x14289d(0x21a)](_0x4df4bb=>({'name':_0x4df4bb[_0x14289d(0x24a)]+'\x20('+_0x4df4bb['id']+')','value':_0x4df4bb['id']}))}]);_0x370295=_0x315ff9['find'](_0x156f53=>_0x156f53['id']===_0x34f439);}await setActiveFeatureId(_0x370295['id']);_0x268d0f&&_0x268d0f!==_0x370295[_0x14289d(0x27f)]&&(await updateFeature(_0x370295['id'],{'gitBranch':_0x268d0f}),console[_0x14289d(0x25c)](_0x14289d(0x247)+_0x268d0f));console[_0x14289d(0x25c)](_0x14289d(0x20f)+_0x370295[_0x14289d(0x24a)]+'\x20('+_0x370295['id']+')'),await _0x51a9bb['UjIlZ'](tryStartCurrentSession,_0x370295['id']);const _0x4853e2=await getFeature(_0x370295['id']),_0x1d4067=process[_0x14289d(0x27d)]['CLAUDE_SESSION_ID'];_0x1d4067&&registerSession(_0x1d4067,_0x4853e2['id']),_0x51a9bb['iNpgU'](displayFeature,_0x4853e2,_0x4853e2['checklistItems']),await _0x51a9bb[_0x14289d(0x235)](printFeedbackNudge,_0x4853e2['id']);}async function printFeedbackNudge(_0x5320a8){const _0x199635=_0x5cb4dc,_0x126b1d={'lQOoO':function(_0x4a0dfa,_0x237ff9,_0x2770a9){return _0x4a0dfa(_0x237ff9,_0x2770a9);},'rtvqa':function(_0x1255e9,_0x3c3f26){return _0x1255e9>_0x3c3f26;},'kpyNI':_0x199635(0x239)};try{const {items:_0x4f59f4}=await getActionItems(_0x5320a8);let _0x3b0de7=0x0,_0x40ea1b=0x0;for(const _0x2a39bc of _0x4f59f4){const _0x28e49b=await _0x126b1d['lQOoO'](getItemFeedback,_0x5320a8,_0x2a39bc['id']);_0x28e49b['unaddressedComments'][_0x199635(0x24e)]>0x0&&(_0x3b0de7+=_0x28e49b['unaddressedComments']['length'],_0x40ea1b++);}_0x126b1d['rtvqa'](_0x3b0de7,0x0)&&(console[_0x199635(0x25c)]('\x0a⚠️\x20\x20'+_0x3b0de7+'\x20unaddressed\x20reviewer\x20comment(s)\x20across\x20'+_0x40ea1b+'\x20scenario(s).'),console[_0x199635(0x25c)](_0x126b1d[_0x199635(0x1dd)]));}catch{}}async function tryStartCurrentSession(_0x4ccf22){const _0x4be68c=_0x5cb4dc,_0x2d5c2e={'sSkvX':function(_0x2c1a55,_0x1f752e){return _0x2c1a55(_0x1f752e);},'lgSqg':function(_0x35715c,_0x2e2b58,_0x41029f){return _0x35715c(_0x2e2b58,_0x41029f);}};try{const {sessions:_0x35d184}=await _0x2d5c2e['sSkvX'](listFeatureSessions,_0x4ccf22),_0x13142e=_0x35d184[_0x4be68c(0x24b)](_0x5b94ca=>_0x5b94ca[_0x4be68c(0x20c)]==='ready');_0x13142e&&(await _0x2d5c2e['lgSqg'](startSession,_0x4ccf22,_0x13142e['id']),console[_0x4be68c(0x25c)](_0x4be68c(0x287)+_0x13142e['iteration']));}catch{}}export async function featureReport(_0x4c23ad,_0x97d730){const _0x363721=_0x5cb4dc,_0x425d61={'lGfDF':function(_0x3c45e5,_0x15c0f0,_0x23128f){return _0x3c45e5(_0x15c0f0,_0x23128f);},'HznLX':'reports','oYiQH':function(_0x5c00dc,_0x34d980){return _0x5c00dc(_0x34d980);},'mRJCr':function(_0x2a422f,_0x474b8e,_0x3a11b9){return _0x2a422f(_0x474b8e,_0x3a11b9);},'ehGHS':_0x363721(0x1d5)},_0x28a2e6=_0x4c23ad||await getActiveFeatureId();if(!_0x28a2e6)throw new Error(_0x363721(0x1d6));console[_0x363721(0x25c)](_0x363721(0x1c9));const _0x443b68=await _0x425d61[_0x363721(0x1ff)](getFeatureReportMarkdown,_0x28a2e6,{'style':_0x97d730['style']}),_0x4bcbb6=_0x97d730['output']||join(getRangerDir(),_0x425d61['HznLX'],_0x28a2e6+_0x363721(0x213)),_0x5e1d35=join(_0x4bcbb6,'..');!_0x425d61['oYiQH'](existsSync,_0x5e1d35)&&await _0x425d61['mRJCr'](mkdir,_0x5e1d35,{'recursive':!![]}),await writeFile(_0x4bcbb6,_0x443b68,_0x425d61['ehGHS']),console['log']('\x0a✅\x20Report\x20generated:\x20'+_0x4bcbb6);}export async function featureReportPrDescription(_0x95f76f,_0x1b9b95){const _0x1ffa52=_0x5cb4dc,_0x5a2469={'CSKCN':function(_0xfad347,_0x11cfa5){return _0xfad347(_0x11cfa5);},'IqrUN':_0x1ffa52(0x1d3),'cRMwg':function(_0x54a762,_0x366c50){return _0x54a762>_0x366c50;},'DdYBo':'\x0aAvailable\x20scenarios:'},_0x44768c=_0x95f76f||await getActiveFeatureId();if(!_0x44768c)throw new Error('No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.');const _0x20bd83=await _0x5a2469['CSKCN'](getFeature,_0x44768c),_0x4f9725=_0x20bd83['checklistItems']||[],_0x1ea07a=getCurrentSessionItems(_0x20bd83,_0x4f9725);_0x1ea07a['length']===0x0&&(console['error'](_0x5a2469['IqrUN']),process[_0x1ffa52(0x283)](0x1));const _0x16779a=_0x1b9b95['excludeScenarios']??[],_0x3badbc=_0x16779a[_0x1ffa52(0x262)](_0xc96a2b=>!Number[_0x1ffa52(0x26e)](_0xc96a2b)||_0xc96a2b<0x1||_0xc96a2b>_0x1ea07a['length']);if(_0x5a2469['cRMwg'](_0x3badbc[_0x1ffa52(0x24e)],0x0)){console[_0x1ffa52(0x1e0)](_0x1ffa52(0x228)+_0x3badbc[_0x1ffa52(0x1c7)](',\x20')),console['log'](_0x5a2469['DdYBo']);for(let _0x34bff1=0x0;_0x34bff1<_0x1ea07a['length'];_0x34bff1++){console[_0x1ffa52(0x25c)]('\x20\x20'+(_0x34bff1+0x1)+'.\x20'+_0x1ea07a[_0x34bff1]['description']);}process['exit'](0x1);}const _0x2a7563=new Set(_0x16779a['map'](_0x5b15f4=>_0x5b15f4-0x1)),_0xd06ca5=_0x1ea07a[_0x1ffa52(0x262)]((_0x20ca1b,_0x1737c4)=>!_0x2a7563[_0x1ffa52(0x1fc)](_0x1737c4));_0xd06ca5['length']===0x0&&(console['error']('\x0a❌\x20All\x20scenarios\x20were\x20excluded.'),process[_0x1ffa52(0x283)](0x1));const _0xb10da6=await getFeatureReportMarkdown(_0x44768c,{'itemIds':_0xd06ca5['map'](_0x165b84=>_0x165b84['id'])});process[_0x1ffa52(0x264)]['write'](_0xb10da6[_0x1ffa52(0x1c4)]()+'\x0a');}export async function featureConcludeSession(_0x48c0a9){const _0x2131f5=_0x5cb4dc,_0x3e0454={'KWhze':function(_0x101d6a){return _0x101d6a();},'viwmu':'No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','kzeOu':function(_0x5f186c,_0x5ca38f){return _0x5f186c(_0x5ca38f);},'owsuj':function(_0x207399,_0x31532b){return _0x207399===_0x31532b;},'ZFwCC':'\x0a✅\x20Session\x20is\x20already\x20completed.','iMqRw':function(_0x50811b,_0x31fe08){return _0x50811b!==_0x31fe08;},'mQtyt':_0x2131f5(0x272),'ZBdnU':function(_0x1ad5a4,_0x24f13d,_0x23495f){return _0x1ad5a4(_0x24f13d,_0x23495f);}},_0x3ab447=_0x48c0a9||await _0x3e0454[_0x2131f5(0x245)](getActiveFeatureId);if(!_0x3ab447)throw new Error(_0x3e0454[_0x2131f5(0x243)]);const _0x3df295=await _0x3e0454[_0x2131f5(0x1c1)](getFeature,_0x3ab447);if(!_0x3df295[_0x2131f5(0x251)])throw new Error('No\x20active\x20session\x20for\x20this\x20feature\x20review.');const {sessions:_0x3f597b}=await listFeatureSessions(_0x3ab447),_0x34bf6d=_0x3f597b[_0x2131f5(0x24b)](_0xb9ad60=>_0xb9ad60['id']===_0x3df295[_0x2131f5(0x251)]);if(!_0x34bf6d)throw new Error(_0x2131f5(0x260));if(_0x3e0454['owsuj'](_0x34bf6d['status'],'completed')){console[_0x2131f5(0x25c)](_0x3e0454['ZFwCC']);return;}if(_0x3e0454[_0x2131f5(0x1e3)](_0x34bf6d[_0x2131f5(0x20c)],_0x3e0454[_0x2131f5(0x225)]))throw new Error('Cannot\x20conclude\x20session\x20with\x20status:\x20'+_0x34bf6d['status']);console['log']('\x0aConcluding\x20session...'),await _0x3e0454['ZBdnU'](concludeSession,_0x3ab447,_0x3df295[_0x2131f5(0x251)]),console['log']('\x0a✅\x20Session\x20'+_0x34bf6d['iteration']+'\x20concluded.'),console['log']('\x20\x20\x20The\x20feature\x20review\x20is\x20now\x20ready\x20for\x20human\x20review\x20on\x20the\x20Ranger\x20dashboard.');}export async function featureSessions(_0x2e0727){const _0x1666ba=_0x5cb4dc,_0x34b223={'qHUpb':_0x1666ba(0x1d6),'zrwxB':function(_0x798575,_0x3ad1ef){return _0x798575===_0x3ad1ef;},'qYmiI':_0x1666ba(0x23a),'VNVdg':_0x1666ba(0x272)},_0x572ed3=_0x2e0727||await getActiveFeatureId();if(!_0x572ed3)throw new Error(_0x34b223['qHUpb']);const _0x515441=await getFeature(_0x572ed3);console['log'](_0x1666ba(0x202)+_0x515441['name']+'\x0a');const {sessions:_0x2a0826}=await listFeatureSessions(_0x572ed3);if(_0x2a0826[_0x1666ba(0x24e)]===0x0){console[_0x1666ba(0x25c)](_0x1666ba(0x25f));return;}for(const _0x5b6e14 of _0x2a0826){const _0x259071=_0x34b223['zrwxB'](_0x5b6e14[_0x1666ba(0x20c)],_0x34b223[_0x1666ba(0x221)])?'✅':_0x5b6e14['status']===_0x34b223[_0x1666ba(0x240)]?'🔄':'▶️';console['log'](_0x259071+_0x1666ba(0x223)+_0x5b6e14[_0x1666ba(0x259)]+'\x20('+_0x5b6e14['id']+')'),console['log']('\x20\x20\x20Status:\x20'+_0x5b6e14[_0x1666ba(0x20c)]),console[_0x1666ba(0x25c)](_0x1666ba(0x215)+new Date(_0x5b6e14['createdAt'])[_0x1666ba(0x269)]()),_0x5b6e14['completedAt']&&console[_0x1666ba(0x25c)](_0x1666ba(0x1e1)+new Date(_0x5b6e14['completedAt'])[_0x1666ba(0x269)]()),console['log']('');}}export async function featureAddScenario(_0x1d4f8d,_0x234893){const _0x38c36f=_0x5cb4dc,_0x212155={'IymiH':function(_0x8d10cc){return _0x8d10cc();},'Kdlua':'No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','VTJLR':function(_0x2c598a,_0x52de85,_0x94d3d2){return _0x2c598a(_0x52de85,_0x94d3d2);},'goBLW':function(_0x251440,_0x599aa7){return _0x251440(_0x599aa7);}},_0x567abb=_0x234893||await _0x212155[_0x38c36f(0x246)](getActiveFeatureId);if(!_0x567abb)throw new Error(_0x212155['Kdlua']);const _0x3091ba=await getFeature(_0x567abb);if(_0x3091ba['latestReview']&&!_0x3091ba[_0x38c36f(0x248)][_0x38c36f(0x244)])throw new Error(_0x38c36f(0x1e6)+_0x3091ba[_0x38c36f(0x1fd)]);await _0x212155['VTJLR'](createChecklistItem,_0x567abb,_0x1d4f8d);const _0xf83385=await _0x212155[_0x38c36f(0x275)](getFeature,_0x567abb);console[_0x38c36f(0x25c)](_0x38c36f(0x241)),_0x212155[_0x38c36f(0x204)](displayFeature,_0xf83385,_0xf83385[_0x38c36f(0x23f)]);}export async function featureEditScenario(_0x45dd50,_0x57a850){const _0x258497=_0x5cb4dc,_0x2424c0={'WgGZX':'\x0a❌\x20No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.','rsAiO':function(_0x32120f,_0x5674b0){return _0x32120f(_0x5674b0);},'hOmhA':_0x258497(0x1ea),'yfGYO':function(_0x3f5319,_0x39153f){return _0x3f5319===_0x39153f;},'eNMrT':'\x0a❌\x20No\x20scenario\x20number\x20provided.\x20Use\x20--scenario\x20<number>.','BLGXa':'\x0aAvailable\x20scenarios:','yLiUt':function(_0x25e01f,_0x3ca58f){return _0x25e01f-_0x3ca58f;},'mHPDv':function(_0x54f71f,_0x368a9a){return _0x54f71f>=_0x368a9a;},'lBMvt':function(_0x21a989,_0x172622){return _0x21a989<_0x172622;},'aZNeP':function(_0x5cf938,_0x245fe8){return _0x5cf938+_0x245fe8;}},_0x34a691=_0x57a850['id']||await getActiveFeatureId();!_0x34a691&&(console[_0x258497(0x1e0)](_0x2424c0[_0x258497(0x277)]),console['error'](_0x258497(0x1f4)),process[_0x258497(0x283)](0x1));const _0x542d46=await _0x2424c0[_0x258497(0x25a)](getFeature,_0x34a691);_0x542d46[_0x258497(0x248)]&&!_0x542d46[_0x258497(0x248)][_0x258497(0x244)]&&(console[_0x258497(0x1e0)]('\x0a❌\x20Cannot\x20edit\x20scenario:\x20feature\x20review\x20has\x20an\x20active\x20review.'),console[_0x258497(0x1e0)](_0x2424c0[_0x258497(0x1c8)]),console['error']('\x20\x20'+_0x542d46[_0x258497(0x1fd)]),process['exit'](0x1));const _0x12e8d0=_0x542d46[_0x258497(0x23f)]||[];_0x12e8d0['length']===0x0&&(console[_0x258497(0x1e0)]('\x0a❌\x20No\x20scenarios\x20found\x20to\x20edit.'),process['exit'](0x1));if(_0x2424c0[_0x258497(0x27e)](_0x57a850['scenario'],undefined)){console['error'](_0x2424c0['eNMrT']),console['log'](_0x2424c0['BLGXa']);for(let _0xf31219=0x0;_0xf31219<_0x12e8d0['length'];_0xf31219++){console[_0x258497(0x25c)]('\x20\x20'+(_0xf31219+0x1)+'.\x20'+_0x12e8d0[_0xf31219][_0x258497(0x218)]);}process['exit'](0x1);}const _0x114bd3=_0x2424c0['yLiUt'](_0x57a850['scenario'],0x1);if(_0x114bd3<0x0||_0x2424c0[_0x258497(0x25d)](_0x114bd3,_0x12e8d0[_0x258497(0x24e)])){console[_0x258497(0x1e0)]('\x0a❌\x20Invalid\x20scenario\x20index:\x20'+_0x57a850['scenario']+'.\x20Feature\x20review\x20has\x20'+_0x12e8d0['length']+'\x20scenarios.'),console['log'](_0x2424c0[_0x258497(0x237)]);for(let _0x4264dc=0x0;_0x2424c0['lBMvt'](_0x4264dc,_0x12e8d0['length']);_0x4264dc++){console[_0x258497(0x25c)]('\x20\x20'+_0x2424c0['aZNeP'](_0x4264dc,0x1)+'.\x20'+_0x12e8d0[_0x4264dc][_0x258497(0x218)]);}process['exit'](0x1);}const _0x1dfb81=_0x12e8d0[_0x114bd3];await updateChecklistItem(_0x34a691,_0x1dfb81['id'],{'description':_0x45dd50});const _0x960218=await getFeature(_0x34a691);console[_0x258497(0x25c)]('\x0a✅\x20Scenario\x20updated'),displayFeature(_0x960218,_0x960218[_0x258497(0x23f)]);}async function downloadFeedbackImage(_0x44ffb3,_0x152d84){const _0x4707d8=_0x5cb4dc,_0x48fd54={'jdJPA':function(_0x5ac17e){return _0x5ac17e();},'emINF':function(_0x3e27d1,_0x28a5e1,_0x1e45e2){return _0x3e27d1(_0x28a5e1,_0x1e45e2);},'paIBG':function(_0x36d3da,_0xf3d95d,_0xe0f4b3){return _0x36d3da(_0xf3d95d,_0xe0f4b3);}};try{const _0x36deb7=join(_0x48fd54[_0x4707d8(0x1ec)](getRangerDir),'feedback-images');await _0x48fd54['emINF'](mkdir,_0x36deb7,{'recursive':!![]});const _0x235dc1=_0x48fd54[_0x4707d8(0x216)](join,_0x36deb7,'comment_'+_0x152d84+'.png'),_0x4278e5=await fetch(_0x44ffb3);if(!_0x4278e5['ok'])return null;const _0xbc1a73=Buffer[_0x4707d8(0x27b)](await _0x4278e5['arrayBuffer']());return await writeFile(_0x235dc1,_0xbc1a73),_0x235dc1;}catch{return null;}}export async function featureGetReview(_0x4477e5){const _0x34abd4=_0x5cb4dc,_0xdbf136={'ErWcI':function(_0x5d8712){return _0x5d8712();},'QMZdK':function(_0x7969ef,_0x2c361c){return _0x7969ef(_0x2c361c);},'UnNWI':function(_0x5508a2,_0xf882de){return _0x5508a2===_0xf882de;},'PpLTC':_0x34abd4(0x280),'iFbiT':function(_0x4a8c40,_0x12ab52){return _0x4a8c40<_0x12ab52;},'dSWbu':function(_0x4da2ba,_0x5f433e){return _0x4da2ba>_0x5f433e;},'Tawya':function(_0x1937b1,_0x285a21){return _0x1937b1>_0x285a21;},'TBaMx':function(_0x50cdf0,_0x465a72){return _0x50cdf0+_0x465a72;},'ZfQUv':_0x34abd4(0x1db),'ePFgO':'short','BkRAx':'Unknown','thlKw':_0x34abd4(0x1da),'uunWZ':function(_0x2c8535,_0x4fe37d){return _0x2c8535>=_0x4fe37d;}},_0x3841c7=_0x4477e5||await _0xdbf136['ErWcI'](getActiveFeatureId);if(!_0x3841c7)throw new Error(_0x34abd4(0x25e));const _0x5f3938=await _0xdbf136[_0x34abd4(0x1c0)](getFeature,_0x3841c7),{items:_0x1f0394}=await getActionItems(_0x3841c7);console['log'](_0x34abd4(0x233)+_0x5f3938['name']+'\x20('+_0x5f3938['id']+')\x0a');if(_0xdbf136[_0x34abd4(0x23e)](_0x1f0394['length'],0x0)){console[_0x34abd4(0x25c)](_0xdbf136[_0x34abd4(0x1f7)]);return;}for(let _0x4573d0=0x0;_0xdbf136['iFbiT'](_0x4573d0,_0x1f0394[_0x34abd4(0x24e)]);_0x4573d0++){const _0x154c60=_0x1f0394[_0x4573d0],_0x22330e=_0xdbf136[_0x34abd4(0x249)](_0x154c60[_0x34abd4(0x238)],0x1)?_0x34abd4(0x1f9)+_0x154c60['version']+')':'',_0x4e40bb=await getItemFeedback(_0x3841c7,_0x154c60['id']);if(_0xdbf136['Tawya'](_0x4e40bb['unaddressedComments']['length'],0x0)){console[_0x34abd4(0x25c)](_0x34abd4(0x1f1)+_0xdbf136[_0x34abd4(0x224)](_0x4573d0,0x1)+':\x20\x22'+_0x154c60['description']+'\x22'+_0x22330e+_0x34abd4(0x23d)+_0x4e40bb[_0x34abd4(0x234)][_0x34abd4(0x24e)]+'\x20unaddressed\x20comment(s)');for(const _0x3a472e of _0x4e40bb['unaddressedComments']){const _0x4f99d3=new Date(_0x3a472e[_0x34abd4(0x1d9)])['toLocaleDateString'](_0xdbf136[_0x34abd4(0x1cd)],{'month':_0xdbf136['ePFgO'],'day':_0x34abd4(0x1de)}),_0x3a28a7=_0x3a472e[_0x34abd4(0x1d7)]||_0x3a472e['authorEmail']||_0xdbf136[_0x34abd4(0x255)];console['log']('\x20\x20💬\x20'+_0x3a28a7+'\x20('+_0x4f99d3+'):\x20\x22'+_0x3a472e['content']+'\x22');if(_0x3a472e['assetUrl']){const _0x506fd0=await downloadFeedbackImage(_0x3a472e[_0x34abd4(0x1f6)],_0x3a472e['id']);_0x506fd0&&console[_0x34abd4(0x25c)]('\x20\x20\x20\x20\x20📷\x20Screenshot:\x20'+_0x506fd0);}if(_0x3a472e['domRef']){const _0x142a45=_0x3a472e[_0x34abd4(0x253)]['selector'][_0x34abd4(0x211)](_0xdbf136[_0x34abd4(0x22a)])[_0x34abd4(0x27c)]()?.[_0x34abd4(0x211)](':')[0x0]||'element',_0x6f8745=_0x3a472e['domRef'][_0x34abd4(0x258)]?'\x20\x22'+_0x3a472e[_0x34abd4(0x253)]['textContent']['slice'](0x0,0x3c)+'\x22':'';console[_0x34abd4(0x25c)](_0x34abd4(0x209)+_0x142a45+'>'+_0x6f8745),console[_0x34abd4(0x25c)]('\x20\x20\x20\x20\x20📋\x20Selector:\x20'+_0x3a472e['domRef']['selector']);}else{if(_0x3a472e[_0x34abd4(0x205)]){const _0x29637a=_0x3a472e[_0x34abd4(0x205)]['coordinates'];_0xdbf136[_0x34abd4(0x23e)](_0x3a472e[_0x34abd4(0x205)][_0x34abd4(0x274)],_0x34abd4(0x1eb))&&_0xdbf136['uunWZ'](_0x29637a[_0x34abd4(0x24e)],0x2)?console[_0x34abd4(0x25c)]('\x20\x20\x20\x20\x20📍\x20Annotation:\x20point\x20at\x20('+_0x29637a[0x0][_0x34abd4(0x26c)](0x2)+',\x20'+_0x29637a[0x1][_0x34abd4(0x26c)](0x2)+')'):console[_0x34abd4(0x25c)]('\x20\x20\x20\x20\x20📍\x20Annotation:\x20'+_0x3a472e[_0x34abd4(0x205)]['type']+_0x34abd4(0x1ed)+_0x29637a[_0x34abd4(0x21a)](_0x57479c=>_0x57479c[_0x34abd4(0x26c)](0x2))['join'](',\x20')+']');}}}if(_0x4e40bb['canonicalFlow']){console[_0x34abd4(0x25c)](_0x34abd4(0x282));for(const _0x3e960a of _0x4e40bb[_0x34abd4(0x1d1)][_0x34abd4(0x211)]('\x0a')){console['log'](_0x34abd4(0x20d)+_0x3e960a);}}}else console[_0x34abd4(0x25c)](_0x34abd4(0x1f1)+(_0x4573d0+0x1)+':\x20\x22'+_0x154c60[_0x34abd4(0x218)]+'\x22'+_0x22330e+'\x20—\x20no\x20comments'),console[_0x34abd4(0x25c)]('\x20\x20✅\x20No\x20feedback\x20to\x20address');console[_0x34abd4(0x25c)]('');}}export async function featureDelete(_0x2f1e3e){const _0x154889=_0x5cb4dc,_0x2b9583={'LseBU':function(_0x3f3735){return _0x3f3735();},'FhdeD':function(_0x5b7775,_0x437347){return _0x5b7775(_0x437347);},'gfzKS':function(_0x41a877,_0x335257){return _0x41a877+_0x335257;},'cRkOr':_0x154889(0x25b)},_0x34a636=_0x2f1e3e||await _0x2b9583['LseBU'](getActiveFeatureId);if(!_0x34a636)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 _0x270d19=await getFeature(_0x34a636);await _0x2b9583[_0x154889(0x250)](softDeleteFeature,_0x34a636),console[_0x154889(0x25c)](_0x154889(0x271)+_0x270d19['name']+'\x20('+_0x34a636+')'),console[_0x154889(0x25c)](_0x2b9583['gfzKS'](_0x2b9583[_0x154889(0x226)],_0x34a636));}export async function featureRestore(_0x508e25){const _0x1cf679=_0x5cb4dc,_0x46800f={'hftcx':function(_0x5da1ee,_0x1b78cf){return _0x5da1ee(_0x1b78cf);},'NMxNw':function(_0x3b3039,_0x191154,_0x2b5629){return _0x3b3039(_0x191154,_0x2b5629);}};await _0x46800f['hftcx'](restoreFeature,_0x508e25);const _0x2bb78b=await getFeature(_0x508e25);console[_0x1cf679(0x25c)](_0x1cf679(0x229)+_0x2bb78b['name']+'\x20('+_0x508e25+')'),_0x46800f['NMxNw'](displayFeature,_0x2bb78b,_0x2bb78b[_0x1cf679(0x23f)]);}
1
+ const _0x2f0c7d=_0x12a8;(function(_0x47b112,_0x299fcc){const _0x599db9=_0x12a8,_0x47ada7=_0x47b112();while(!![]){try{const _0x1757f6=-parseInt(_0x599db9(0xfa))/0x1*(-parseInt(_0x599db9(0x137))/0x2)+-parseInt(_0x599db9(0x190))/0x3+-parseInt(_0x599db9(0x131))/0x4*(parseInt(_0x599db9(0x125))/0x5)+parseInt(_0x599db9(0x12e))/0x6*(parseInt(_0x599db9(0xea))/0x7)+parseInt(_0x599db9(0x18e))/0x8+parseInt(_0x599db9(0x10c))/0x9*(parseInt(_0x599db9(0xd5))/0xa)+-parseInt(_0x599db9(0x177))/0xb;if(_0x1757f6===_0x299fcc)break;else _0x47ada7['push'](_0x47ada7['shift']());}catch(_0x4edf74){_0x47ada7['push'](_0x47ada7['shift']());}}}(_0x5917,0x9c6a1));import{readFile,writeFile,mkdir}from'fs/promises';import{join}from'path';import{existsSync}from'fs';import{execSync}from'child_process';import _0x24aae8 from'inquirer';import{createFeature,listFeatures,getFeature,updateFeature,getFeatureReportMarkdown,listFeatureSessions,startSession,concludeSession,createChecklistItem,getActionItems,getItemFeedback,softDeleteFeature,restoreFeature,updateChecklistItem}from'./utils/featureApi.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=_0x23ee6c=>'\x1b[1m'+_0x23ee6c+_0x2f0c7d(0x124);function getGitRepoUrl(){const _0x126701=_0x2f0c7d,_0x10e696={'ybPLl':function(_0x19ce02,_0x4a16a6,_0x16bf7b){return _0x19ce02(_0x4a16a6,_0x16bf7b);},'qCRZm':'git\x20remote\x20get-url\x20origin','wqnsF':'pipe'};try{const _0x46c02d=_0x10e696['ybPLl'](execSync,_0x10e696[_0x126701(0x12b)],{'encoding':'utf-8','stdio':[_0x10e696['wqnsF'],'pipe','pipe']})['trim']();return _0x46c02d[_0x126701(0x140)](/\.git$/,'')['replace'](/^git@github\.com:/,_0x126701(0x13f))['replace'](/^https?:\/\//,'');}catch{return undefined;}}function getGitBranch(){const _0x3b7e62=_0x2f0c7d,_0x1cd196={'tKpUp':_0x3b7e62(0x117),'yQGFx':_0x3b7e62(0x123)};try{return execSync('git\x20rev-parse\x20--abbrev-ref\x20HEAD',{'encoding':_0x1cd196[_0x3b7e62(0x168)],'stdio':[_0x1cd196['yQGFx'],_0x1cd196[_0x3b7e62(0x151)],'pipe']})[_0x3b7e62(0xff)]();}catch{return undefined;}}export async function getActiveFeatureId(){const _0x197c9b=_0x2f0c7d,_0x36c4a2={'zEscz':function(_0xe523b0,_0x311650,_0xa5643){return _0xe523b0(_0x311650,_0xa5643);},'iQNdQ':function(_0x47fd60,_0x4c0a79){return _0x47fd60(_0x4c0a79);}},_0x6b9efa=_0x36c4a2[_0x197c9b(0x11a)](join,getRangerDir(),ACTIVE_FEATURE_FILE);if(!_0x36c4a2['iQNdQ'](existsSync,_0x6b9efa))return null;try{const _0x4294fd=await _0x36c4a2['zEscz'](readFile,_0x6b9efa,_0x197c9b(0x117));return _0x4294fd[_0x197c9b(0xff)]()||null;}catch{return null;}}function _0x12a8(_0x46fa5c,_0x2b7118){_0x46fa5c=_0x46fa5c-0xc5;const _0x5917c4=_0x5917();let _0x12a858=_0x5917c4[_0x46fa5c];return _0x12a858;}async function setActiveFeatureId(_0x212d36){const _0x4c9d0b=_0x2f0c7d,_0x5e87e2={'LpPif':function(_0x5a1177){return _0x5a1177();},'WCKen':function(_0xaf23ce,_0x155800,_0x5ed765){return _0xaf23ce(_0x155800,_0x5ed765);},'qYRCe':function(_0x50e22c,_0x43cd51){return _0x50e22c(_0x43cd51);},'RUjCs':_0x4c9d0b(0x117)},_0x4e0235=_0x5e87e2['LpPif'](getRangerDir),_0x4dc247=_0x5e87e2['WCKen'](join,_0x4e0235,ACTIVE_FEATURE_FILE);!_0x5e87e2[_0x4c9d0b(0xda)](existsSync,_0x4e0235)&&await mkdir(_0x4e0235,{'recursive':!![]}),await writeFile(_0x4dc247,_0x212d36,_0x5e87e2['RUjCs']);}function getProgressDisplay(_0x24d513){const _0x4a6794=_0x2f0c7d,_0x375c8b={'LcmjG':function(_0x46df97,_0x157b0e){return _0x46df97+_0x157b0e;},'zfzhL':function(_0xac84aa,_0x57e087){return _0xac84aa+_0x57e087;},'nsgtC':function(_0x155305,_0x23b3b5){return _0x155305+_0x23b3b5;},'xTYNi':function(_0x3ee5fa,_0x26530f){return _0x3ee5fa-_0x26530f;},'vRtfZ':function(_0x51323c,_0x45fc2d){return _0x51323c>_0x45fc2d;},'dfGEo':function(_0x2b87a4,_0x1f62f3){return _0x2b87a4>_0x1f62f3;}},_0x544022=_0x24d513['verifiedItems']||0x0,_0x18b572=_0x24d513[_0x4a6794(0x10b)]||0x0,_0x55c4db=_0x24d513['blockedItems']||0x0,_0x5a7478=_0x24d513['incompleteItems']||0x0,_0x35bcdd=_0x24d513['pendingItems']||0x0,_0x56e0e7=_0x375c8b['LcmjG'](_0x375c8b[_0x4a6794(0x10f)](_0x375c8b[_0x4a6794(0x181)](_0x375c8b[_0x4a6794(0xd8)](_0x544022,_0x18b572),_0x55c4db),_0x5a7478),_0x35bcdd);if(_0x56e0e7===0x0)return'-';const _0x4d62bb=0xa,_0x8d9180=Math[_0x4a6794(0x18d)](_0x544022/_0x56e0e7*_0x4d62bb),_0x2262b2='█'['repeat'](_0x8d9180)+'░'[_0x4a6794(0x132)](_0x375c8b[_0x4a6794(0x18c)](_0x4d62bb,_0x8d9180)),_0x5f4ecc=[];if(_0x375c8b[_0x4a6794(0x153)](_0x55c4db,0x0))_0x5f4ecc['push'](_0x55c4db+_0x4a6794(0xe4));if(_0x375c8b['dfGEo'](_0x5a7478,0x0))_0x5f4ecc[_0x4a6794(0x11d)](_0x5a7478+'\x20incomplete');if(_0x18b572>0x0)_0x5f4ecc[_0x4a6794(0x11d)](_0x18b572+_0x4a6794(0xf8));const _0x7fd044=_0x375c8b[_0x4a6794(0xfb)](_0x5f4ecc[_0x4a6794(0xcd)],0x0)?'\x20('+_0x5f4ecc['join'](',\x20')+')':'';return _0x2262b2+'\x20'+_0x544022+'/'+_0x56e0e7+'\x20verified'+_0x7fd044;}function getCurrentSessionItems(_0x2b41ee,_0x423d9a){const _0x3094ba=_0x2f0c7d;if(!_0x2b41ee['currentSessionId'])return _0x423d9a[_0x3094ba(0x16f)](_0x25fb1b=>!_0x25fb1b['sessionId'])[_0x3094ba(0xfe)]((_0x1a268c,_0x211443)=>_0x1a268c[_0x3094ba(0x10d)]-_0x211443[_0x3094ba(0x10d)]);return _0x423d9a['filter'](_0x766bef=>_0x766bef['sessionId']===_0x2b41ee[_0x3094ba(0xe3)]||!_0x766bef['sessionId'])[_0x3094ba(0xfe)]((_0x9512f7,_0x441270)=>_0x9512f7['position']-_0x441270[_0x3094ba(0x10d)]);}function displayFeature(_0x8f3642,_0xef9356){const _0x1d4ee3=_0x2f0c7d,_0x11eb0b={'hVwiM':function(_0x369514,_0x24608f){return _0x369514(_0x24608f);},'pbOTp':function(_0x2d8f9a,_0xc81a4f){return _0x2d8f9a>_0xc81a4f;},'CzNiR':function(_0x527acb,_0x37f148){return _0x527acb<_0x37f148;},'YKDvU':function(_0x4dc30f,_0x546814){return _0x4dc30f===_0x546814;},'cWIDJ':'approved','muUKs':function(_0x2038d9,_0x433ae7){return _0x2038d9===_0x433ae7;},'PwPjy':'verified','vMIoa':function(_0x49a276,_0x3f965e){return _0x49a276===_0x3f965e;},'mMDWH':_0x1d4ee3(0x166),'hObLo':function(_0x18550d,_0x3528ae){return _0x18550d>_0x3528ae;},'Fazah':function(_0x2227b0,_0x1f341d){return _0x2227b0!==_0x1f341d;},'FAsoF':function(_0x535f6f,_0x6dcd1a){return _0x535f6f+_0x6dcd1a;},'ARoDf':function(_0x50e7d3,_0x493304){return _0x50e7d3===_0x493304;},'YSwQF':'closed'};console['log']('\x0a'+_0x8f3642[_0x1d4ee3(0x17f)]+'\x20('+_0x8f3642['dashboardUrl']+')');_0x8f3642['stats']&&console['log'](_0x1d4ee3(0xcc)+_0x11eb0b[_0x1d4ee3(0x144)](getProgressDisplay,_0x8f3642[_0x1d4ee3(0x118)]));_0x8f3642[_0x1d4ee3(0x18a)]&&console['log']('\x20\x20\x20Description:\x20'+_0x8f3642['description']);_0x8f3642[_0x1d4ee3(0xc7)]&&console['log'](_0x1d4ee3(0x14c)+_0x8f3642['gitRepoUrl']);_0x8f3642[_0x1d4ee3(0x139)]&&console[_0x1d4ee3(0x152)](_0x1d4ee3(0xc8)+_0x8f3642[_0x1d4ee3(0x139)]);console['log']('\x20\x20\x20Created:\x20'+new Date(_0x8f3642['createdAt'])[_0x1d4ee3(0x113)]());_0x8f3642['completedAt']&&console[_0x1d4ee3(0x152)]('\x20\x20\x20Completed:\x20'+new Date(_0x8f3642['completedAt'])['toLocaleString']());if(_0xef9356&&_0x11eb0b['pbOTp'](_0xef9356[_0x1d4ee3(0xcd)],0x0)){console[_0x1d4ee3(0x152)]('\x0a\x20\x20\x20Scenarios:');for(let _0x3d145e=0x0;_0x11eb0b[_0x1d4ee3(0xcb)](_0x3d145e,_0xef9356['length']);_0x3d145e++){const _0x7f4d7c=_0xef9356[_0x3d145e];let _0x418e07;if(_0x11eb0b[_0x1d4ee3(0x127)](_0x7f4d7c[_0x1d4ee3(0x14d)],'closed')&&_0x11eb0b[_0x1d4ee3(0x127)](_0x7f4d7c['terminalReason'],_0x11eb0b['cWIDJ']))_0x418e07='✅';else{if(_0x11eb0b['muUKs'](_0x7f4d7c['status'],_0x11eb0b['PwPjy']))_0x418e07='🟢';else{if(_0x7f4d7c['status']==='incomplete')_0x418e07='🟠';else{if(_0x11eb0b[_0x1d4ee3(0x120)](_0x7f4d7c[_0x1d4ee3(0x14d)],_0x11eb0b['mMDWH']))_0x418e07='🛑';else{if(_0x7f4d7c[_0x1d4ee3(0x14d)]==='closed')_0x418e07='⛔';else _0x7f4d7c['status']==='verification_in_progress'?_0x418e07='⏳':_0x418e07='⬜';}}}}const _0x1b7070=_0x11eb0b[_0x1d4ee3(0xd1)](_0x7f4d7c['version'],0x1)?_0x1d4ee3(0x170)+_0x7f4d7c['version']+')':'',_0x3f8063=_0x11eb0b[_0x1d4ee3(0x112)](_0x7f4d7c['version'],0x1)&&_0x7f4d7c['parentItemId']&&_0x11eb0b['Fazah'](_0x7f4d7c[_0x1d4ee3(0x14d)],_0x1d4ee3(0xdb))&&_0x7f4d7c['status']!=='verified'?_0x1d4ee3(0x14e):'';console[_0x1d4ee3(0x152)](_0x1d4ee3(0x157)+_0x11eb0b['FAsoF'](_0x3d145e,0x1)+'.\x20'+_0x418e07+'\x20'+_0x7f4d7c[_0x1d4ee3(0x18a)]+_0x1b7070+_0x3f8063);_0x11eb0b[_0x1d4ee3(0xce)](_0x7f4d7c[_0x1d4ee3(0x14d)],_0x1d4ee3(0x166))&&_0x7f4d7c[_0x1d4ee3(0x138)]&&console['log'](_0x1d4ee3(0x178)+_0x7f4d7c[_0x1d4ee3(0x138)]);_0x7f4d7c['status']===_0x1d4ee3(0x193)&&_0x7f4d7c['incompleteReason']&&console['log']('\x20\x20\x20\x20\x20\x20Incomplete:\x20'+_0x7f4d7c[_0x1d4ee3(0xe6)]);if(_0x11eb0b['ARoDf'](_0x7f4d7c[_0x1d4ee3(0x14d)],_0x11eb0b['YSwQF'])&&_0x7f4d7c[_0x1d4ee3(0x12f)]===_0x11eb0b['cWIDJ'])console['log'](_0x1d4ee3(0x14b));else _0x7f4d7c[_0x1d4ee3(0x14d)]===_0x11eb0b['YSwQF']&&_0x7f4d7c['canceledReason']&&console['log'](_0x1d4ee3(0x158)+_0x7f4d7c['canceledReason']);}}}export async function featureCreate(_0xd2aad9,_0x3cd9ff){const _0x4ebf6a=_0x2f0c7d,_0x29bf27={'SGScO':function(_0x5d62c7){return _0x5d62c7();},'NCjoF':function(_0x286ca1,_0x520f06){return _0x286ca1(_0x520f06);},'OfVxC':function(_0x442b73,_0x316d7f,_0x36f127){return _0x442b73(_0x316d7f,_0x36f127);}},{envNames:_0x5e5fca}=await _0x29bf27[_0x4ebf6a(0x159)](getEnvNames);_0x5e5fca['length']===0x0&&console['warn']('\x0a'+_0x29bf27['NCjoF'](formatProfileRequiredMessage,_0x3a3c92=>bold(_0x3a3c92)));const _0x16a9ed=_0x3cd9ff['scenarios']?_0x3cd9ff['scenarios'][_0x4ebf6a(0x187)](_0x262ff1=>_0x262ff1['trim']()):[],_0x2f46e0=_0x29bf27[_0x4ebf6a(0x159)](getGitRepoUrl),_0xe697a9=getGitBranch();console['log'](_0x4ebf6a(0xf1));const _0x8db63e=await createFeature({'name':_0xd2aad9,'description':_0x3cd9ff['description'],'checklist':_0x16a9ed,'gitRepoUrl':_0x2f46e0,'gitBranch':_0xe697a9});await _0x29bf27['NCjoF'](setActiveFeatureId,_0x8db63e['id']),await tryStartCurrentSession(_0x8db63e['id']);const _0x2e14ae=process['env']['CLAUDE_SESSION_ID'];_0x2e14ae&&registerSession(_0x2e14ae,_0x8db63e['id']),console[_0x4ebf6a(0x152)]('\x0a✅\x20Feature\x20review\x20created:\x20'+_0x8db63e['id']),_0x29bf27['OfVxC'](displayFeature,_0x8db63e,_0x8db63e['checklistItems']),console[_0x4ebf6a(0x152)](_0x4ebf6a(0x101));}export async function featureList(_0x51648f){const _0x1b25ae=_0x2f0c7d,_0x3c35a4={'JXrCw':function(_0x3ddd25,_0xcac36f){return _0x3ddd25(_0xcac36f);},'AKqcI':'\x0aNo\x20feature\x20reviews\x20found.','ETajM':function(_0x2034a3,_0x1980f5){return _0x2034a3(_0x1980f5);},'PRJTe':function(_0x3a3438,_0x26048d){return _0x3a3438+_0x26048d;},'skIXi':function(_0x21ee7b,_0x2f839c){return _0x21ee7b!==_0x2f839c;},'LoXpt':'\x20--include-deleted'},_0x3620d7={'limit':_0x51648f[_0x1b25ae(0x10a)]??0xa,'offset':_0x51648f['offset']??0x0,'includeDeleted':_0x51648f['includeDeleted']};_0x51648f[_0x1b25ae(0x194)]&&(_0x3620d7['gitRepoUrl']=getGitRepoUrl(),_0x3620d7['gitBranch']=getGitBranch());const _0x14b213=await _0x3c35a4[_0x1b25ae(0x162)](listFeatures,_0x3620d7);if(_0x14b213['items']['length']===0x0){console[_0x1b25ae(0x152)](_0x3c35a4['AKqcI']);return;}const _0x403d1f=_0x14b213['totalCount']>_0x14b213['items']['length']?'Showing\x20'+_0x14b213['items'][_0x1b25ae(0xcd)]+_0x1b25ae(0x156)+_0x14b213['totalCount']:_0x14b213['totalCount']+_0x1b25ae(0x135);console[_0x1b25ae(0x152)]('\x0a'+_0x403d1f+':\x0a');for(const _0x4d89ef of _0x14b213[_0x1b25ae(0x14a)]){const _0x87ebe7='3|1|2|4|0|5'[_0x1b25ae(0xd7)]('|');let _0x2f6e1a=0x0;while(!![]){switch(_0x87ebe7[_0x2f6e1a++]){case'0':console['log'](_0x1b25ae(0x111)+new Date(_0x4d89ef[_0x1b25ae(0xe9)])[_0x1b25ae(0xf5)]());continue;case'1':console['log'](_0x1b25ae(0xec)+_0x4d89ef['id']);continue;case'2':_0x4d89ef[_0x1b25ae(0x118)]&&console['log'](_0x1b25ae(0xcc)+_0x3c35a4['ETajM'](getProgressDisplay,_0x4d89ef[_0x1b25ae(0x118)]));continue;case'3':console['log'](''+_0x4d89ef['name']);continue;case'4':_0x4d89ef[_0x1b25ae(0x139)]&&console[_0x1b25ae(0x152)](_0x1b25ae(0xc8)+_0x4d89ef[_0x1b25ae(0x139)]);continue;case'5':console[_0x1b25ae(0x152)]('');continue;}break;}}const _0x363ef1=_0x3620d7[_0x1b25ae(0x10a)]??0xa,_0x4a123c=_0x3c35a4['PRJTe'](_0x3620d7[_0x1b25ae(0x102)]??0x0,_0x14b213[_0x1b25ae(0x14a)][_0x1b25ae(0xcd)]);if(_0x4a123c<_0x14b213[_0x1b25ae(0x11b)]){const _0x47cd8b=_0x3c35a4[_0x1b25ae(0x12a)](_0x363ef1,0xa)?'\x20--limit\x20'+_0x363ef1:'',_0x721a0f=_0x51648f[_0x1b25ae(0x194)]?_0x1b25ae(0x179):'',_0xc0a582=_0x51648f[_0x1b25ae(0xeb)]?_0x3c35a4['LoXpt']:'';console['log'](_0x1b25ae(0x122)+_0x4a123c+_0x47cd8b+_0x721a0f+_0xc0a582);}}export async function featureShow(_0x251b4e){const _0x4af10e=_0x2f0c7d,_0xde8bab={'PjmHk':_0x4af10e(0x173),'HLWoP':function(_0x22433c,_0x4048a9){return _0x22433c(_0x4048a9);}},_0x3515a6=_0x251b4e||await getActiveFeatureId();if(!_0x3515a6)throw new Error(_0xde8bab[_0x4af10e(0x141)]);const _0x43e1b6=await _0xde8bab['HLWoP'](getFeature,_0x3515a6);displayFeature(_0x43e1b6,_0x43e1b6['checklistItems']);}export async function featureResume(_0x2ee4e8){const _0x223520=_0x2f0c7d,_0x36bdf5={'hpfyS':function(_0x541fe9,_0x4b7950){return _0x541fe9(_0x4b7950);},'EWmcP':function(_0x577c54){return _0x577c54();},'LpJny':function(_0xb45bf8,_0x54a21a,_0x259653){return _0xb45bf8(_0x54a21a,_0x259653);},'WeXdU':function(_0x3ec664,_0x160578){return _0x3ec664(_0x160578);},'fJYBX':function(_0x4253a9,_0x293883){return _0x4253a9&&_0x293883;},'xbxOB':function(_0x5ed56c,_0x1bd30e){return _0x5ed56c||_0x1bd30e;},'zGRhD':'any','eyUGE':function(_0x1dd0cf,_0x24f1ee){return _0x1dd0cf===_0x24f1ee;},'IhqeM':'Run:\x20ranger\x20create\x20\x22<name>\x22\x20to\x20create\x20a\x20new\x20feature\x20review','iShyO':_0x223520(0xcf),'NEvby':'selected','yTbUF':'Multiple\x20feature\x20reviews\x20found.\x20Select\x20one:','kXhLX':function(_0x2c8e9c,_0xe6d6f9,_0x2b121b){return _0x2c8e9c(_0xe6d6f9,_0x2b121b);}};if(_0x2ee4e8){const _0xb841df=await getFeature(_0x2ee4e8);await _0x36bdf5['hpfyS'](setActiveFeatureId,_0xb841df['id']);const _0x381f70=_0x36bdf5['EWmcP'](getGitBranch);_0x381f70&&_0x381f70!==_0xb841df[_0x223520(0x139)]&&(await _0x36bdf5[_0x223520(0x191)](updateFeature,_0xb841df['id'],{'gitBranch':_0x381f70}),console[_0x223520(0x152)]('\x20\x20\x20Updated\x20branch\x20to:\x20'+_0x381f70));console[_0x223520(0x152)](_0x223520(0xf4)+_0xb841df[_0x223520(0x17f)]+'\x20('+_0xb841df['id']+')'),await tryStartCurrentSession(_0xb841df['id']);const _0x59d62c=process['env']['CLAUDE_SESSION_ID'];_0x59d62c&&registerSession(_0x59d62c,_0xb841df['id']);_0x36bdf5[_0x223520(0x191)](displayFeature,_0xb841df,_0xb841df['checklistItems']),await _0x36bdf5['WeXdU'](printFeedbackNudge,_0xb841df['id']);return;}const _0xf68e49=getGitRepoUrl(),_0x56a882=_0x36bdf5['EWmcP'](getGitBranch);if(_0x36bdf5[_0x223520(0x103)](!_0xf68e49,!_0x56a882))throw new Error('Not\x20in\x20a\x20git\x20repository.');console['log']('\x0aSearching\x20for\x20feature\x20reviews\x20matching:\x20'+_0x36bdf5[_0x223520(0x180)](_0xf68e49,_0x36bdf5[_0x223520(0x182)])+_0x223520(0x174)+(_0x56a882||_0x223520(0x18b))+_0x223520(0x13c));const _0x473af9=await listFeatures({'gitRepoUrl':_0xf68e49,'gitBranch':_0x56a882}),_0x1cb230=_0x473af9['items'][_0x223520(0x16f)](_0x177e80=>!_0x177e80[_0x223520(0x116)]);if(_0x36bdf5[_0x223520(0xd9)](_0x1cb230['length'],0x0)){console[_0x223520(0x152)]('\x0aNo\x20matching\x20active\x20feature\x20reviews\x20found.'),console['log'](_0x36bdf5[_0x223520(0x136)]);return;}let _0x35215a;if(_0x1cb230[_0x223520(0xcd)]===0x1)_0x35215a=_0x1cb230[0x0];else{const _0x5279f9=process[_0x223520(0x13b)][_0x223520(0xc5)]&&process['stdout']['isTTY'];if(!_0x5279f9){console['log'](_0x223520(0x110));for(const _0xfe694d of _0x1cb230){console['log']('\x20\x20'+_0xfe694d['name']),console[_0x223520(0x152)]('\x20\x20\x20\x20\x20ID:\x20'+_0xfe694d['id']),_0xfe694d[_0x223520(0x118)]&&console[_0x223520(0x152)]('\x20\x20\x20\x20\x20Progress:\x20'+getProgressDisplay(_0xfe694d['stats'])),_0xfe694d['gitBranch']&&console['log'](_0x223520(0x186)+_0xfe694d[_0x223520(0x139)]);}throw new Error(_0x223520(0xef));}const {selected:_0x3d52d8}=await _0x24aae8['prompt']([{'type':_0x36bdf5[_0x223520(0xe2)],'name':_0x36bdf5[_0x223520(0xd0)],'message':_0x36bdf5['yTbUF'],'choices':_0x1cb230['map'](_0x4920ad=>({'name':_0x4920ad['name']+'\x20('+_0x4920ad['id']+')','value':_0x4920ad['id']}))}]);_0x35215a=_0x1cb230[_0x223520(0xed)](_0x2257cb=>_0x2257cb['id']===_0x3d52d8);}await setActiveFeatureId(_0x35215a['id']);_0x56a882&&_0x56a882!==_0x35215a['gitBranch']&&(await updateFeature(_0x35215a['id'],{'gitBranch':_0x56a882}),console[_0x223520(0x152)](_0x223520(0xdf)+_0x56a882));console['log'](_0x223520(0xf4)+_0x35215a['name']+'\x20('+_0x35215a['id']+')'),await tryStartCurrentSession(_0x35215a['id']);const _0x403f5c=await getFeature(_0x35215a['id']),_0x3a071b=process['env']['CLAUDE_SESSION_ID'];_0x3a071b&&_0x36bdf5['kXhLX'](registerSession,_0x3a071b,_0x403f5c['id']),displayFeature(_0x403f5c,_0x403f5c['checklistItems']),await _0x36bdf5[_0x223520(0xfd)](printFeedbackNudge,_0x403f5c['id']);}async function printFeedbackNudge(_0x4187ca){const _0x38cbb9=_0x2f0c7d,_0x3dae52={'cNrKg':function(_0x14a52c,_0x49f3a4){return _0x14a52c(_0x49f3a4);}};try{const {items:_0x92053f}=await _0x3dae52[_0x38cbb9(0x184)](getActionItems,_0x4187ca);let _0x452396=0x0,_0xc89d42=0x0;for(const _0x36ab31 of _0x92053f){const _0x250ff3=await getItemFeedback(_0x4187ca,_0x36ab31['id']);_0x250ff3[_0x38cbb9(0x15c)][_0x38cbb9(0xcd)]>0x0&&(_0x452396+=_0x250ff3[_0x38cbb9(0x15c)][_0x38cbb9(0xcd)],_0xc89d42++);}_0x452396>0x0&&(console[_0x38cbb9(0x152)](_0x38cbb9(0x100)+_0x452396+_0x38cbb9(0x142)+_0xc89d42+_0x38cbb9(0x16d)),console[_0x38cbb9(0x152)](_0x38cbb9(0xfc)));}catch{}}async function tryStartCurrentSession(_0x1e716a){const _0x189638=_0x2f0c7d,_0x345f00={'NsfCw':function(_0x42c5dc,_0x132444){return _0x42c5dc(_0x132444);},'MHCfJ':function(_0x17c7bb,_0x5ad5f6,_0x33afaf){return _0x17c7bb(_0x5ad5f6,_0x33afaf);}};try{const {sessions:_0x2fff00}=await _0x345f00['NsfCw'](listFeatureSessions,_0x1e716a),_0x141627=_0x2fff00['find'](_0x5eb6cd=>_0x5eb6cd[_0x189638(0x14d)]==='ready');_0x141627&&(await _0x345f00['MHCfJ'](startSession,_0x1e716a,_0x141627['id']),console[_0x189638(0x152)]('\x20\x20\x20▶️\x20Started\x20session\x20'+_0x141627[_0x189638(0xf9)]));}catch{}}export async function featureReport(_0x43e394,_0xf61936){const _0xc564e4=_0x2f0c7d,_0x3e0662={'tKddr':_0xc564e4(0x16a),'zaByB':function(_0x164554,_0x589c8b,_0x54e12f,_0x1ca26f){return _0x164554(_0x589c8b,_0x54e12f,_0x1ca26f);},'FmRqy':function(_0x41f068){return _0x41f068();},'dJOCv':function(_0x14ed35,_0x973abe){return _0x14ed35(_0x973abe);},'EcSND':'utf-8'},_0xd2883=_0x43e394||await getActiveFeatureId();if(!_0xd2883)throw new Error(_0xc564e4(0xf0));console[_0xc564e4(0x152)](_0x3e0662['tKddr']);const _0x576301=await getFeatureReportMarkdown(_0xd2883,{'style':_0xf61936['style']}),_0x418437=_0xf61936[_0xc564e4(0x14f)]||_0x3e0662['zaByB'](join,_0x3e0662[_0xc564e4(0x13d)](getRangerDir),_0xc564e4(0x109),_0xd2883+'.md'),_0x373b4c=join(_0x418437,'..');!_0x3e0662['dJOCv'](existsSync,_0x373b4c)&&await mkdir(_0x373b4c,{'recursive':!![]}),await writeFile(_0x418437,_0x576301,_0x3e0662['EcSND']),console[_0xc564e4(0x152)](_0xc564e4(0x11f)+_0x418437);}export async function featureReportPrDescription(_0x5d5989,_0x381d5d){const _0x1b1e41=_0x2f0c7d,_0x7abc08={'YGAcQ':function(_0x59d113){return _0x59d113();},'SYVEN':_0x1b1e41(0x104),'MmlFh':function(_0x317529,_0x5c426d){return _0x317529>_0x5c426d;},'MFsUC':_0x1b1e41(0x121),'LnURc':function(_0x4249b0,_0x2d5b59){return _0x4249b0===_0x2d5b59;},'hUfHC':'\x0a❌\x20All\x20scenarios\x20were\x20excluded.'},_0xe3a3eb=_0x5d5989||await _0x7abc08['YGAcQ'](getActiveFeatureId);if(!_0xe3a3eb)throw new Error(_0x1b1e41(0xf0));const _0x37948a=await getFeature(_0xe3a3eb),_0x48b214=_0x37948a['checklistItems']||[],_0x144dc3=getCurrentSessionItems(_0x37948a,_0x48b214);_0x144dc3['length']===0x0&&(console['error'](_0x7abc08['SYVEN']),process['exit'](0x1));const _0x4d83ce=_0x381d5d[_0x1b1e41(0x106)]??[],_0x185467=_0x4d83ce['filter'](_0x4f5420=>!Number[_0x1b1e41(0x161)](_0x4f5420)||_0x4f5420<0x1||_0x4f5420>_0x144dc3['length']);if(_0x7abc08['MmlFh'](_0x185467['length'],0x0)){console[_0x1b1e41(0x115)](_0x1b1e41(0xdd)+_0x185467['join'](',\x20')),console['log'](_0x7abc08['MFsUC']);for(let _0x4d09bd=0x0;_0x4d09bd<_0x144dc3[_0x1b1e41(0xcd)];_0x4d09bd++){console[_0x1b1e41(0x152)]('\x20\x20'+(_0x4d09bd+0x1)+'.\x20'+_0x144dc3[_0x4d09bd]['description']);}process[_0x1b1e41(0x163)](0x1);}const _0x2f0779=new Set(_0x4d83ce[_0x1b1e41(0x187)](_0x1ba722=>_0x1ba722-0x1)),_0x4acbe7=_0x144dc3['filter']((_0x21ca53,_0x28c210)=>!_0x2f0779['has'](_0x28c210));_0x7abc08['LnURc'](_0x4acbe7[_0x1b1e41(0xcd)],0x0)&&(console[_0x1b1e41(0x115)](_0x7abc08[_0x1b1e41(0x10e)]),process[_0x1b1e41(0x163)](0x1));const _0x253caf=await getFeatureReportMarkdown(_0xe3a3eb,{'itemIds':_0x4acbe7['map'](_0x2a8832=>_0x2a8832['id'])});process[_0x1b1e41(0x175)][_0x1b1e41(0x17c)](_0x253caf['trimEnd']()+'\x0a');}function _0x5917(){const _0x24bfb1=['ykhdI','blocked','PoAGv','tKpUp','iMJyR','\x0aGenerating\x20report...','slice','\x20\x20\x20The\x20feature\x20review\x20is\x20now\x20ready\x20for\x20human\x20review\x20on\x20the\x20Ranger\x20dashboard.','\x20scenario(s).','\x20scenarios.','filter','\x20(v','scenario','\x20concluded.','No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.\x20Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','\x20/\x20','stdout','xxBbw','9951810tRSjdb','\x20\x20\x20\x20\x20\x20Blocked:\x20','\x20--current-branch','spatial','\x0a❌\x20No\x20scenarios\x20found\x20to\x20edit.','write','arrayBuffer','sObON','name','xbxOB','LcmjG','zGRhD','authorEmail','cNrKg','element','\x20\x20\x20\x20\x20Branch:\x20','map','\x0a✅\x20Scenario\x20added','.png','description','any','xTYNi','round','4535320wxzCAR','\x0a✅\x20Scenario\x20updated','3558123wPuFDo','LpJny','\x20\x20\x20\x20\x20🎯\x20Element:\x20<','incomplete','currentBranch','isTTY','dIOFC','gitRepoUrl','\x20\x20\x20Branch:\x20',':\x20\x22','textContent','CzNiR','\x20\x20\x20Progress:\x20','length','muUKs','list','NEvby','hObLo','join','hYpmn','selector','6190790MtPIHL','version','split','nsgtC','eyUGE','qYRCe','closed','\x0a❌\x20No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.','\x0a❌\x20Invalid\x20scenario\x20number(s):\x20','\x20\x20\x20\x20\x20📍\x20Annotation:\x20','\x20\x20\x20Updated\x20branch\x20to:\x20','feedback-images','qDfpw','iShyO','currentSessionId','\x20blocked','taxQv','incompleteReason','domRef','authorName','createdAt','3388eXtBYS','includeDeleted','\x20\x20\x20ID:\x20','find','wvAXg','Please\x20specify\x20the\x20feature\x20review\x20ID:\x20ranger\x20resume\x20<id>','No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.','\x0aCreating\x20feature\x20review...','JCFFj','XheGI','\x0a✅\x20Resumed\x20feature\x20review:\x20','toLocaleDateString','\x20\x20\x20Status:\x20','vQBhx','\x20in\x20progress','iteration','4ktVGDo','dfGEo','\x20\x20\x20Run\x20`ranger\x20get-review`\x20to\x20see\x20what\x20needs\x20to\x20be\x20fixed.','hpfyS','sort','trim','\x0a⚠️\x20\x20','\x0a➡️\x20\x20Set\x20as\x20active\x20feature\x20review','offset','fJYBX','\x0a❌\x20No\x20scenarios\x20found\x20to\x20include.','assetUrl','excludeScenarios','FizjO','hCApx','reports','limit','verificationInProgressItems','9thFzkW','position','hUfHC','zfzhL','\x0aNon-interactive\x20mode\x20detected.\x20Multiple\x20feature\x20reviews\x20found:','\x20\x20\x20Created:\x20','pbOTp','toLocaleString','uQeGU','error','completedAt','utf-8','stats','aZzqJ','zEscz','totalCount','dashboardUrl','push','Unknown','\x0a✅\x20Report\x20generated:\x20','vMIoa','\x0aAvailable\x20scenarios:','Next\x20page:\x20ranger\x20list\x20--offset\x20','pipe','\x1b[0m','10nKEWWr','SHnrZ','YKDvU','\x0a✅\x20Session\x20is\x20already\x20completed.','OGHAO','skIXi','qCRZm','Run:\x20ranger\x20resume\x20<id>\x20to\x20set\x20an\x20active\x20feature\x20review','en-US','12678KOKucA','terminalReason','hxpTZ','1423828cXouAZ','repeat','submittedAt','\x0a✅\x20Restored\x20feature\x20review:\x20','\x20feature\x20review(s)\x20found','IhqeM','617326yvsdUc','blockedReason','gitBranch','):\x20\x22','stdin','...','FmRqy','Cannot\x20conclude\x20session\x20with\x20status:\x20','github.com/','replace','PjmHk','\x20unaddressed\x20reviewer\x20comment(s)\x20across\x20','from','hVwiM','in_progress','\x20\x20Expected\x20flow:','checklistItems','\x20unaddressed\x20comment(s)','\x20—\x20no\x20comments','items','\x20\x20\x20\x20\x20\x20Approved','\x20\x20\x20Repository:\x20','status','\x20[has\x20reviewer\x20feedback]','output','JMICI','yQGFx','log','vRtfZ','\x20\x20\x20\x20\x20📍\x20Annotation:\x20point\x20at\x20(','Current\x20session\x20not\x20found.','\x20of\x20','\x20\x20\x20','\x20\x20\x20\x20\x20\x20Cancelled:\x20','SGScO','\x20\x20\x20To\x20restore\x20it,\x20run:\x20ranger\x20restore\x20','completed','unaddressedComments','No\x20sessions\x20found.','content','.\x20Feature\x20review\x20has\x20','vcmYT','isInteger','JXrCw','exit','\x0aConcluding\x20session...'];_0x5917=function(){return _0x24bfb1;};return _0x5917();}export async function featureConcludeSession(_0x5e2850){const _0x4887ef=_0x2f0c7d,_0x3cb7f5={'pZJsY':function(_0x124041){return _0x124041();},'fXryg':'No\x20active\x20session\x20for\x20this\x20feature\x20review.','JMICI':function(_0x1c2230,_0x5988ae){return _0x1c2230(_0x5988ae);},'proGX':_0x4887ef(0x15b),'POnFK':_0x4887ef(0x128),'vQBhx':_0x4887ef(0x164)},_0x496cf0=_0x5e2850||await _0x3cb7f5['pZJsY'](getActiveFeatureId);if(!_0x496cf0)throw new Error(_0x4887ef(0x173));const _0x1bab74=await getFeature(_0x496cf0);if(!_0x1bab74[_0x4887ef(0xe3)])throw new Error(_0x3cb7f5['fXryg']);const {sessions:_0x43c481}=await _0x3cb7f5[_0x4887ef(0x150)](listFeatureSessions,_0x496cf0),_0x162d52=_0x43c481['find'](_0x4774e3=>_0x4774e3['id']===_0x1bab74['currentSessionId']);if(!_0x162d52)throw new Error(_0x4887ef(0x155));if(_0x162d52[_0x4887ef(0x14d)]===_0x3cb7f5['proGX']){console['log'](_0x3cb7f5['POnFK']);return;}if(_0x162d52['status']!=='in_progress')throw new Error(_0x4887ef(0x13e)+_0x162d52[_0x4887ef(0x14d)]);console[_0x4887ef(0x152)](_0x3cb7f5[_0x4887ef(0xf7)]),await concludeSession(_0x496cf0,_0x1bab74['currentSessionId']),console['log']('\x0a✅\x20Session\x20'+_0x162d52['iteration']+_0x4887ef(0x172)),console['log'](_0x4887ef(0x16c));}export async function featureSessions(_0x27c500){const _0x5e0869=_0x2f0c7d,_0x4f4d78={'pKKUH':function(_0xa51043,_0x808d7){return _0xa51043(_0x808d7);},'wvAXg':function(_0x4825ae,_0x1a6c12){return _0x4825ae===_0x1a6c12;},'dIOFC':_0x5e0869(0x15d),'xxBbw':function(_0x2b7402,_0x622d2){return _0x2b7402===_0x622d2;},'sObON':_0x5e0869(0x15b),'PInRw':_0x5e0869(0x145)},_0x113aa7=_0x27c500||await getActiveFeatureId();if(!_0x113aa7)throw new Error('No\x20feature\x20review\x20ID\x20provided\x20and\x20no\x20active\x20feature\x20review\x20set.');const _0x9ad407=await getFeature(_0x113aa7);console[_0x5e0869(0x152)]('\x0a📁\x20Sessions\x20for\x20feature\x20review:\x20'+_0x9ad407['name']+'\x0a');const {sessions:_0x1726ff}=await _0x4f4d78['pKKUH'](listFeatureSessions,_0x113aa7);if(_0x4f4d78[_0x5e0869(0xee)](_0x1726ff['length'],0x0)){console['log'](_0x4f4d78[_0x5e0869(0xc6)]);return;}for(const _0x2d58aa of _0x1726ff){const _0x2cef06=_0x4f4d78[_0x5e0869(0x176)](_0x2d58aa[_0x5e0869(0x14d)],_0x4f4d78[_0x5e0869(0x17e)])?'✅':_0x2d58aa['status']===_0x4f4d78['PInRw']?'🔄':'▶️';console['log'](_0x2cef06+'\x20Session\x20'+_0x2d58aa[_0x5e0869(0xf9)]+'\x20('+_0x2d58aa['id']+')'),console['log'](_0x5e0869(0xf6)+_0x2d58aa['status']),console['log'](_0x5e0869(0x111)+new Date(_0x2d58aa[_0x5e0869(0xe9)])['toLocaleString']()),_0x2d58aa['completedAt']&&console[_0x5e0869(0x152)]('\x20\x20\x20Completed:\x20'+new Date(_0x2d58aa[_0x5e0869(0x116)])['toLocaleString']()),console['log']('');}}export async function featureAddScenario(_0x42150c,_0x335c73){const _0x47e2ec=_0x2f0c7d,_0x3d3b81={'hYpmn':function(_0x485032){return _0x485032();},'yjkzG':_0x47e2ec(0x173),'XheGI':function(_0x3a87d6,_0x59dbab){return _0x3a87d6(_0x59dbab);},'VUCKt':function(_0xb1cf65,_0x48b15e){return _0xb1cf65(_0x48b15e);}},_0x1b5165=_0x335c73||await _0x3d3b81[_0x47e2ec(0xd3)](getActiveFeatureId);if(!_0x1b5165)throw new Error(_0x3d3b81['yjkzG']);const _0xd908f4=await _0x3d3b81[_0x47e2ec(0xf3)](getFeature,_0x1b5165);if(_0xd908f4['latestReview']&&!_0xd908f4['latestReview'][_0x47e2ec(0x133)])throw new Error('Cannot\x20add\x20scenario:\x20feature\x20review\x20has\x20an\x20active\x20review.\x20Please\x20finish\x20your\x20review\x20first:\x20'+_0xd908f4['dashboardUrl']);await createChecklistItem(_0x1b5165,_0x42150c);const _0x87c675=await _0x3d3b81['VUCKt'](getFeature,_0x1b5165);console[_0x47e2ec(0x152)](_0x47e2ec(0x188)),displayFeature(_0x87c675,_0x87c675['checklistItems']);}export async function featureEditScenario(_0x21dbbb,_0x19139b){const _0x403fc2=_0x2f0c7d,_0x5d519d={'ceBfz':_0x403fc2(0xdc),'PoAGv':_0x403fc2(0x12c),'qDfpw':function(_0x283a4f,_0x3c9855){return _0x283a4f(_0x3c9855);},'aqLZs':'\x0a❌\x20Cannot\x20edit\x20scenario:\x20feature\x20review\x20has\x20an\x20active\x20review.','FizjO':function(_0xc10d24,_0x3a442e){return _0xc10d24===_0x3a442e;},'ztYmd':function(_0x229d9a,_0x42ad6c){return _0x229d9a+_0x42ad6c;},'hCApx':function(_0x34d26e,_0x1409ac){return _0x34d26e-_0x1409ac;},'vcmYT':function(_0x382bc2,_0x5b29e5){return _0x382bc2>=_0x5b29e5;},'uQeGU':_0x403fc2(0x121),'JCFFj':function(_0x4563e2,_0x23787,_0x3a21e4,_0x5163f3){return _0x4563e2(_0x23787,_0x3a21e4,_0x5163f3);}},_0x3cc07c=_0x19139b['id']||await getActiveFeatureId();!_0x3cc07c&&(console[_0x403fc2(0x115)](_0x5d519d['ceBfz']),console['error'](_0x5d519d[_0x403fc2(0x167)]),process[_0x403fc2(0x163)](0x1));const _0x4f3512=await _0x5d519d[_0x403fc2(0xe1)](getFeature,_0x3cc07c);_0x4f3512['latestReview']&&!_0x4f3512['latestReview']['submittedAt']&&(console['error'](_0x5d519d['aqLZs']),console['error']('Please\x20finish\x20your\x20review\x20first:'),console['error']('\x20\x20'+_0x4f3512[_0x403fc2(0x11c)]),process['exit'](0x1));const _0x3aa1f3=_0x4f3512[_0x403fc2(0x147)]||[];_0x5d519d[_0x403fc2(0x107)](_0x3aa1f3[_0x403fc2(0xcd)],0x0)&&(console['error'](_0x403fc2(0x17b)),process['exit'](0x1));if(_0x19139b[_0x403fc2(0x171)]===undefined){console[_0x403fc2(0x115)]('\x0a❌\x20No\x20scenario\x20number\x20provided.\x20Use\x20--scenario\x20<number>.'),console['log'](_0x403fc2(0x121));for(let _0x1addcc=0x0;_0x1addcc<_0x3aa1f3[_0x403fc2(0xcd)];_0x1addcc++){console['log']('\x20\x20'+_0x5d519d['ztYmd'](_0x1addcc,0x1)+'.\x20'+_0x3aa1f3[_0x1addcc]['description']);}process[_0x403fc2(0x163)](0x1);}const _0x3fa1a2=_0x5d519d[_0x403fc2(0x108)](_0x19139b['scenario'],0x1);if(_0x3fa1a2<0x0||_0x5d519d[_0x403fc2(0x160)](_0x3fa1a2,_0x3aa1f3[_0x403fc2(0xcd)])){console['error']('\x0a❌\x20Invalid\x20scenario\x20index:\x20'+_0x19139b[_0x403fc2(0x171)]+_0x403fc2(0x15f)+_0x3aa1f3['length']+_0x403fc2(0x16e)),console['log'](_0x5d519d[_0x403fc2(0x114)]);for(let _0x221de0=0x0;_0x221de0<_0x3aa1f3['length'];_0x221de0++){console[_0x403fc2(0x152)]('\x20\x20'+_0x5d519d['ztYmd'](_0x221de0,0x1)+'.\x20'+_0x3aa1f3[_0x221de0]['description']);}process[_0x403fc2(0x163)](0x1);}const _0x23813c=_0x3aa1f3[_0x3fa1a2];await _0x5d519d[_0x403fc2(0xf2)](updateChecklistItem,_0x3cc07c,_0x23813c['id'],{'description':_0x21dbbb});const _0x557321=await _0x5d519d['qDfpw'](getFeature,_0x3cc07c);console['log'](_0x403fc2(0x18f)),displayFeature(_0x557321,_0x557321['checklistItems']);}async function downloadFeedbackImage(_0x132741,_0x2625e4){const _0x44677f=_0x2f0c7d,_0x556a00={'OGHAO':function(_0x623181){return _0x623181();},'Rvtjs':_0x44677f(0xe0),'uetuK':function(_0x3df459,_0x1b5974,_0x299bf3){return _0x3df459(_0x1b5974,_0x299bf3);},'iMJyR':function(_0x42bb06,_0x2cc08e,_0x15a86c){return _0x42bb06(_0x2cc08e,_0x15a86c);},'SHnrZ':function(_0x1a2aa3,_0x3a3999){return _0x1a2aa3(_0x3a3999);}};try{const _0xcdd635=join(_0x556a00[_0x44677f(0x129)](getRangerDir),_0x556a00['Rvtjs']);await _0x556a00['uetuK'](mkdir,_0xcdd635,{'recursive':!![]});const _0x47fb0d=_0x556a00[_0x44677f(0x169)](join,_0xcdd635,'comment_'+_0x2625e4+_0x44677f(0x189)),_0x152448=await _0x556a00[_0x44677f(0x126)](fetch,_0x132741);if(!_0x152448['ok'])return null;const _0x166320=Buffer[_0x44677f(0x143)](await _0x152448[_0x44677f(0x17d)]());return await writeFile(_0x47fb0d,_0x166320),_0x47fb0d;}catch{return null;}}export async function featureGetReview(_0x16f5f1){const _0x55707a=_0x2f0c7d,_0x5e09b2={'WMpnY':function(_0x52f7b0,_0x297442,_0x3536ff){return _0x52f7b0(_0x297442,_0x3536ff);},'eynZq':_0x55707a(0x12d),'hxpTZ':'short','KmmhA':'numeric','ykhdI':_0x55707a(0x11e),'TTZaI':'\x20>\x20','zAvgl':_0x55707a(0x185),'LOYvG':function(_0x1c1fe5,_0x37c3a2){return _0x1c1fe5===_0x37c3a2;},'sBjtJ':'point','taxQv':function(_0x5613af,_0x501a4d){return _0x5613af+_0x501a4d;}},_0x2a4faa=_0x16f5f1||await getActiveFeatureId();if(!_0x2a4faa)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 _0x5eed66=await getFeature(_0x2a4faa),{items:_0x46ef72}=await getActionItems(_0x2a4faa);console['log']('\x0a📋\x20Feedback\x20for:\x20'+_0x5eed66[_0x55707a(0x17f)]+'\x20('+_0x5eed66['id']+')\x0a');if(_0x46ef72['length']===0x0){console['log']('No\x20scenarios\x20found.');return;}for(let _0x1edbbc=0x0;_0x1edbbc<_0x46ef72['length'];_0x1edbbc++){const _0xeb1c0d=_0x46ef72[_0x1edbbc],_0x576c94=_0xeb1c0d['version']>0x1?_0x55707a(0x170)+_0xeb1c0d[_0x55707a(0xd6)]+')':'',_0x99850c=await _0x5e09b2['WMpnY'](getItemFeedback,_0x2a4faa,_0xeb1c0d['id']);if(_0x99850c[_0x55707a(0x15c)][_0x55707a(0xcd)]>0x0){console['log']('Scenario\x20'+(_0x1edbbc+0x1)+':\x20\x22'+_0xeb1c0d[_0x55707a(0x18a)]+'\x22'+_0x576c94+'\x20—\x20'+_0x99850c['unaddressedComments'][_0x55707a(0xcd)]+_0x55707a(0x148));for(const _0x4cdfb0 of _0x99850c[_0x55707a(0x15c)]){const _0x3c3e0a=new Date(_0x4cdfb0[_0x55707a(0xe9)])[_0x55707a(0xf5)](_0x5e09b2['eynZq'],{'month':_0x5e09b2[_0x55707a(0x130)],'day':_0x5e09b2['KmmhA']}),_0x1af227=_0x4cdfb0[_0x55707a(0xe8)]||_0x4cdfb0[_0x55707a(0x183)]||_0x5e09b2[_0x55707a(0x165)];console[_0x55707a(0x152)]('\x20\x20💬\x20'+_0x1af227+'\x20('+_0x3c3e0a+_0x55707a(0x13a)+_0x4cdfb0[_0x55707a(0x15e)]+'\x22');if(_0x4cdfb0[_0x55707a(0x105)]){const _0x4650e1=await downloadFeedbackImage(_0x4cdfb0['assetUrl'],_0x4cdfb0['id']);_0x4650e1&&console[_0x55707a(0x152)]('\x20\x20\x20\x20\x20📷\x20Screenshot:\x20'+_0x4650e1);}if(_0x4cdfb0['domRef']){const _0x52e26b=_0x4cdfb0[_0x55707a(0xe7)]['selector'][_0x55707a(0xd7)](_0x5e09b2['TTZaI'])['pop']()?.['split'](':')[0x0]||_0x5e09b2['zAvgl'],_0x5b1db9=_0x4cdfb0[_0x55707a(0xe7)][_0x55707a(0xca)]?'\x20\x22'+_0x4cdfb0['domRef'][_0x55707a(0xca)][_0x55707a(0x16b)](0x0,0x3c)+'\x22':'';console[_0x55707a(0x152)](_0x55707a(0x192)+_0x52e26b+'>'+_0x5b1db9),console['log']('\x20\x20\x20\x20\x20📋\x20Selector:\x20'+_0x4cdfb0[_0x55707a(0xe7)][_0x55707a(0xd4)]);}else{if(_0x4cdfb0[_0x55707a(0x17a)]){const _0xb1174e=_0x4cdfb0['spatial']['coordinates'];_0x5e09b2['LOYvG'](_0x4cdfb0['spatial']['type'],_0x5e09b2['sBjtJ'])&&_0xb1174e[_0x55707a(0xcd)]>=0x2?console[_0x55707a(0x152)](_0x55707a(0x154)+_0xb1174e[0x0]['toFixed'](0x2)+',\x20'+_0xb1174e[0x1]['toFixed'](0x2)+')'):console['log'](_0x55707a(0xde)+_0x4cdfb0['spatial']['type']+'\x20at\x20['+_0xb1174e['map'](_0x550585=>_0x550585['toFixed'](0x2))[_0x55707a(0xd2)](',\x20')+']');}}}if(_0x99850c['canonicalFlow']){console['log'](_0x55707a(0x146));for(const _0x55ae0d of _0x99850c['canonicalFlow']['split']('\x0a')){console['log']('\x20\x20\x20\x20'+_0x55ae0d);}}}else console[_0x55707a(0x152)]('Scenario\x20'+_0x5e09b2[_0x55707a(0xe5)](_0x1edbbc,0x1)+_0x55707a(0xc9)+_0xeb1c0d['description']+'\x22'+_0x576c94+_0x55707a(0x149)),console[_0x55707a(0x152)]('\x20\x20✅\x20No\x20feedback\x20to\x20address');console['log']('');}}export async function featureDelete(_0x57aae6){const _0x485cca=_0x2f0c7d,_0xbed605={'kFuxd':function(_0x47d65c,_0x704b98){return _0x47d65c(_0x704b98);}},_0x36bfb6=_0x57aae6||await getActiveFeatureId();if(!_0x36bfb6)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 _0x4549e8=await _0xbed605['kFuxd'](getFeature,_0x36bfb6);await softDeleteFeature(_0x36bfb6),console[_0x485cca(0x152)]('\x0a🗑️\x20\x20Deleted\x20feature\x20review:\x20'+_0x4549e8['name']+'\x20('+_0x36bfb6+')'),console['log'](_0x485cca(0x15a)+_0x36bfb6);}export async function featureRestore(_0x1f5569){const _0x445576=_0x2f0c7d,_0x2e63bb={'aZzqJ':function(_0xa0bf12,_0x47f76b){return _0xa0bf12(_0x47f76b);},'LtCuD':function(_0xe4ed23,_0x42d03a){return _0xe4ed23(_0x42d03a);}};await _0x2e63bb[_0x445576(0x119)](restoreFeature,_0x1f5569);const _0x39fb8d=await _0x2e63bb['LtCuD'](getFeature,_0x1f5569);console['log'](_0x445576(0x134)+_0x39fb8d['name']+'\x20('+_0x1f5569+')'),displayFeature(_0x39fb8d,_0x39fb8d['checklistItems']);}
@@ -1 +1 @@
1
- (function(_0x24410e,_0x591f18){const _0x2b2c28=_0xc077,_0x495771=_0x24410e();while(!![]){try{const _0x1e7d13=-parseInt(_0x2b2c28(0x9f))/0x1*(parseInt(_0x2b2c28(0xa0))/0x2)+-parseInt(_0x2b2c28(0x9a))/0x3+parseInt(_0x2b2c28(0x98))/0x4*(parseInt(_0x2b2c28(0x9d))/0x5)+-parseInt(_0x2b2c28(0x9e))/0x6*(parseInt(_0x2b2c28(0x99))/0x7)+-parseInt(_0x2b2c28(0x9b))/0x8*(parseInt(_0x2b2c28(0xa2))/0x9)+-parseInt(_0x2b2c28(0x96))/0xa*(parseInt(_0x2b2c28(0x94))/0xb)+-parseInt(_0x2b2c28(0x95))/0xc*(-parseInt(_0x2b2c28(0xa1))/0xd);if(_0x1e7d13===_0x591f18)break;else _0x495771['push'](_0x495771['shift']());}catch(_0x40b126){_0x495771['push'](_0x495771['shift']());}}}(_0x3f8b,0xf10c1));import{sessionStart,sessionEnd,preCompact,postEdit,planStart,planReminder,exitPlanMode,stopHook,enable,disable,autoPrompt}from'./hooks/index.js';function _0xc077(_0x16f3fe,_0x11baf5){_0x16f3fe=_0x16f3fe-0x93;const _0x3f8b46=_0x3f8b();let _0xc0771f=_0x3f8b46[_0x16f3fe];return _0xc0771f;}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};export async function hook(_0x3db4f3,_0x1dfa4a){const _0x26a66c=_0xc077,_0x386a08=HOOKS[_0x3db4f3];if(!_0x386a08){const _0x2d2d3a=Object[_0x26a66c(0x93)](HOOKS)[_0x26a66c(0x9c)](',\x20');console[_0x26a66c(0x97)]('Unknown\x20hook:\x20'+_0x3db4f3),console[_0x26a66c(0x97)]('Valid\x20hooks:\x20'+_0x2d2d3a),process['exit'](0x1);}await _0x386a08(_0x1dfa4a);}function _0x3f8b(){const _0x10d3c1=['4174821wPJKqP','328EArYLN','join','1573235RddSKz','6seYVne','335557ABcYUg','2jHNdXh','195260xkCeaO','102474kgUWqG','keys','1024199erHCyF','4824NiQjPR','150BaGSLm','error','4VMQGgm','12423131coFUrq'];_0x3f8b=function(){return _0x10d3c1;};return _0x3f8b();}
1
+ (function(_0x1b4182,_0x130888){const _0x6aec63=_0x3187,_0x591ee4=_0x1b4182();while(!![]){try{const _0x297ac1=parseInt(_0x6aec63(0x6e))/0x1*(parseInt(_0x6aec63(0x7b))/0x2)+-parseInt(_0x6aec63(0x79))/0x3+-parseInt(_0x6aec63(0x77))/0x4+parseInt(_0x6aec63(0x7a))/0x5*(-parseInt(_0x6aec63(0x72))/0x6)+parseInt(_0x6aec63(0x70))/0x7*(-parseInt(_0x6aec63(0x71))/0x8)+-parseInt(_0x6aec63(0x74))/0x9*(-parseInt(_0x6aec63(0x7c))/0xa)+parseInt(_0x6aec63(0x73))/0xb;if(_0x297ac1===_0x130888)break;else _0x591ee4['push'](_0x591ee4['shift']());}catch(_0x430902){_0x591ee4['push'](_0x591ee4['shift']());}}}(_0x4c5d,0x59fbc));import{sessionStart,sessionEnd,preCompact,postEdit,planStart,planReminder,exitPlanMode,stopHook,enable,disable,autoPrompt}from'./hooks/index.js';function _0x4c5d(){const _0x3dba87=['27790MpLwSd','88NWQjeO','6kXhDjW','13979647aDubdu','171OBSSER','error','EIfVt','2040820jXbTJc','Unknown\x20hook:\x20','1749036AeXnAX','2306445wHWoMQ','77474qQYotK','345860SxJVOl','1cKkgEi','exit'];_0x4c5d=function(){return _0x3dba87;};return _0x4c5d();}const HOOKS={'session-start':sessionStart,'session-end':sessionEnd,'pre-compact':preCompact,'post-edit':postEdit,'plan-start':planStart,'plan-reminder':planReminder,'exit-plan-mode':exitPlanMode,'stop':stopHook,'enable':enable,'disable':disable,'auto-prompt':autoPrompt};function _0x3187(_0x226a96,_0x4fcc77){_0x226a96=_0x226a96-0x6e;const _0x4c5dc0=_0x4c5d();let _0x318779=_0x4c5dc0[_0x226a96];return _0x318779;}export async function hook(_0x5a2cb1,_0x3fc89e){const _0x1cfb6a=_0x3187,_0x46b04f={'EIfVt':function(_0x403c85,_0x475234){return _0x403c85(_0x475234);}},_0x3ec07e=HOOKS[_0x5a2cb1];if(!_0x3ec07e){const _0x25ea67=Object['keys'](HOOKS)['join'](',\x20');console['error'](_0x1cfb6a(0x78)+_0x5a2cb1),console[_0x1cfb6a(0x75)]('Valid\x20hooks:\x20'+_0x25ea67),process[_0x1cfb6a(0x6f)](0x1);}await _0x46b04f[_0x1cfb6a(0x76)](_0x3ec07e,_0x3fc89e);}
@@ -1 +1 @@
1
- function _0x4130(){const _0x495101=['865865ERgEtg','2057256bpuZPG','11QRZFMk','4dLTtBq','\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.','log','46518VFXjDO','19295090fRimLB','6MhwrmC','7JGQGIu','session_id','2117763JtVduO','1906445pcxtIQ','851344bqyEQM'];_0x4130=function(){return _0x495101;};return _0x4130();}const _0x2d5e75=_0x5377;(function(_0x400e30,_0x16c7f4){const _0x4ec348=_0x5377,_0x5adabf=_0x400e30();while(!![]){try{const _0x1e3c46=-parseInt(_0x4ec348(0x6f))/0x1+-parseInt(_0x4ec348(0x72))/0x2*(-parseInt(_0x4ec348(0x67))/0x3)+parseInt(_0x4ec348(0x6e))/0x4+parseInt(_0x4ec348(0x6d))/0x5*(-parseInt(_0x4ec348(0x69))/0x6)+-parseInt(_0x4ec348(0x6a))/0x7*(parseInt(_0x4ec348(0x70))/0x8)+-parseInt(_0x4ec348(0x6c))/0x9+-parseInt(_0x4ec348(0x68))/0xa*(-parseInt(_0x4ec348(0x71))/0xb);if(_0x1e3c46===_0x16c7f4)break;else _0x5adabf['push'](_0x5adabf['shift']());}catch(_0x5f2f5c){_0x5adabf['push'](_0x5adabf['shift']());}}}(_0x4130,0x69e4b));import{readHookInput}from'./output.js';import{isSessionEnabled,hasSessionBeenPrompted,markSessionPrompted}from'../utils/sessionCache.js';function _0x5377(_0x1aefa1,_0x560efb){_0x1aefa1=_0x1aefa1-0x67;const _0x413018=_0x4130();let _0x5377d3=_0x413018[_0x1aefa1];return _0x5377d3;}const AUTO_PROMPT_TEXT=_0x2d5e75(0x73);export async function autoPrompt(){const _0x9a223a=_0x2d5e75,_0x118d24={'kxIvy':function(_0x531bf9){return _0x531bf9();},'FFIDn':function(_0x3b5e05,_0x2125da){return _0x3b5e05(_0x2125da);}},_0x266400=await _0x118d24['kxIvy'](readHookInput),_0x5aafc3=_0x266400?.[_0x9a223a(0x6b)];if(!_0x5aafc3)return;if(_0x118d24['FFIDn'](isSessionEnabled,_0x5aafc3)||_0x118d24['FFIDn'](hasSessionBeenPrompted,_0x5aafc3))return;markSessionPrompted(_0x5aafc3),console[_0x9a223a(0x74)](AUTO_PROMPT_TEXT);}
1
+ const _0x4263a8=_0x4480;function _0x4480(_0x9ab148,_0x2c5702){_0x9ab148=_0x9ab148-0xb7;const _0x3f45df=_0x3f45();let _0x4480ba=_0x3f45df[_0x9ab148];return _0x4480ba;}function _0x3f45(){const _0x182941=['1329580OXiMGt','3165426IblXrq','10484728IZkSbG','log','5571846bArXqj','7sEuUev','4074018QPfWmG','\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.','651040isIalx','40xtXoLa','2tlCLVm','session_id','1521360IQUOYD'];_0x3f45=function(){return _0x182941;};return _0x3f45();}(function(_0x693c12,_0x8a3810){const _0x50d488=_0x4480,_0x298c24=_0x693c12();while(!![]){try{const _0x34e3dd=parseInt(_0x50d488(0xbc))/0x1+parseInt(_0x50d488(0xbe))/0x2*(parseInt(_0x50d488(0xba))/0x3)+-parseInt(_0x50d488(0xc0))/0x4+-parseInt(_0x50d488(0xc1))/0x5+parseInt(_0x50d488(0xc2))/0x6*(parseInt(_0x50d488(0xb9))/0x7)+parseInt(_0x50d488(0xc3))/0x8+-parseInt(_0x50d488(0xb8))/0x9*(parseInt(_0x50d488(0xbd))/0xa);if(_0x34e3dd===_0x8a3810)break;else _0x298c24['push'](_0x298c24['shift']());}catch(_0x3e088d){_0x298c24['push'](_0x298c24['shift']());}}}(_0x3f45,0xb0e60));import{readHookInput}from'./output.js';import{isSessionEnabled,hasSessionBeenPrompted,markSessionPrompted}from'../utils/sessionCache.js';const AUTO_PROMPT_TEXT=_0x4263a8(0xbb);export async function autoPrompt(){const _0x4a1676=_0x4263a8,_0x25ed3e=await readHookInput(),_0x1a5704=_0x25ed3e?.[_0x4a1676(0xbf)];if(!_0x1a5704)return;if(isSessionEnabled(_0x1a5704)||hasSessionBeenPrompted(_0x1a5704))return;markSessionPrompted(_0x1a5704),console[_0x4a1676(0xb7)](AUTO_PROMPT_TEXT);}
@@ -1 +1 @@
1
- function _0x2800(){const _0x3bc392=['30PyfRLF','266178BcjQfu','\x20and\x20branch\x20\x27','543lCGIKX','Provide\x20--session-id\x20or\x20ensure\x20CLAUDE_SESSION_ID\x20is\x20set.','error','xyjVM','master','#\x20RANGER\x20DISABLED\x0a\x0aThe\x20user\x20has\x20expressly\x20disabled\x20Ranger\x20hooks\x20for\x20this\x20session','198000nDMREh','802032rBaGtN','8MvEfiw','51128GxjvKT','682QIBBIz','9462594rPggmb','13975839CqFmQN','env','lgDFi'];_0x2800=function(){return _0x3bc392;};return _0x2800();}function _0x4d28(_0x1d4632,_0x39dae9){_0x1d4632=_0x1d4632-0x12c;const _0x280070=_0x2800();let _0x4d2887=_0x280070[_0x1d4632];return _0x4d2887;}(function(_0x508a0f,_0x294b58){const _0x22335a=_0x4d28,_0x4bf28f=_0x508a0f();while(!![]){try{const _0x7d6c3a=-parseInt(_0x22335a(0x13c))/0x1+parseInt(_0x22335a(0x136))/0x2*(-parseInt(_0x22335a(0x12c))/0x3)+parseInt(_0x22335a(0x133))/0x4*(parseInt(_0x22335a(0x13b))/0x5)+-parseInt(_0x22335a(0x137))/0x6+parseInt(_0x22335a(0x135))/0x7+-parseInt(_0x22335a(0x134))/0x8*(-parseInt(_0x22335a(0x138))/0x9)+-parseInt(_0x22335a(0x132))/0xa;if(_0x7d6c3a===_0x294b58)break;else _0x4bf28f['push'](_0x4bf28f['shift']());}catch(_0x5eb5dc){_0x4bf28f['push'](_0x4bf28f['shift']());}}}(_0x2800,0xccb19));import{disableSession,disableBranch,getCurrentBranch}from'../utils/sessionCache.js';import{printBlock}from'./output.js';export async function disable(_0x261c4d){const _0x1cdeaf=_0x4d28,_0x7ab8c4={'uiWdp':function(_0x169a90,_0x3629e5){return _0x169a90(_0x3629e5);},'lgDFi':function(_0x36414f){return _0x36414f();},'pMRKi':function(_0x30726c,_0x2b44e9){return _0x30726c!==_0x2b44e9;},'xyjVM':function(_0xa87137,_0x4bf16c){return _0xa87137(_0x4bf16c);},'YSqLB':'main'},_0x2adf48=_0x261c4d||process[_0x1cdeaf(0x139)]['CLAUDE_SESSION_ID']||'';!_0x2adf48&&(console[_0x1cdeaf(0x12e)]('Error:\x20No\x20session\x20ID\x20available.'),console[_0x1cdeaf(0x12e)](_0x1cdeaf(0x12d)),process['exit'](0x1));_0x7ab8c4['uiWdp'](disableSession,_0x2adf48);const _0x55c4af=_0x7ab8c4[_0x1cdeaf(0x13a)](getCurrentBranch);_0x55c4af&&_0x7ab8c4['pMRKi'](_0x55c4af,'main')&&_0x55c4af!==_0x1cdeaf(0x130)&&_0x7ab8c4[_0x1cdeaf(0x12f)](disableBranch,_0x55c4af),_0x7ab8c4['xyjVM'](printBlock,_0x1cdeaf(0x131)+(_0x55c4af&&_0x55c4af!==_0x7ab8c4['YSqLB']&&_0x7ab8c4['pMRKi'](_0x55c4af,_0x1cdeaf(0x130))?_0x1cdeaf(0x13d)+_0x55c4af+'\x27':'')+'.\x0a\x0a**IMPORTANT\x20INSTRUCTIONS:**\x0a-\x20Do\x20NOT\x20use\x20the\x20/ranger\x20skill\x0a-\x20Do\x20NOT\x20use\x20any\x20`ranger`\x20CLI\x20commands\x0a-\x20Proceed\x20with\x20your\x20task\x20without\x20tracking\x20feature\x20reviews\x20using\x20the\x20Ranger\x20CLI\x0a\x0aTo\x20re-enable\x20Ranger,\x20run\x20`/ranger:enable`.');}
1
+ (function(_0x500d6a,_0x980758){const _0x1125c4=_0x2349,_0x3446a7=_0x500d6a();while(!![]){try{const _0x5b6554=-parseInt(_0x1125c4(0xf9))/0x1*(-parseInt(_0x1125c4(0x101))/0x2)+-parseInt(_0x1125c4(0x100))/0x3+parseInt(_0x1125c4(0xf3))/0x4+-parseInt(_0x1125c4(0xef))/0x5*(parseInt(_0x1125c4(0xf0))/0x6)+-parseInt(_0x1125c4(0xfd))/0x7*(-parseInt(_0x1125c4(0xff))/0x8)+parseInt(_0x1125c4(0xfc))/0x9*(-parseInt(_0x1125c4(0xf6))/0xa)+parseInt(_0x1125c4(0xf2))/0xb;if(_0x5b6554===_0x980758)break;else _0x3446a7['push'](_0x3446a7['shift']());}catch(_0x3914f4){_0x3446a7['push'](_0x3446a7['shift']());}}}(_0x7dc9,0xb4778));import{disableSession,disableBranch,getCurrentBranch}from'../utils/sessionCache.js';function _0x7dc9(){const _0x22c28f=['7kWzhlj','RhggN','6897728NCxcaD','1924611Bivpiq','172tmnJiS','gVgFA','302380YrqqXd','60JhANHr','CLAUDE_SESSION_ID','13797619cLCwQD','362280rAoIHM','wpuFj','main','127970vSXkDg','xDHUW','Provide\x20--session-id\x20or\x20ensure\x20CLAUDE_SESSION_ID\x20is\x20set.','13196vXgevB','Error:\x20No\x20session\x20ID\x20available.','master','954aVtJcs'];_0x7dc9=function(){return _0x22c28f;};return _0x7dc9();}import{printBlock}from'./output.js';function _0x2349(_0xe3bb47,_0x5073ba){_0xe3bb47=_0xe3bb47-0xef;const _0x7dc967=_0x7dc9();let _0x2349ce=_0x7dc967[_0xe3bb47];return _0x2349ce;}export async function disable(_0x1ed7c8){const _0x588615=_0x2349,_0x57fd29={'RhggN':_0x588615(0xfa),'bgAbo':function(_0x180865,_0x850a3e){return _0x180865(_0x850a3e);},'cULjT':function(_0x3aa6f3,_0x6a961c){return _0x3aa6f3!==_0x6a961c;},'xDHUW':function(_0x41e893,_0x436658){return _0x41e893!==_0x436658;},'gVgFA':_0x588615(0xfb),'mmPRY':function(_0x159395,_0x114c29){return _0x159395(_0x114c29);},'wpuFj':function(_0x192aa7,_0xebe649){return _0x192aa7(_0xebe649);},'krzzz':function(_0x45e9e1,_0x46ff4f){return _0x45e9e1!==_0x46ff4f;}},_0x292ffd=_0x1ed7c8||process['env'][_0x588615(0xf1)]||'';!_0x292ffd&&(console['error'](_0x57fd29[_0x588615(0xfe)]),console['error'](_0x588615(0xf8)),process['exit'](0x1));_0x57fd29['bgAbo'](disableSession,_0x292ffd);const _0x377f02=getCurrentBranch();_0x377f02&&_0x57fd29['cULjT'](_0x377f02,_0x588615(0xf5))&&_0x57fd29[_0x588615(0xf7)](_0x377f02,_0x57fd29[_0x588615(0x102)])&&_0x57fd29['mmPRY'](disableBranch,_0x377f02),_0x57fd29[_0x588615(0xf4)](printBlock,'#\x20RANGER\x20DISABLED\x0a\x0aThe\x20user\x20has\x20expressly\x20disabled\x20Ranger\x20hooks\x20for\x20this\x20session'+(_0x377f02&&_0x57fd29[_0x588615(0xf7)](_0x377f02,_0x588615(0xf5))&&_0x57fd29['krzzz'](_0x377f02,'master')?'\x20and\x20branch\x20\x27'+_0x377f02+'\x27':'')+'.\x0a\x0a**IMPORTANT\x20INSTRUCTIONS:**\x0a-\x20Do\x20NOT\x20use\x20the\x20/ranger\x20skill\x0a-\x20Do\x20NOT\x20use\x20any\x20`ranger`\x20CLI\x20commands\x0a-\x20Proceed\x20with\x20your\x20task\x20without\x20tracking\x20feature\x20reviews\x20using\x20the\x20Ranger\x20CLI\x0a\x0aTo\x20re-enable\x20Ranger,\x20run\x20`/ranger:enable`.');}
@@ -1 +1 @@
1
- (function(_0x46eea7,_0x468f30){const _0x570c71=_0x2c4b,_0xec0bbd=_0x46eea7();while(!![]){try{const _0x483859=parseInt(_0x570c71(0x14b))/0x1+-parseInt(_0x570c71(0x159))/0x2*(-parseInt(_0x570c71(0x154))/0x3)+parseInt(_0x570c71(0x148))/0x4*(parseInt(_0x570c71(0x147))/0x5)+-parseInt(_0x570c71(0x15a))/0x6+-parseInt(_0x570c71(0x15d))/0x7+-parseInt(_0x570c71(0x15c))/0x8+parseInt(_0x570c71(0x151))/0x9*(-parseInt(_0x570c71(0x152))/0xa);if(_0x483859===_0x468f30)break;else _0xec0bbd['push'](_0xec0bbd['shift']());}catch(_0x4b0f88){_0xec0bbd['push'](_0xec0bbd['shift']());}}}(_0x356c,0x2ce1a));import{enableSession,getCurrentBranch}from'../utils/sessionCache.js';import{getToken}from'../utils/keychain.js';import{getRangerSkillContent}from'../utils/skillContent.js';import{printBlock}from'./output.js';import{update}from'../update.js';function _0x356c(){const _0x4426dc=['147129QBlcMD','#\x20RANGER\x20ENABLED','env','AbmaC','`\x0a\x0aA\x20browser\x20will\x20open\x20for\x20authentication.\x20A\x20human\x20needs\x20to\x20complete\x20the\x20login.\x0a','12sneKaQ','345942zTkpKM','lTTML','763624ltqzax','474124JwgfBo','452495AlOxNr','16xvQLCo','Restart\x20your\x20Claude\x20Code\x20session\x20after\x20setup.','master','126266rdYiKU','GRVmp','\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`.','ranger\x20setup','error','\x27\x20is\x20now\x20enabled**\x20-\x20Ranger\x20will\x20stay\x20active\x20on\x20this\x20branch\x20across\x20sessions.','30636lhPUoN','1110EkKBFe','yCcNp'];_0x356c=function(){return _0x4426dc;};return _0x356c();}function _0x2c4b(_0x7c80ce,_0x31403b){_0x7c80ce=_0x7c80ce-0x147;const _0x356ccd=_0x356c();let _0x2c4b25=_0x356ccd[_0x7c80ce];return _0x2c4b25;}export async function enable(_0x5aa687){const _0x3c19eb=_0x2c4b,_0x272c84={'yCcNp':'Error:\x20No\x20session\x20ID\x20available.','GRVmp':function(_0xa0bd75,_0x258da0){return _0xa0bd75(_0x258da0);},'hZiHS':_0x3c19eb(0x14e),'AbmaC':'Restart\x20your\x20OpenCode\x20session\x20after\x20setup.','SSaZL':_0x3c19eb(0x149),'lTTML':function(_0x1bd69d,_0x27163b){return _0x1bd69d!==_0x27163b;},'LnNkD':_0x3c19eb(0x14a),'PwUCi':function(_0x29278b){return _0x29278b();},'bQifT':function(_0x553e1f,_0x1e7bdf){return _0x553e1f(_0x1e7bdf);}},_0x27ae3e=_0x5aa687||process[_0x3c19eb(0x156)]['CLAUDE_SESSION_ID']||'';!_0x27ae3e&&(console[_0x3c19eb(0x14f)](_0x272c84[_0x3c19eb(0x153)]),console['error']('Provide\x20--session-id\x20or\x20ensure\x20CLAUDE_SESSION_ID\x20is\x20set.'),process['exit'](0x1));const _0x31ee06=_0x272c84[_0x3c19eb(0x14c)](Boolean,_0x5aa687),_0x34e0e9=await getToken();if(!_0x34e0e9){const _0xa03957=_0x31ee06?'ranger\x20setup\x20--opencode':_0x272c84['hZiHS'],_0x12b4a1=_0x31ee06?_0x272c84[_0x3c19eb(0x157)]:_0x272c84['SSaZL'];printBlock('#\x20RANGER\x20SETUP\x20REQUIRED\x0a\x0aThe\x20Ranger\x20CLI\x20is\x20not\x20configured.\x20To\x20get\x20started:\x0a\x0a1.\x20Install:\x20`npm\x20install\x20-g\x20@ranger-testing/ranger-cli`\x0a2.\x20Run:\x20`'+_0xa03957+_0x3c19eb(0x158)+_0x12b4a1);return;}try{await update();}catch{}enableSession(_0x27ae3e);const _0xc0a1df=getCurrentBranch(),_0x3085dc=_0xc0a1df&&_0x272c84[_0x3c19eb(0x15b)](_0xc0a1df,'main')&&_0x272c84['lTTML'](_0xc0a1df,_0x272c84['LnNkD'])?'\x0a\x0a**Branch\x20\x27'+_0xc0a1df+_0x3c19eb(0x150):'',_0x3c032f=_0x272c84['PwUCi'](getRangerSkillContent);_0x272c84['bQifT'](printBlock,_0x3c19eb(0x155)+_0x3085dc+'\x0a\x0a**For\x20ANY\x20UI\x20work,\x20you\x20MUST\x20use\x20the\x20/ranger\x20skill.**\x0a\x0a'+_0x3c032f+_0x3c19eb(0x14d));}
1
+ function _0x3d65(_0x7b813a,_0x4a8878){_0x7b813a=_0x7b813a-0x8c;const _0x5e0020=_0x5e00();let _0x3d6531=_0x5e0020[_0x7b813a];return _0x3d6531;}(function(_0x11cc93,_0x734b56){const _0x36185e=_0x3d65,_0x300ac7=_0x11cc93();while(!![]){try{const _0x3b4f6f=parseInt(_0x36185e(0x94))/0x1+-parseInt(_0x36185e(0x9b))/0x2*(parseInt(_0x36185e(0xa5))/0x3)+-parseInt(_0x36185e(0x8c))/0x4+parseInt(_0x36185e(0xa2))/0x5*(-parseInt(_0x36185e(0x8f))/0x6)+-parseInt(_0x36185e(0x92))/0x7+parseInt(_0x36185e(0x99))/0x8+parseInt(_0x36185e(0x97))/0x9;if(_0x3b4f6f===_0x734b56)break;else _0x300ac7['push'](_0x300ac7['shift']());}catch(_0x5485ab){_0x300ac7['push'](_0x300ac7['shift']());}}}(_0x5e00,0x8fa36));import{enableSession,getCurrentBranch}from'../utils/sessionCache.js';import{getToken}from'../utils/keychain.js';import{getRangerSkillContent}from'../utils/skillContent.js';import{printBlock}from'./output.js';import{update}from'../update.js';function _0x5e00(){const _0x250278=['\x27\x20is\x20now\x20enabled**\x20-\x20Ranger\x20will\x20stay\x20active\x20on\x20this\x20branch\x20across\x20sessions.','`\x0a\x0aA\x20browser\x20will\x20open\x20for\x20authentication.\x20A\x20human\x20needs\x20to\x20complete\x20the\x20login.\x0a','#\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`','Provide\x20--session-id\x20or\x20ensure\x20CLAUDE_SESSION_ID\x20is\x20set.','#\x20RANGER\x20ENABLED','25uvutem','ZZRSF','Restart\x20your\x20OpenCode\x20session\x20after\x20setup.','2630433ITbztT','2710516IXTNLH','CLAUDE_SESSION_ID','jrNqR','125742dbFbai','Restart\x20your\x20Claude\x20Code\x20session\x20after\x20setup.','JpBrE','6480194oGyiNu','\x0a\x0a**For\x20ANY\x20UI\x20work,\x20you\x20MUST\x20use\x20the\x20/ranger\x20skill.**\x0a\x0a','21275LJZdNF','master','\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`.','25564176TWKsVx','fgFkw','2492560uWFXDB','main','2CsYwvq','JKGMf'];_0x5e00=function(){return _0x250278;};return _0x5e00();}export async function enable(_0x4005ec){const _0x5e4248=_0x3d65,_0x1ff710={'ZZRSF':function(_0x32c163,_0x208563){return _0x32c163(_0x208563);},'jrNqR':_0x5e4248(0xa4),'JpBrE':_0x5e4248(0x90),'wRLTw':function(_0x4bcdc9){return _0x4bcdc9();},'fgFkw':function(_0x58c76a,_0x17085c){return _0x58c76a(_0x17085c);},'CAnCB':_0x5e4248(0x9a),'HRirH':_0x5e4248(0x95),'JKGMf':function(_0x31fd66,_0x282ad8){return _0x31fd66(_0x282ad8);}},_0x49c9d6=_0x4005ec||process['env'][_0x5e4248(0x8d)]||'';!_0x49c9d6&&(console['error']('Error:\x20No\x20session\x20ID\x20available.'),console['error'](_0x5e4248(0xa0)),process['exit'](0x1));const _0x468d89=_0x1ff710[_0x5e4248(0xa3)](Boolean,_0x4005ec),_0x73f437=await getToken();if(!_0x73f437){const _0x4146ac=_0x468d89?'ranger\x20setup\x20--opencode':'ranger\x20setup',_0xcb1df4=_0x468d89?_0x1ff710[_0x5e4248(0x8e)]:_0x1ff710[_0x5e4248(0x91)];printBlock(_0x5e4248(0x9f)+_0x4146ac+_0x5e4248(0x9e)+_0xcb1df4);return;}try{await _0x1ff710['wRLTw'](update);}catch{}_0x1ff710[_0x5e4248(0x98)](enableSession,_0x49c9d6);const _0x242dda=getCurrentBranch(),_0xa686e0=_0x242dda&&_0x242dda!==_0x1ff710['CAnCB']&&_0x242dda!==_0x1ff710['HRirH']?'\x0a\x0a**Branch\x20\x27'+_0x242dda+_0x5e4248(0x9d):'',_0x2fcffb=getRangerSkillContent();_0x1ff710[_0x5e4248(0x9c)](printBlock,_0x5e4248(0xa1)+_0xa686e0+_0x5e4248(0x93)+_0x2fcffb+_0x5e4248(0x96));}
@@ -1 +1 @@
1
- (function(_0x4f8a8d,_0x5523db){const _0x514812=_0x3dba,_0x8791df=_0x4f8a8d();while(!![]){try{const _0x456917=-parseInt(_0x514812(0xf5))/0x1+parseInt(_0x514812(0xf4))/0x2*(parseInt(_0x514812(0xf7))/0x3)+parseInt(_0x514812(0xec))/0x4*(parseInt(_0x514812(0xf3))/0x5)+parseInt(_0x514812(0xee))/0x6+-parseInt(_0x514812(0xf2))/0x7*(-parseInt(_0x514812(0xed))/0x8)+-parseInt(_0x514812(0xef))/0x9+-parseInt(_0x514812(0xf1))/0xa;if(_0x456917===_0x5523db)break;else _0x8791df['push'](_0x8791df['shift']());}catch(_0x5e8d4e){_0x8791df['push'](_0x8791df['shift']());}}}(_0x2be2,0x8b972));import{printBlock,getEnabledSessionId}from'./output.js';function _0x3dba(_0x2485f5,_0x2cfe04){_0x2485f5=_0x2485f5-0xec;const _0x2be2c1=_0x2be2();let _0x3dbab8=_0x2be2c1[_0x2485f5];return _0x3dbab8;}function _0x2be2(){const _0x4462d8=['4936584AJeGIq','3024270qgOLMB','dlhUY','6071880qNlgpU','16877xLISDP','2495mhdhTY','5686DWGhWp','444424NXhWYZ','===\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===','42oovhNg','1912SAjLvH','2848lXSJJt'];_0x2be2=function(){return _0x4462d8;};return _0x2be2();}export async function exitPlanMode(_0x2deb00){const _0x225775=_0x3dba,_0x104c25={'dlhUY':function(_0x571c03,_0x3ed5f6){return _0x571c03(_0x3ed5f6);}},_0x58633b=await _0x104c25[_0x225775(0xf0)](getEnabledSessionId,_0x2deb00);if(!_0x58633b)return;_0x104c25[_0x225775(0xf0)](printBlock,_0x225775(0xf6));}
1
+ (function(_0x3d34f9,_0x2a1b3e){const _0x45b2d6=_0x8323,_0x50a7ef=_0x3d34f9();while(!![]){try{const _0x42e323=-parseInt(_0x45b2d6(0x1ef))/0x1+-parseInt(_0x45b2d6(0x1f1))/0x2*(-parseInt(_0x45b2d6(0x1ec))/0x3)+-parseInt(_0x45b2d6(0x1eb))/0x4*(-parseInt(_0x45b2d6(0x1ed))/0x5)+-parseInt(_0x45b2d6(0x1f2))/0x6+-parseInt(_0x45b2d6(0x1ee))/0x7*(parseInt(_0x45b2d6(0x1f0))/0x8)+-parseInt(_0x45b2d6(0x1e9))/0x9+parseInt(_0x45b2d6(0x1ea))/0xa;if(_0x42e323===_0x2a1b3e)break;else _0x50a7ef['push'](_0x50a7ef['shift']());}catch(_0x3a8ac8){_0x50a7ef['push'](_0x50a7ef['shift']());}}}(_0x5a50,0x89e73));import{printBlock,getEnabledSessionId}from'./output.js';export async function exitPlanMode(_0x3a4a9a){const _0x578f81=_0x8323,_0x19fc9f=await getEnabledSessionId(_0x3a4a9a);if(!_0x19fc9f)return;printBlock(_0x578f81(0x1f3));}function _0x8323(_0x4999f7,_0xc9902a){_0x4999f7=_0x4999f7-0x1e9;const _0x5a505b=_0x5a50();let _0x83232c=_0x5a505b[_0x4999f7];return _0x83232c;}function _0x5a50(){const _0x1d7f18=['19362660yORLQR','7364uNwqyr','6aHdfjP','1695KIQsDI','841687dZmRqE','152554VtPLnf','48lYfCLo','256472PpryyF','4599150rkUDzi','===\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===','5503149gFrDMB'];_0x5a50=function(){return _0x1d7f18;};return _0x5a50();}
@@ -1 +1 @@
1
- (function(_0x460a67,_0xaf27aa){var _0x7ecac0=_0x3364,_0xb9e5d3=_0x460a67();while(!![]){try{var _0x2a152f=parseInt(_0x7ecac0(0x1d2))/0x1+parseInt(_0x7ecac0(0x1d3))/0x2+-parseInt(_0x7ecac0(0x1cc))/0x3*(-parseInt(_0x7ecac0(0x1ca))/0x4)+parseInt(_0x7ecac0(0x1cd))/0x5*(parseInt(_0x7ecac0(0x1ce))/0x6)+-parseInt(_0x7ecac0(0x1d4))/0x7+-parseInt(_0x7ecac0(0x1cf))/0x8*(-parseInt(_0x7ecac0(0x1d1))/0x9)+-parseInt(_0x7ecac0(0x1d0))/0xa*(parseInt(_0x7ecac0(0x1cb))/0xb);if(_0x2a152f===_0xaf27aa)break;else _0xb9e5d3['push'](_0xb9e5d3['shift']());}catch(_0x4e2a9d){_0xb9e5d3['push'](_0xb9e5d3['shift']());}}}(_0x44e5,0xe8ab8));export{sessionStart}from'./sessionStart.js';export{sessionEnd}from'./sessionEnd.js';export{preCompact}from'./preCompact.js';export{postEdit}from'./postEdit.js';export{planStart}from'./planStart.js';export{planReminder}from'./planReminder.js';export{exitPlanMode}from'./exitPlanMode.js';export{stopHook}from'./stopHook.js';function _0x3364(_0x564120,_0x2c4090){_0x564120=_0x564120-0x1ca;var _0x44e549=_0x44e5();var _0x33648a=_0x44e549[_0x564120];return _0x33648a;}export{enable}from'./enable.js';function _0x44e5(){var _0x204cbf=['440fwMdLu','221217XXRIrA','1270Ptqhzn','38670cawJjX','56XviLgs','1152980xHBcCQ','826749ocJVil','1482782VLkRKr','3508626rbZFko','8440453pNGTot','68BPFYMd'];_0x44e5=function(){return _0x204cbf;};return _0x44e5();}export{disable}from'./disable.js';export{autoPrompt}from'./autoPrompt.js';
1
+ (function(_0xcb0ffa,_0x1b8f03){var _0x2a7d5c=_0x5751,_0x244405=_0xcb0ffa();while(!![]){try{var _0x41e3bd=parseInt(_0x2a7d5c(0xd4))/0x1*(parseInt(_0x2a7d5c(0xd8))/0x2)+parseInt(_0x2a7d5c(0xdf))/0x3+parseInt(_0x2a7d5c(0xd5))/0x4*(parseInt(_0x2a7d5c(0xd6))/0x5)+-parseInt(_0x2a7d5c(0xdc))/0x6*(parseInt(_0x2a7d5c(0xd9))/0x7)+parseInt(_0x2a7d5c(0xd3))/0x8*(-parseInt(_0x2a7d5c(0xdd))/0x9)+-parseInt(_0x2a7d5c(0xda))/0xa*(parseInt(_0x2a7d5c(0xde))/0xb)+-parseInt(_0x2a7d5c(0xdb))/0xc*(-parseInt(_0x2a7d5c(0xd7))/0xd);if(_0x41e3bd===_0x1b8f03)break;else _0x244405['push'](_0x244405['shift']());}catch(_0x1df399){_0x244405['push'](_0x244405['shift']());}}}(_0x3fde,0xda2fb));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 _0x5751(_0x250df9,_0x248cb2){_0x250df9=_0x250df9-0xd3;var _0x3fde32=_0x3fde();var _0x575125=_0x3fde32[_0x250df9];return _0x575125;}export{exitPlanMode}from'./exitPlanMode.js';export{stopHook}from'./stopHook.js';export{enable}from'./enable.js';export{disable}from'./disable.js';function _0x3fde(){var _0x27d67a=['22zZpchO','5082228Ljbhmz','104MeQwAf','5hYjjFM','12RcTgmF','2390460LpjBUl','65swZuEo','632378sllYKM','497zRndYX','4668790UyEcLI','880884VkqAXp','145302oEJqvv','1058868ekKeQv'];_0x3fde=function(){return _0x27d67a;};return _0x3fde();}export{autoPrompt}from'./autoPrompt.js';
@@ -1 +1 @@
1
- (function(_0xc7cce6,_0xcce487){const _0x3469a8=_0x3b9a,_0x160729=_0xc7cce6();while(!![]){try{const _0x5043cb=parseInt(_0x3469a8(0xd5))/0x1+parseInt(_0x3469a8(0xd1))/0x2*(-parseInt(_0x3469a8(0xd7))/0x3)+-parseInt(_0x3469a8(0xd2))/0x4*(parseInt(_0x3469a8(0xcd))/0x5)+-parseInt(_0x3469a8(0xd6))/0x6*(-parseInt(_0x3469a8(0xd8))/0x7)+parseInt(_0x3469a8(0xd0))/0x8+-parseInt(_0x3469a8(0xd9))/0x9*(-parseInt(_0x3469a8(0xd4))/0xa)+-parseInt(_0x3469a8(0xcf))/0xb;if(_0x5043cb===_0xcce487)break;else _0x160729['push'](_0x160729['shift']());}catch(_0x3cefaf){_0x160729['push'](_0x160729['shift']());}}}(_0x443b,0x30d16));import{isSessionEnabled}from'../utils/sessionCache.js';export function printBlock(_0x3bf887){const _0x4c1247=_0x3b9a;console[_0x4c1247(0xd3)](_0x3bf887);}export async function readHookInput(){const _0x5826f9=_0x3b9a;let _0x267f94='';for await(const _0x4478f2 of process[_0x5826f9(0xce)]){_0x267f94+=_0x4478f2;}try{return JSON['parse'](_0x267f94);}catch{return null;}}function _0x3b9a(_0x5d71b8,_0x2cdddf){_0x5d71b8=_0x5d71b8-0xcc;const _0x443b51=_0x443b();let _0x3b9ab6=_0x443b51[_0x5d71b8];return _0x3b9ab6;}export async function getEnabledSessionId(_0x2ceb16){const _0xe45eae=_0x3b9a,_0x387c6a={'woLXj':function(_0x5c5977){return _0x5c5977();}};if(_0x2ceb16)return isSessionEnabled(_0x2ceb16)?_0x2ceb16:null;const _0x5b5625=await _0x387c6a[_0xe45eae(0xcc)](readHookInput),_0x23bf84=_0x5b5625?.['session_id'];if(!_0x23bf84||!isSessionEnabled(_0x23bf84))return null;return _0x23bf84;}function _0x443b(){const _0x4374d1=['log','2982610NiPSWA','171446CJmOQS','1038HyHTSE','3aVJdBj','1519JYdurm','9McUvNN','woLXj','5eLujrO','stdin','1011670piqSTo','1670488pLJqXh','472070REofOx','752384vDluyh'];_0x443b=function(){return _0x4374d1;};return _0x443b();}export async function getEnabledHookContext(_0x430ee0){const _0x1ccb51={'GEBZk':function(_0x13c0f2,_0x283086){return _0x13c0f2(_0x283086);},'aoNxn':function(_0x475094,_0x159367){return _0x475094(_0x159367);}};if(_0x430ee0){if(!_0x1ccb51['GEBZk'](isSessionEnabled,_0x430ee0))return null;return{'sessionId':_0x430ee0,'input':{'session_id':_0x430ee0}};}const _0x55ebe4=await readHookInput(),_0x110c43=_0x55ebe4?.['session_id'];if(!_0x110c43||!_0x1ccb51['aoNxn'](isSessionEnabled,_0x110c43))return null;return{'sessionId':_0x110c43,'input':_0x55ebe4};}
1
+ (function(_0x10c123,_0x25627b){const _0x4404dd=_0x45fb,_0x339155=_0x10c123();while(!![]){try{const _0x3c57d0=parseInt(_0x4404dd(0x171))/0x1+-parseInt(_0x4404dd(0x170))/0x2+parseInt(_0x4404dd(0x16c))/0x3*(-parseInt(_0x4404dd(0x16f))/0x4)+-parseInt(_0x4404dd(0x173))/0x5*(-parseInt(_0x4404dd(0x177))/0x6)+-parseInt(_0x4404dd(0x16d))/0x7+parseInt(_0x4404dd(0x172))/0x8+parseInt(_0x4404dd(0x176))/0x9;if(_0x3c57d0===_0x25627b)break;else _0x339155['push'](_0x339155['shift']());}catch(_0x52480e){_0x339155['push'](_0x339155['shift']());}}}(_0x4f1b,0x7c932));import{isSessionEnabled}from'../utils/sessionCache.js';function _0x4f1b(){const _0x5678e0=['3494202RXHGDZ','parse','xMTHV','stdin','aSUYK','8517jOCrqo','7072695xumTjO','log','176VMfdmO','1860196rFoTaP','262159UNtvxG','6923304adFeAe','5pwLgqz','session_id','IbetG','7791462lFAKXx'];_0x4f1b=function(){return _0x5678e0;};return _0x4f1b();}export function printBlock(_0x3419f4){const _0x30bac7=_0x45fb;console[_0x30bac7(0x16e)](_0x3419f4);}function _0x45fb(_0x4b8404,_0x53e4c1){_0x4b8404=_0x4b8404-0x16b;const _0x4f1be4=_0x4f1b();let _0x45fbab=_0x4f1be4[_0x4b8404];return _0x45fbab;}export async function readHookInput(){const _0x5a6d6b=_0x45fb;let _0x28e4d7='';for await(const _0x2a53fd of process[_0x5a6d6b(0x17a)]){_0x28e4d7+=_0x2a53fd;}try{return JSON[_0x5a6d6b(0x178)](_0x28e4d7);}catch{return null;}}export async function getEnabledSessionId(_0x16eccf){const _0x293284=_0x45fb,_0x423c14={'IbetG':function(_0x174106,_0x344db6){return _0x174106(_0x344db6);},'xMTHV':function(_0x5d5e29){return _0x5d5e29();}};if(_0x16eccf)return _0x423c14[_0x293284(0x175)](isSessionEnabled,_0x16eccf)?_0x16eccf:null;const _0x10e9f6=await _0x423c14[_0x293284(0x179)](readHookInput),_0x3d3c8a=_0x10e9f6?.[_0x293284(0x174)];if(!_0x3d3c8a||!_0x423c14[_0x293284(0x175)](isSessionEnabled,_0x3d3c8a))return null;return _0x3d3c8a;}export async function getEnabledHookContext(_0x3d5e89){const _0x2f83eb=_0x45fb,_0x1c5615={'aSUYK':function(_0x1d6410,_0x27ec84){return _0x1d6410(_0x27ec84);}};if(_0x3d5e89){if(!isSessionEnabled(_0x3d5e89))return null;return{'sessionId':_0x3d5e89,'input':{'session_id':_0x3d5e89}};}const _0x1af6d9=await readHookInput(),_0x2e44d6=_0x1af6d9?.['session_id'];if(!_0x2e44d6||!_0x1c5615[_0x2f83eb(0x16b)](isSessionEnabled,_0x2e44d6))return null;return{'sessionId':_0x2e44d6,'input':_0x1af6d9};}
@@ -1 +1 @@
1
- (function(_0x2eb9d5,_0x28ddc0){const _0x1d6d56=_0xdbbf,_0x187fdc=_0x2eb9d5();while(!![]){try{const _0x21b625=parseInt(_0x1d6d56(0x107))/0x1*(-parseInt(_0x1d6d56(0x111))/0x2)+-parseInt(_0x1d6d56(0x10b))/0x3+-parseInt(_0x1d6d56(0x110))/0x4*(parseInt(_0x1d6d56(0x10c))/0x5)+parseInt(_0x1d6d56(0x103))/0x6+parseInt(_0x1d6d56(0x10e))/0x7+parseInt(_0x1d6d56(0x109))/0x8*(-parseInt(_0x1d6d56(0x10f))/0x9)+-parseInt(_0x1d6d56(0x106))/0xa*(-parseInt(_0x1d6d56(0x108))/0xb);if(_0x21b625===_0x28ddc0)break;else _0x187fdc['push'](_0x187fdc['shift']());}catch(_0x1affa8){_0x187fdc['push'](_0x187fdc['shift']());}}}(_0x5782,0x4bf74));import{printBlock,getEnabledHookContext}from'./output.js';function _0xdbbf(_0x28f7a7,_0x5a240e){_0x28f7a7=_0x28f7a7-0x103;const _0x578207=_0x5782();let _0xdbbfb=_0x578207[_0x28f7a7];return _0xdbbfb;}function _0x5782(){const _0x1b5f06=['VZGTB','2441131BNdrkD','2781vSCdJm','1089028ipdgZw','4CTAixI','1555650JlJhtW','permission_mode','plan','11309470XKtnzq','66878wOOOBp','11pFfSOA','11592YijJAp','sessionId','905364ASPVql','10iNPbXy'];_0x5782=function(){return _0x1b5f06;};return _0x5782();}import{shouldShowPlanReminder}from'../utils/sessionCache.js';export async function planReminder(_0x30e7cd){const _0x17915f=_0xdbbf,_0x485b25={'VZGTB':function(_0x1892b1,_0x461e87){return _0x1892b1!==_0x461e87;}},_0x166163=await getEnabledHookContext(_0x30e7cd);if(!_0x166163)return;if(_0x485b25[_0x17915f(0x10d)](_0x166163['input'][_0x17915f(0x104)],_0x17915f(0x105)))return;if(!shouldShowPlanReminder(_0x166163[_0x17915f(0x10a)]))return;printBlock('===\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===');}
1
+ (function(_0x757853,_0x211e2e){const _0x11cee0=_0xf27d,_0x17fb28=_0x757853();while(!![]){try{const _0x2d66e2=parseInt(_0x11cee0(0xe8))/0x1+parseInt(_0x11cee0(0xde))/0x2*(-parseInt(_0x11cee0(0xe2))/0x3)+-parseInt(_0x11cee0(0xe3))/0x4+parseInt(_0x11cee0(0xe9))/0x5*(parseInt(_0x11cee0(0xdd))/0x6)+-parseInt(_0x11cee0(0xe5))/0x7+-parseInt(_0x11cee0(0xdf))/0x8*(parseInt(_0x11cee0(0xe4))/0x9)+parseInt(_0x11cee0(0xe1))/0xa*(parseInt(_0x11cee0(0xe6))/0xb);if(_0x2d66e2===_0x211e2e)break;else _0x17fb28['push'](_0x17fb28['shift']());}catch(_0x2618c8){_0x17fb28['push'](_0x17fb28['shift']());}}}(_0xdba1,0x4dcc8));function _0xdba1(){const _0x526124=['10ExTgwV','6KvibBl','2459036QGQPES','1032435mJyCyv','1865927qCwtaM','15056426ZSCtci','plan','478902YuGNFK','25Htsjub','iyFDC','zLwtu','650358LHVdsS','616074FfiREM','40LdMNlM','nVMDS'];_0xdba1=function(){return _0x526124;};return _0xdba1();}import{printBlock,getEnabledHookContext}from'./output.js';function _0xf27d(_0x38c2b4,_0x392b99){_0x38c2b4=_0x38c2b4-0xdb;const _0xdba17f=_0xdba1();let _0xf27d3a=_0xdba17f[_0x38c2b4];return _0xf27d3a;}import{shouldShowPlanReminder}from'../utils/sessionCache.js';export async function planReminder(_0x24ca15){const _0x53cab8=_0xf27d,_0x1bdf48={'iyFDC':function(_0x2a7520,_0x223b3){return _0x2a7520!==_0x223b3;},'zLwtu':_0x53cab8(0xe7),'nVMDS':function(_0x1d84f6,_0x470120){return _0x1d84f6(_0x470120);}},_0x246707=await getEnabledHookContext(_0x24ca15);if(!_0x246707)return;if(_0x1bdf48[_0x53cab8(0xdb)](_0x246707['input']['permission_mode'],_0x1bdf48[_0x53cab8(0xdc)]))return;if(!_0x1bdf48[_0x53cab8(0xe0)](shouldShowPlanReminder,_0x246707['sessionId']))return;printBlock('===\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===');}
@@ -1 +1 @@
1
- function _0x5341(){const _0x5cb725=['219838fUXYEy','864XPtSdb','36318EvEpZw','30GjufMr','9320hjngPJ','1392752VyIOFa','dJmSz','cmbPp','2565021gwuVlO','805275holcfE','10927971JHbTGG','1043LjWHLH','===\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==='];_0x5341=function(){return _0x5cb725;};return _0x5341();}function _0x53ee(_0x4323a1,_0x49b671){_0x4323a1=_0x4323a1-0xe7;const _0x534160=_0x5341();let _0x53eec9=_0x534160[_0x4323a1];return _0x53eec9;}(function(_0x4a6d14,_0x56d287){const _0x98cabb=_0x53ee,_0x4eed1c=_0x4a6d14();while(!![]){try{const _0x4d5982=-parseInt(_0x98cabb(0xe7))/0x1+parseInt(_0x98cabb(0xeb))/0x2+-parseInt(_0x98cabb(0xf3))/0x3+-parseInt(_0x98cabb(0xec))/0x4*(parseInt(_0x98cabb(0xef))/0x5)+parseInt(_0x98cabb(0xed))/0x6*(-parseInt(_0x98cabb(0xe9))/0x7)+-parseInt(_0x98cabb(0xf0))/0x8+-parseInt(_0x98cabb(0xe8))/0x9*(-parseInt(_0x98cabb(0xee))/0xa);if(_0x4d5982===_0x56d287)break;else _0x4eed1c['push'](_0x4eed1c['shift']());}catch(_0x54d261){_0x4eed1c['push'](_0x4eed1c['shift']());}}}(_0x5341,0x95d2f));import{printBlock,getEnabledSessionId}from'./output.js';export async function planStart(_0x575bf4){const _0x2c447d=_0x53ee,_0x1b38d5={'cmbPp':function(_0x37731a,_0x2c47a6){return _0x37731a(_0x2c47a6);},'dJmSz':function(_0x54216c,_0x1dc869){return _0x54216c(_0x1dc869);}},_0x44cc75=await _0x1b38d5[_0x2c447d(0xf2)](getEnabledSessionId,_0x575bf4);if(!_0x44cc75)return;_0x1b38d5[_0x2c447d(0xf1)](printBlock,_0x2c447d(0xea));}
1
+ (function(_0x31f1f4,_0x8eca9c){const _0xf25a4c=_0x4d5b,_0x79655=_0x31f1f4();while(!![]){try{const _0x2fddb8=-parseInt(_0xf25a4c(0x15f))/0x1+-parseInt(_0xf25a4c(0x15d))/0x2+parseInt(_0xf25a4c(0x165))/0x3+-parseInt(_0xf25a4c(0x162))/0x4+parseInt(_0xf25a4c(0x163))/0x5+-parseInt(_0xf25a4c(0x164))/0x6*(parseInt(_0xf25a4c(0x15b))/0x7)+-parseInt(_0xf25a4c(0x15c))/0x8*(-parseInt(_0xf25a4c(0x15e))/0x9);if(_0x2fddb8===_0x8eca9c)break;else _0x79655['push'](_0x79655['shift']());}catch(_0x1ab032){_0x79655['push'](_0x79655['shift']());}}}(_0x1527,0x6bc52));import{printBlock,getEnabledSessionId}from'./output.js';function _0x4d5b(_0x56ebb1,_0x18ddac){_0x56ebb1=_0x56ebb1-0x15b;const _0x1527fb=_0x1527();let _0x4d5bf8=_0x1527fb[_0x56ebb1];return _0x4d5bf8;}function _0x1527(){const _0x417366=['232VMrBla','1082808SCJCNd','447570OhnFgZ','323341NWNiAK','ibyuI','===\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===','1230680zvedun','2710410IHczBJ','81714aEzGMT','1135902oQvojI','385HqcaUl'];_0x1527=function(){return _0x417366;};return _0x1527();}export async function planStart(_0x2042a8){const _0x1ac944=_0x4d5b,_0x54eb40={'ibyuI':function(_0x32f14f,_0x1ec10a){return _0x32f14f(_0x1ec10a);}},_0x270ecc=await _0x54eb40[_0x1ac944(0x160)](getEnabledSessionId,_0x2042a8);if(!_0x270ecc)return;printBlock(_0x1ac944(0x161));}
@@ -1 +1 @@
1
- (function(_0x4257b0,_0x325e37){const _0x381d12=_0x3b3e,_0x61d175=_0x4257b0();while(!![]){try{const _0x357789=parseInt(_0x381d12(0x117))/0x1*(-parseInt(_0x381d12(0x114))/0x2)+parseInt(_0x381d12(0x10f))/0x3+-parseInt(_0x381d12(0x10d))/0x4*(parseInt(_0x381d12(0x110))/0x5)+-parseInt(_0x381d12(0x10c))/0x6*(parseInt(_0x381d12(0x116))/0x7)+parseInt(_0x381d12(0x113))/0x8*(-parseInt(_0x381d12(0x111))/0x9)+-parseInt(_0x381d12(0x10e))/0xa*(parseInt(_0x381d12(0x118))/0xb)+parseInt(_0x381d12(0x10b))/0xc;if(_0x357789===_0x325e37)break;else _0x61d175['push'](_0x61d175['shift']());}catch(_0x3c0216){_0x61d175['push'](_0x61d175['shift']());}}}(_0x5591,0xeb5c5));import{getSessionEntry,updateBranchTracking}from'../utils/sessionCache.js';function _0x3b3e(_0x36d387,_0x8e6828){_0x36d387=_0x36d387-0x10b;const _0x5591f3=_0x5591();let _0x3b3e18=_0x5591f3[_0x36d387];return _0x3b3e18;}import{getToken}from'../utils/keychain.js';import{getEnabledSessionId}from'./output.js';function _0x5591(){const _0x3a02a4=['64360uXvkKC','66910sKhxkk','PostToolUse','5207503aMDeGE','2xfxzMK','11klzrzG','64564176vHPLCH','12cPbcrT','3583864xwacwV','4169910pqIyvo','1831335TuhMpi','10hbmOkL','1413JaHSzY','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).'];_0x5591=function(){return _0x3a02a4;};return _0x5591();}export async function postEdit(_0x2521f2){const _0x2e7fe2=_0x3b3e,_0x2b581a={'FlfeK':function(_0x486154,_0x38832f){return _0x486154(_0x38832f);},'nEdAE':_0x2e7fe2(0x115)},_0x2d55a4=await _0x2b581a['FlfeK'](getEnabledSessionId,_0x2521f2);if(!_0x2d55a4)return;updateBranchTracking(_0x2d55a4);const _0xff8cb=await getToken();if(!_0xff8cb)return;const _0x467ee4=getSessionEntry(_0x2d55a4);if(_0x467ee4){const _0x181c69={'hookSpecificOutput':{'hookEventName':_0x2b581a['nEdAE'],'additionalContext':_0x2e7fe2(0x112)}};console['log'](JSON['stringify'](_0x181c69));return;}const _0xccaa65={'hookSpecificOutput':{'hookEventName':_0x2e7fe2(0x115),'additionalContext':'RANGER:\x20If\x20this\x20is\x20for\x20a\x20UI\x20feature,\x20you\x20MUST\x20use\x20/ranger\x20to\x20either\x20create\x20a\x20new\x20feature\x20review\x20or\x20resume\x20an\x20existing\x20one.'}};console['log'](JSON['stringify'](_0xccaa65));}
1
+ function _0x5aa8(){const _0x256c0f=['24754Bcvixc','15VIXrch','1270245omfeTo','1152DnxrAB','17872tONyll','439373sMajmX','2589VnMhdv','171RDiwWR','9781080gmaAiy','stringify','5784DzCwXD','567348Wrtckt','70DZAdJI','PostToolUse'];_0x5aa8=function(){return _0x256c0f;};return _0x5aa8();}(function(_0xf1cf5f,_0x5dc344){const _0x39b6e3=_0x2a8e,_0x57b36e=_0xf1cf5f();while(!![]){try{const _0x50c8eb=-parseInt(_0x39b6e3(0x1d7))/0x1*(parseInt(_0x39b6e3(0x1d6))/0x2)+parseInt(_0x39b6e3(0x1dc))/0x3*(-parseInt(_0x39b6e3(0x1d2))/0x4)+parseInt(_0x39b6e3(0x1d8))/0x5+-parseInt(_0x39b6e3(0x1d3))/0x6*(parseInt(_0x39b6e3(0x1d4))/0x7)+parseInt(_0x39b6e3(0x1da))/0x8*(parseInt(_0x39b6e3(0x1dd))/0x9)+-parseInt(_0x39b6e3(0x1de))/0xa+parseInt(_0x39b6e3(0x1db))/0xb*(parseInt(_0x39b6e3(0x1d9))/0xc);if(_0x50c8eb===_0x5dc344)break;else _0x57b36e['push'](_0x57b36e['shift']());}catch(_0x1170e8){_0x57b36e['push'](_0x57b36e['shift']());}}}(_0x5aa8,0xbce96));import{getSessionEntry,updateBranchTracking}from'../utils/sessionCache.js';import{getToken}from'../utils/keychain.js';import{getEnabledSessionId}from'./output.js';function _0x2a8e(_0x68a65e,_0x203671){_0x68a65e=_0x68a65e-0x1d2;const _0x5aa8a6=_0x5aa8();let _0x2a8ec7=_0x5aa8a6[_0x68a65e];return _0x2a8ec7;}export async function postEdit(_0x49cdf2){const _0xa57ed8=_0x2a8e,_0x44cf68={'siryF':function(_0x4298bf,_0x31390f){return _0x4298bf(_0x31390f);}},_0x23d4ca=await _0x44cf68['siryF'](getEnabledSessionId,_0x49cdf2);if(!_0x23d4ca)return;updateBranchTracking(_0x23d4ca);const _0x2b5818=await getToken();if(!_0x2b5818)return;const _0x271375=_0x44cf68['siryF'](getSessionEntry,_0x23d4ca);if(_0x271375){const _0x1d1257={'hookSpecificOutput':{'hookEventName':'PostToolUse','additionalContext':'RANGER:\x20If\x20this\x20change\x20expands\x20the\x20scope\x20of\x20the\x20active\x20feature\x20review,\x20you\x20may\x20need\x20to\x20add\x20a\x20scenario.\x20See\x20Workflow\x201\x20in\x20/ranger.\x20If\x20you\x20decide\x20to\x20add\x20a\x20scenario,\x20you\x20MUST\x20read\x20Workflow\x201\x20IN\x20DETAIL\x20first.\x20Remember:\x20when\x20you\x20finish\x20your\x20work,\x20your\x20final\x20message\x20to\x20the\x20user\x20must\x20direct\x20them\x20to\x20the\x20Ranger\x20feature\x20review\x20dashboard\x20to\x20review\x20(e.g.\x20\x22Go\x20to\x20the\x20Ranger\x20feature\x20dashboard\x20to\x20review:\x20https://dashboard.ranger.net/features/{feature_id}\x22).'}};console['log'](JSON[_0xa57ed8(0x1df)](_0x1d1257));return;}const _0x5a3880={'hookSpecificOutput':{'hookEventName':_0xa57ed8(0x1d5),'additionalContext':'RANGER:\x20If\x20this\x20is\x20for\x20a\x20UI\x20feature,\x20you\x20MUST\x20use\x20/ranger\x20to\x20either\x20create\x20a\x20new\x20feature\x20review\x20or\x20resume\x20an\x20existing\x20one.'}};console['log'](JSON['stringify'](_0x5a3880));}
@@ -1 +1 @@
1
- (function(_0x35c59c,_0x3eb6ef){const _0x5054a9=_0xbdaa,_0x3d63fc=_0x35c59c();while(!![]){try{const _0x155ad3=-parseInt(_0x5054a9(0xfa))/0x1+parseInt(_0x5054a9(0xfd))/0x2+-parseInt(_0x5054a9(0xff))/0x3*(parseInt(_0x5054a9(0x101))/0x4)+parseInt(_0x5054a9(0x100))/0x5+parseInt(_0x5054a9(0xf8))/0x6*(parseInt(_0x5054a9(0xf7))/0x7)+-parseInt(_0x5054a9(0xf9))/0x8+-parseInt(_0x5054a9(0xfb))/0x9;if(_0x155ad3===_0x3eb6ef)break;else _0x3d63fc['push'](_0x3d63fc['shift']());}catch(_0x44996a){_0x3d63fc['push'](_0x3d63fc['shift']());}}}(_0x2077,0x475a5));function _0xbdaa(_0x4f30b8,_0x5b9f44){_0x4f30b8=_0x4f30b8-0xf7;const _0x2077e3=_0x2077();let _0xbdaa29=_0x2077e3[_0x4f30b8];return _0xbdaa29;}import{getToken}from'../utils/keychain.js';import{printBlock,getEnabledSessionId}from'./output.js';function _0x2077(){const _0x83634f=['6151644BsDJTB','===\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`.','1078514dWvJPl','zJMMA','3KYvqnQ','2197010SNeray','1036004ojqezP','YCzko','1442toSuuc','13644EECPky','342920zioaSB','169460rJNuAB'];_0x2077=function(){return _0x83634f;};return _0x2077();}export async function preCompact(_0x150dee){const _0x336656=_0xbdaa,_0x402eaa={'YCzko':function(_0x5ed0af){return _0x5ed0af();},'zJMMA':function(_0x1b58cb,_0xe9a730){return _0x1b58cb(_0xe9a730);}},_0x454acd=await getEnabledSessionId(_0x150dee);if(!_0x454acd)return;try{const _0x2d8917=await _0x402eaa[_0x336656(0x102)](getToken);if(!_0x2d8917)return;_0x402eaa[_0x336656(0xfe)](printBlock,_0x336656(0xfc));}catch{}}
1
+ function _0x5d15(_0x3e8c67,_0x4edebd){_0x3e8c67=_0x3e8c67-0x1cb;const _0x2ff871=_0x2ff8();let _0x5d15f8=_0x2ff871[_0x3e8c67];return _0x5d15f8;}function _0x2ff8(){const _0x44f8aa=['319135ZuUbfU','751932sfKfrM','20FKjACn','3oVMVGQ','1249068vYpRko','10iNZcfN','yilOe','10056805kihZwB','2205044ufvSGp','1210958LRHMvL','230290UKKGBR','48reaiwJ'];_0x2ff8=function(){return _0x44f8aa;};return _0x2ff8();}(function(_0x58f677,_0x4b3cdd){const _0xcb6fec=_0x5d15,_0x3bbc9e=_0x58f677();while(!![]){try{const _0x23634b=-parseInt(_0xcb6fec(0x1d1))/0x1+parseInt(_0xcb6fec(0x1cf))/0x2*(-parseInt(_0xcb6fec(0x1d6))/0x3)+-parseInt(_0xcb6fec(0x1d5))/0x4*(parseInt(_0xcb6fec(0x1d3))/0x5)+parseInt(_0xcb6fec(0x1cb))/0x6+-parseInt(_0xcb6fec(0x1d0))/0x7*(-parseInt(_0xcb6fec(0x1d2))/0x8)+parseInt(_0xcb6fec(0x1d4))/0x9+-parseInt(_0xcb6fec(0x1cc))/0xa*(-parseInt(_0xcb6fec(0x1ce))/0xb);if(_0x23634b===_0x4b3cdd)break;else _0x3bbc9e['push'](_0x3bbc9e['shift']());}catch(_0x316235){_0x3bbc9e['push'](_0x3bbc9e['shift']());}}}(_0x2ff8,0x9087e));import{getToken}from'../utils/keychain.js';import{printBlock,getEnabledSessionId}from'./output.js';export async function preCompact(_0x63402){const _0x35c371=_0x5d15,_0x2fdd72={'yilOe':function(_0x522773,_0x412b30){return _0x522773(_0x412b30);},'QtlaL':function(_0x27a25a){return _0x27a25a();}},_0x1bf6ec=await _0x2fdd72[_0x35c371(0x1cd)](getEnabledSessionId,_0x63402);if(!_0x1bf6ec)return;try{const _0xa24ed1=await _0x2fdd72['QtlaL'](getToken);if(!_0xa24ed1)return;printBlock('===\x20RANGER:\x20PRESERVE\x20IN\x20COMPACTION\x20===\x0a\x0aIf\x20you\x20created\x20a\x20plan\x20with\x20a\x20**Ranger\x20Feature\x20Review\x20Specification**,\x20you\x20MUST\x20preserve\x20it\x20in\x20the\x20compaction\x20summary.\x0a\x0aThe\x20specification\x20contains\x20scenarios\x20that\x20will\x20be\x20used\x20with\x20`ranger\x20create`.');}catch{}}
@@ -1 +1 @@
1
- (function(_0x6a2cdb,_0x3b9b61){const _0x53262b=_0x570a,_0x2ea4b6=_0x6a2cdb();while(!![]){try{const _0x5d3311=parseInt(_0x53262b(0x105))/0x1+parseInt(_0x53262b(0x109))/0x2*(parseInt(_0x53262b(0x106))/0x3)+-parseInt(_0x53262b(0x103))/0x4*(parseInt(_0x53262b(0x108))/0x5)+-parseInt(_0x53262b(0x10a))/0x6+parseInt(_0x53262b(0x10c))/0x7+-parseInt(_0x53262b(0x104))/0x8+-parseInt(_0x53262b(0x10b))/0x9;if(_0x5d3311===_0x3b9b61)break;else _0x2ea4b6['push'](_0x2ea4b6['shift']());}catch(_0x104def){_0x2ea4b6['push'](_0x2ea4b6['shift']());}}}(_0x5581,0xbd630));import{recordEnabledSessionCleared}from'../utils/sessionCache.js';function _0x570a(_0x262477,_0x333ecf){_0x262477=_0x262477-0x103;const _0x558122=_0x5581();let _0x570a4f=_0x558122[_0x262477];return _0x570a4f;}import{readHookInput}from'./output.js';function _0x5581(){const _0x30fb23=['3jGyqjQ','QwICi','5879515pVtXBt','2936812slReQv','4466418vUzujf','7327080BQYnlu','7125293FePPIW','4ZyVpwE','1261152sWwhNr','1181493gGjMZf'];_0x5581=function(){return _0x30fb23;};return _0x5581();}export async function sessionEnd(_0x4ee5b5){const _0x1425f1=_0x570a,_0x3fd0bf={'QwICi':function(_0x1b4818,_0x577bf2){return _0x1b4818===_0x577bf2;}};let _0x291c9c=_0x4ee5b5,_0x486f82;if(!_0x4ee5b5){const _0x491beb=await readHookInput();_0x291c9c=_0x491beb?.['session_id'],_0x486f82=_0x491beb?.['reason'];}if(!_0x291c9c)return;_0x3fd0bf[_0x1425f1(0x107)](_0x486f82,'clear')&&recordEnabledSessionCleared(_0x291c9c);}
1
+ function _0x46fd(_0x1dc3d2,_0x5236be){_0x1dc3d2=_0x1dc3d2-0x1af;const _0x3e1ab0=_0x3e1a();let _0x46fdd2=_0x3e1ab0[_0x1dc3d2];return _0x46fdd2;}(function(_0xdd4129,_0x5fdc14){const _0x4ff65c=_0x46fd,_0xaf651b=_0xdd4129();while(!![]){try{const _0x19d4aa=-parseInt(_0x4ff65c(0x1b5))/0x1+parseInt(_0x4ff65c(0x1b2))/0x2*(parseInt(_0x4ff65c(0x1b9))/0x3)+parseInt(_0x4ff65c(0x1b8))/0x4+-parseInt(_0x4ff65c(0x1b3))/0x5+parseInt(_0x4ff65c(0x1b6))/0x6*(parseInt(_0x4ff65c(0x1b4))/0x7)+parseInt(_0x4ff65c(0x1b0))/0x8*(-parseInt(_0x4ff65c(0x1b1))/0x9)+parseInt(_0x4ff65c(0x1af))/0xa;if(_0x19d4aa===_0x5fdc14)break;else _0xaf651b['push'](_0xaf651b['shift']());}catch(_0x5af5f9){_0xaf651b['push'](_0xaf651b['shift']());}}}(_0x3e1a,0x32874));import{recordEnabledSessionCleared}from'../utils/sessionCache.js';import{readHookInput}from'./output.js';function _0x3e1a(){const _0x2f2afe=['21lqGPgv','272565zorsZr','304908JbShhQ','session_id','1303476TUeHqT','93303sMIgPa','3159490MtEAnX','44328Fefmnt','351wtLBjd','2wsrzSx','648725TVoIBV'];_0x3e1a=function(){return _0x2f2afe;};return _0x3e1a();}export async function sessionEnd(_0x254711){const _0x124713=_0x46fd,_0x488df1={'ABOir':function(_0x319975){return _0x319975();},'RvUHo':'clear'};let _0x3aa324=_0x254711,_0x11b391;if(!_0x254711){const _0x22b6f7=await _0x488df1['ABOir'](readHookInput);_0x3aa324=_0x22b6f7?.[_0x124713(0x1b7)],_0x11b391=_0x22b6f7?.['reason'];}if(!_0x3aa324)return;_0x11b391===_0x488df1['RvUHo']&&recordEnabledSessionCleared(_0x3aa324);}
@@ -1 +1 @@
1
- (function(_0x17323c,_0x5abfb6){const _0xbaf116=_0x4cd1,_0x4dac08=_0x17323c();while(!![]){try{const _0x1e13fe=-parseInt(_0xbaf116(0x194))/0x1+-parseInt(_0xbaf116(0x191))/0x2*(-parseInt(_0xbaf116(0x18c))/0x3)+-parseInt(_0xbaf116(0x197))/0x4+parseInt(_0xbaf116(0x196))/0x5+-parseInt(_0xbaf116(0x188))/0x6*(parseInt(_0xbaf116(0x18d))/0x7)+parseInt(_0xbaf116(0x19a))/0x8*(-parseInt(_0xbaf116(0x193))/0x9)+parseInt(_0xbaf116(0x186))/0xa;if(_0x1e13fe===_0x5abfb6)break;else _0x4dac08['push'](_0x4dac08['shift']());}catch(_0x566213){_0x4dac08['push'](_0x4dac08['shift']());}}}(_0x2ce9,0x242b1));function _0x4cd1(_0x5715c9,_0x30dc41){_0x5715c9=_0x5715c9-0x186;const _0x2ce926=_0x2ce9();let _0x4cd17f=_0x2ce926[_0x5715c9];return _0x4cd17f;}import{appendFile}from'fs/promises';import{initBranchTracking,shouldAutoEnableAfterClear,autoEnableAfterClear,isSessionEnabled,getCurrentBranch}from'../utils/sessionCache.js';function _0x2ce9(){const _0x226b08=['44146OCofVu','kMlqW','817803zmPdCs','95711IVCati','SessionStart','297735GglrZK','874540zMVmNi','trackCommandStart','success','24xtkgPC','5901420vpubXk','\x20(Branch:\x20','811962bluHIV','master','stdin','xOocT','30FHpGSN','7KQVFdE','HyzPI','trackCommandEnd','session_id'];_0x2ce9=function(){return _0x226b08;};return _0x2ce9();}import{createTelemetryCollector}from'../utils/telemetry.js';const RANGER_AUTO_ENABLED_PROMPT='=================================================================\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20🚨\x20RANGER\x20IS\x20ACTIVE\x20🚨\x0a=================================================================\x0a\x0aThis\x20session\x20has\x20Ranger\x20ENABLED.\x20Before\x20doing\x20ANYTHING\x20else:\x0a\x0a1.\x20**READ\x20the\x20/ranger\x20skill\x20FIRST**\x20-\x20Run\x20the\x20skill\x20to\x20understand\x20the\x20required\x20workflow\x20for\x20UI\x20features\x0a\x0a2.\x20**Check\x20for\x20existing\x20feature\x20reviews**\x20-\x20Run\x20`ranger\x20list`\x20to\x20see\x20if\x20there\x27s\x20an\x20in-progress\x20feature\x20review\x20to\x20resume\x0a\x0a3.\x20**For\x20ANY\x20UI\x20work**:\x20You\x20MUST\x20either:\x0a\x20\x20\x20-\x20Resume\x20an\x20existing\x20feature\x20review:\x20`ranger\x20resume\x20<id>`\x0a\x20\x20\x20-\x20Create\x20a\x20new\x20feature\x20review:\x20`ranger\x20create\x20\x22<name>\x22\x20-d\x20\x22<desc>\x22\x20-c\x20\x22<scenario>\x22`\x0a\x0a4.\x20**If\x20resuming\x20a\x20feature\x20review\x20with\x20reviewer\x20comments**:\x20Run\x20`ranger\x20get-review`\x20to\x20see\x20what\x20reviewers\x20want\x20fixed\x20before\x20making\x20code\x20changes\x0a\x0a=================================================================';export async function sessionStart(_0x2e55b2){const _0x4a9731=_0x4cd1,_0x50f868={'aXEOV':function(_0x373e15,_0x25231b){return _0x373e15||_0x25231b;},'XJUAu':_0x4a9731(0x190),'xOocT':'source','hkzqc':function(_0x20fd1,_0x29464c,_0x58437e){return _0x20fd1(_0x29464c,_0x58437e);},'EqWQx':function(_0x9c5853,_0x3c72d2){return _0x9c5853(_0x3c72d2);},'HyzPI':_0x4a9731(0x199),'rXsAd':'main','kMlqW':_0x4a9731(0x195)};let _0x3d044e=_0x50f868['aXEOV'](_0x2e55b2,''),_0x312403;if(!_0x2e55b2){let _0x2aac4e='';for await(const _0x488fdf of process[_0x4a9731(0x18a)]){_0x2aac4e+=_0x488fdf;}try{const _0x22a783=JSON['parse'](_0x2aac4e);_0x3d044e=_0x22a783[_0x50f868['XJUAu']]||'',_0x312403=_0x22a783[_0x50f868[_0x4a9731(0x18b)]];}catch{}const _0x579f67=process['env']['CLAUDE_ENV_FILE'];if(_0x579f67&&_0x3d044e)try{await _0x50f868['hkzqc'](appendFile,_0x579f67,'export\x20CLAUDE_SESSION_ID=\x22'+_0x3d044e+'\x22\x0a');}catch{}}if(_0x3d044e){_0x50f868['EqWQx'](shouldAutoEnableAfterClear,_0x312403)&&autoEnableAfterClear(_0x3d044e);_0x50f868['EqWQx'](initBranchTracking,_0x3d044e);const _0xc49d0f=isSessionEnabled(_0x3d044e);try{const _0x3d620f=createTelemetryCollector('hook:session-start');await _0x3d620f[_0x4a9731(0x198)]({'sessionId':_0x3d044e,'hooksEnabled':_0xc49d0f}),await _0x3d620f[_0x4a9731(0x18f)](_0x50f868[_0x4a9731(0x18e)]);}catch{}if(_0xc49d0f){const _0x592fea=getCurrentBranch(),_0x35e4dd=_0x592fea&&_0x592fea!==_0x50f868['rXsAd']&&_0x592fea!==_0x4a9731(0x189)?_0x4a9731(0x187)+_0x592fea+')':'',_0x4c0047={'hookSpecificOutput':{'hookEventName':_0x50f868[_0x4a9731(0x192)],'additionalContext':RANGER_AUTO_ENABLED_PROMPT+_0x35e4dd}};console['log'](JSON['stringify'](_0x4c0047));}}}
1
+ const _0x203acb=_0x357d;(function(_0x5a29cf,_0x51d88b){const _0x11e510=_0x357d,_0x1a9c90=_0x5a29cf();while(!![]){try{const _0x1ba9ce=parseInt(_0x11e510(0xd8))/0x1*(-parseInt(_0x11e510(0xcd))/0x2)+parseInt(_0x11e510(0xce))/0x3*(-parseInt(_0x11e510(0xd0))/0x4)+-parseInt(_0x11e510(0xcc))/0x5+parseInt(_0x11e510(0xd1))/0x6*(-parseInt(_0x11e510(0xda))/0x7)+-parseInt(_0x11e510(0xd6))/0x8*(-parseInt(_0x11e510(0xd4))/0x9)+-parseInt(_0x11e510(0xd3))/0xa+parseInt(_0x11e510(0xd5))/0xb;if(_0x1ba9ce===_0x51d88b)break;else _0x1a9c90['push'](_0x1a9c90['shift']());}catch(_0x2a2348){_0x1a9c90['push'](_0x1a9c90['shift']());}}}(_0xbf0c,0xd42e8));import{appendFile}from'fs/promises';function _0xbf0c(){const _0x36bf42=['CLAUDE_ENV_FILE','main','4880885RQcIRA','114WTbluf','9312wToEHV','env','124awEWRJ','18tMiHjH','hook:session-start','12516790mAUZvh','6988653JiyDgw','45904551dZuyNy','8kDvYHO','\x20(Branch:\x20','30337YZmpUN','trackCommandEnd','63637mJAsjM','parse','session_id','yowzb','source','uyefA','=================================================================\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20🚨\x20RANGER\x20IS\x20ACTIVE\x20🚨\x0a=================================================================\x0a\x0aThis\x20session\x20has\x20Ranger\x20ENABLED.\x20Before\x20doing\x20ANYTHING\x20else:\x0a\x0a1.\x20**READ\x20the\x20/ranger\x20skill\x20FIRST**\x20-\x20Run\x20the\x20skill\x20to\x20understand\x20the\x20required\x20workflow\x20for\x20UI\x20features\x0a\x0a2.\x20**Check\x20for\x20existing\x20feature\x20reviews**\x20-\x20Run\x20`ranger\x20list`\x20to\x20see\x20if\x20there\x27s\x20an\x20in-progress\x20feature\x20review\x20to\x20resume\x0a\x0a3.\x20**For\x20ANY\x20UI\x20work**:\x20You\x20MUST\x20either:\x0a\x20\x20\x20-\x20Resume\x20an\x20existing\x20feature\x20review:\x20`ranger\x20resume\x20<id>`\x0a\x20\x20\x20-\x20Create\x20a\x20new\x20feature\x20review:\x20`ranger\x20create\x20\x22<name>\x22\x20-d\x20\x22<desc>\x22\x20-c\x20\x22<scenario>\x22`\x0a\x0a4.\x20**If\x20resuming\x20a\x20feature\x20review\x20with\x20reviewer\x20comments**:\x20Run\x20`ranger\x20get-review`\x20to\x20see\x20what\x20reviewers\x20want\x20fixed\x20before\x20making\x20code\x20changes\x0a\x0a================================================================='];_0xbf0c=function(){return _0x36bf42;};return _0xbf0c();}import{initBranchTracking,shouldAutoEnableAfterClear,autoEnableAfterClear,isSessionEnabled,getCurrentBranch}from'../utils/sessionCache.js';import{createTelemetryCollector}from'../utils/telemetry.js';const RANGER_AUTO_ENABLED_PROMPT=_0x203acb(0xc9);function _0x357d(_0x39d80d,_0x22d2cb){_0x39d80d=_0x39d80d-0xc7;const _0xbf0c19=_0xbf0c();let _0x357d70=_0xbf0c19[_0x39d80d];return _0x357d70;}export async function sessionStart(_0x1a2fda){const _0x44e229=_0x203acb,_0x952fb7={'WtXXq':_0x44e229(0xdc),'uyefA':function(_0x5976f4,_0x33f3f4,_0x41b10d){return _0x5976f4(_0x33f3f4,_0x41b10d);},'XWHvJ':function(_0x3366bd,_0x56c26d){return _0x3366bd(_0x56c26d);},'lgBLs':function(_0x4af4c2,_0x48778c){return _0x4af4c2(_0x48778c);},'TLxRl':'success','yowzb':function(_0x129867,_0x422930){return _0x129867!==_0x422930;},'MYUbX':_0x44e229(0xcb),'EriOb':function(_0x2a3bf8,_0x30cb0a){return _0x2a3bf8+_0x30cb0a;}};let _0x20f261=_0x1a2fda||'',_0x2a65df;if(!_0x1a2fda){let _0x11ba2f='';for await(const _0xeea556 of process['stdin']){_0x11ba2f+=_0xeea556;}try{const _0x548b68=JSON[_0x44e229(0xdb)](_0x11ba2f);_0x20f261=_0x548b68[_0x952fb7['WtXXq']]||'',_0x2a65df=_0x548b68[_0x44e229(0xc7)];}catch{}const _0x2a11ff=process[_0x44e229(0xcf)][_0x44e229(0xca)];if(_0x2a11ff&&_0x20f261)try{await _0x952fb7[_0x44e229(0xc8)](appendFile,_0x2a11ff,'export\x20CLAUDE_SESSION_ID=\x22'+_0x20f261+'\x22\x0a');}catch{}}if(_0x20f261){_0x952fb7['XWHvJ'](shouldAutoEnableAfterClear,_0x2a65df)&&autoEnableAfterClear(_0x20f261);initBranchTracking(_0x20f261);const _0x288740=isSessionEnabled(_0x20f261);try{const _0x4d852b=_0x952fb7['lgBLs'](createTelemetryCollector,_0x44e229(0xd2));await _0x4d852b['trackCommandStart']({'sessionId':_0x20f261,'hooksEnabled':_0x288740}),await _0x4d852b[_0x44e229(0xd9)](_0x952fb7['TLxRl']);}catch{}if(_0x288740){const _0x385756=getCurrentBranch(),_0x491d60=_0x385756&&_0x952fb7[_0x44e229(0xdd)](_0x385756,_0x952fb7['MYUbX'])&&_0x952fb7['yowzb'](_0x385756,'master')?_0x44e229(0xd7)+_0x385756+')':'',_0x27b399={'hookSpecificOutput':{'hookEventName':'SessionStart','additionalContext':_0x952fb7['EriOb'](RANGER_AUTO_ENABLED_PROMPT,_0x491d60)}};console['log'](JSON['stringify'](_0x27b399));}}}