()
| 121 | } |
| 122 | |
| 123 | function _proxyExpected() { |
| 124 | if (String(process.env.EVOMAP_PROXY || '').trim() === '1') return true; |
| 125 | if (String(process.env.A2A_TRANSPORT || '').trim().toLowerCase() === 'mailbox') return true; |
| 126 | if (_isLoopbackProxyUrl(process.env.EVOMAP_PROXY_URL) || _isLoopbackProxyUrl(process.env.ANTHROPIC_BASE_URL)) return true; |
| 127 | if (_codexConfigExpectsProxy()) return true; |
| 128 | |
| 129 | const home = process.env.HOME || os.homedir(); |
| 130 | const settingsFile = process.env.CLAUDE_SETTINGS_FILE || process.env.EVOMAP_CLAUDE_SETTINGS_FILE || |
| 131 | (home ? path.join(home, '.claude', 'settings.json') : null); |
| 132 | const settings = _readJson(settingsFile); |
| 133 | const cfg = settings && settings.env; |
| 134 | return !!(cfg && ( |
| 135 | _isLoopbackProxyUrl(cfg.EVOMAP_PROXY_URL) || |
| 136 | (String(cfg.EVOMAP_PROXY_AUTO_INJECTED || '') === '1' && _isLoopbackProxyUrl(cfg.ANTHROPIC_BASE_URL)) |
| 137 | )); |
| 138 | } |
| 139 | |
| 140 | function _proxyReachable(url, token) { |
| 141 | if (!_isLoopbackProxyUrl(url) || !token) return false; |
no test coverage detected