@dynatrace-oss/dynatrace-mcp-server
v1.4.0Model Context Protocol (MCP) server for Dynatrace
198
Total
62
Critical
86
High
50
Medium
Findings
unknownEnvironment file access
Detected by automated pattern matching (rule DE-002) with medium confidence. May be a false positive.
75: it('should handle different port numbers correctly', () => {
76: process.env.CODESPACE_NAME = 'test-codespace';
>>> 77: process.env.GITHUB_CODESPACES_PORT_FORWARDING_DOMAIN = 'preview.app.github.dev';
78: expect((0, environment_detection_1.getCodespacesForwardedUrl)(3000)).toBe('https://test-codespace-3000.preview.app.github.dev');
79: expect((0, environment_detection_1.getCodespacesForwardedUrl)(5344)).toBe('https://test-codespace-5344.preview.app.github.dev');Report false positiveEnvironment file access
Detected by automated pattern matching (rule DE-002) with medium confidence. May be a false positive.
74: });
75: it('should handle different port numbers correctly', () => {
>>> 76: process.env.CODESPACE_NAME = 'test-codespace';
77: process.env.GITHUB_CODESPACES_PORT_FORWARDING_DOMAIN = 'preview.app.github.dev';
78: expect((0, environment_detection_1.getCodespacesForwardedUrl)(3000)).toBe('https://test-codespace-3000.preview.app.github.dev');Report false positiveEnvironment file access
Detected by automated pattern matching (rule DE-002) with medium confidence. May be a false positive.
69: });
70: it('should return null when GITHUB_CODESPACES_PORT_FORWARDING_DOMAIN is missing', () => {
>>> 71: process.env.CODESPACE_NAME = 'my-codespace';
72: const result = (0, environment_detection_1.getCodespacesForwardedUrl)(8080);
73: expect(result).toBeNull();Report false positiveEnvironment file access
Detected by automated pattern matching (rule DE-002) with medium confidence. May be a false positive.
64: });
65: it('should return null when CODESPACE_NAME is missing', () => {
>>> 66: process.env.GITHUB_CODESPACES_PORT_FORWARDING_DOMAIN = 'app.github.dev';
67: const result = (0, environment_detection_1.getCodespacesForwardedUrl)(8080);
68: expect(result).toBeNull();Report false positiveEnvironment file access
Detected by automated pattern matching (rule DE-002) with medium confidence. May be a false positive.
54: it('should return the correct forwarded URL when running in Codespaces', () => {
55: process.env.CODESPACE_NAME = 'my-codespace';
>>> 56: process.env.GITHUB_CODESPACES_PORT_FORWARDING_DOMAIN = 'app.github.dev';
57: const result = (0, environment_detection_1.getCodespacesForwardedUrl)(8080);
58: expect(result).toBe('https://my-codespace-8080.app.github.dev');Report false positiveEnvironment file access
Detected by automated pattern matching (rule DE-002) with medium confidence. May be a false positive.
57: // Default configuration for Dynatrace MCP Server Telemetry endpoints (DT Prod Self Mon)
58: const applicationId = process.env.DT_MCP_TELEMETRY_APPLICATION_ID || '5e2dbb56-076b-412e-8ffc-7babb7ae7c5d';
>>> 59: const endpointUrl = process.env.DT_MCP_TELEMETRY_ENDPOINT_URL || 'https://bf96767wvv.bf.dynatrace.com/mbeacon';
60: // get anonymized device id
61: const deviceId = process.env.DT_MCP_TELEMETRY_DEVICE_ID || this.generateDeviceId();Report false positiveEnvironment file access
Detected by automated pattern matching (rule DE-002) with medium confidence. May be a false positive.
53: });
54: it('should return the correct forwarded URL when running in Codespaces', () => {
>>> 55: process.env.CODESPACE_NAME = 'my-codespace';
56: process.env.GITHUB_CODESPACES_PORT_FORWARDING_DOMAIN = 'app.github.dev';
57: const result = (0, environment_detection_1.getCodespacesForwardedUrl)(8080);Report false positiveEnvironment file access
Detected by automated pattern matching (rule DE-002) with medium confidence. May be a false positive.
50: afterEach(() => {
51: // Restore original environment after each test
>>> 52: process.env = originalEnv;
53: });
54: it('should return the correct forwarded URL when running in Codespaces', () => {Report false positiveEnvironment file access
Detected by automated pattern matching (rule DE-002) with medium confidence. May be a false positive.
46: beforeEach(() => {
47: // Reset environment variables before each test
>>> 48: process.env = { ...originalEnv };
49: });
50: afterEach(() => {Report false positiveEnvironment file access
Detected by automated pattern matching (rule DE-002) with medium confidence. May be a false positive.
43: });
44: describe('getCodespacesForwardedUrl', () => {
>>> 45: const originalEnv = process.env;
46: beforeEach(() => {
47: // Reset environment variables before each testReport false positiveEnvironment file access
Detected by automated pattern matching (rule DE-002) with medium confidence. May be a false positive.
13: });
14: it('should return true when both CODESPACE_NAME and GITHUB_CODESPACES_PORT_FORWARDING_DOMAIN are set', () => {
>>> 15: process.env.CODESPACE_NAME = 'my-codespace';
16: process.env.GITHUB_CODESPACES_PORT_FORWARDING_DOMAIN = 'app.github.dev';
17: expect((0, environment_detection_1.isRunningInCodespaces)()).toBe(true);Report false positiveEnvironment file access
Detected by automated pattern matching (rule DE-002) with medium confidence. May be a false positive.
10: afterEach(() => {
11: // Restore original environment after each test
>>> 12: process.env = originalEnv;
13: });
14: it('should return true when both CODESPACE_NAME and GITHUB_CODESPACES_PORT_FORWARDING_DOMAIN are set', () => {Report false positiveEnvironment file access
Detected by automated pattern matching (rule DE-002) with medium confidence. May be a false positive.
6: beforeEach(() => {
7: // Reset environment variables before each test
>>> 8: process.env = { ...originalEnv };
9: });
10: afterEach(() => {Report false positiveEnvironment file access
Detected by automated pattern matching (rule DE-002) with medium confidence. May be a false positive.
3: const environment_detection_1 = require("./environment-detection");
4: describe('isRunningInCodespaces', () => {
>>> 5: const originalEnv = process.env;
6: beforeEach(() => {
7: // Reset environment variables before each testReport false positiveEnvironment file access
Detected by automated pattern matching (rule DE-002) with medium confidence. May be a false positive.
23: }
24: const codespaceName = process.env.CODESPACE_NAME;
>>> 25: const domain = process.env.GITHUB_CODESPACES_PORT_FORWARDING_DOMAIN;
26: return `https://${codespaceName}-${port}.${domain}`;
27: }Report false positiveEnvironment file access
Detected by automated pattern matching (rule DE-002) with medium confidence. May be a false positive.
22: return null;
23: }
>>> 24: const codespaceName = process.env.CODESPACE_NAME;
25: const domain = process.env.GITHUB_CODESPACES_PORT_FORWARDING_DOMAIN;
26: return `https://${codespaceName}-${port}.${domain}`;Report false positiveEnvironment file access
Detected by automated pattern matching (rule DE-002) with medium confidence. May be a false positive.
38: it('should return false when GITHUB_CODESPACES_PORT_FORWARDING_DOMAIN is empty string', () => {
39: process.env.CODESPACE_NAME = 'my-codespace';
>>> 40: process.env.GITHUB_CODESPACES_PORT_FORWARDING_DOMAIN = '';
41: expect((0, environment_detection_1.isRunningInCodespaces)()).toBe(false);
42: });Report false positiveEnvironment file access
Detected by automated pattern matching (rule DE-002) with medium confidence. May be a false positive.
37: });
38: it('should return false when GITHUB_CODESPACES_PORT_FORWARDING_DOMAIN is empty string', () => {
>>> 39: process.env.CODESPACE_NAME = 'my-codespace';
40: process.env.GITHUB_CODESPACES_PORT_FORWARDING_DOMAIN = '';
41: expect((0, environment_detection_1.isRunningInCodespaces)()).toBe(false);Report false positiveEnvironment file access
Detected by automated pattern matching (rule DE-002) with medium confidence. May be a false positive.
33: it('should return false when CODESPACE_NAME is empty string', () => {
34: process.env.CODESPACE_NAME = '';
>>> 35: process.env.GITHUB_CODESPACES_PORT_FORWARDING_DOMAIN = 'app.github.dev';
36: expect((0, environment_detection_1.isRunningInCodespaces)()).toBe(false);
37: });Report false positiveEnvironment file access
Detected by automated pattern matching (rule DE-002) with medium confidence. May be a false positive.
32: });
33: it('should return false when CODESPACE_NAME is empty string', () => {
>>> 34: process.env.CODESPACE_NAME = '';
35: process.env.GITHUB_CODESPACES_PORT_FORWARDING_DOMAIN = 'app.github.dev';
36: expect((0, environment_detection_1.isRunningInCodespaces)()).toBe(false);Report false positiveEnvironment file access
Detected by automated pattern matching (rule DE-002) with medium confidence. May be a false positive.
11: */
12: function isRunningInCodespaces() {
>>> 13: return !!(process.env.CODESPACE_NAME && process.env.GITHUB_CODESPACES_PORT_FORWARDING_DOMAIN);
14: }
15: /**Report false positiveEnvironment file access
Detected by automated pattern matching (rule DE-002) with medium confidence. May be a false positive.
6: * Throws an Error if validation fails.
7: */
>>> 8: function getDynatraceEnv(env = process.env) {
9: const oauthClientId = env.OAUTH_CLIENT_ID;
10: const oauthClientSecret = env.OAUTH_CLIENT_SECRET;Report false positiveEnvironment file access
Detected by automated pattern matching (rule DE-002) with medium confidence. May be a false positive.
23: });
24: it('should return false when GITHUB_CODESPACES_PORT_FORWARDING_DOMAIN is missing', () => {
>>> 25: process.env.CODESPACE_NAME = 'my-codespace';
26: // GITHUB_CODESPACES_PORT_FORWARDING_DOMAIN is not set
27: expect((0, environment_detection_1.isRunningInCodespaces)()).toBe(false);Report false positiveEnvironment file access
Detected by automated pattern matching (rule DE-002) with medium confidence. May be a false positive.
18: });
19: it('should return false when CODESPACE_NAME is missing', () => {
>>> 20: process.env.GITHUB_CODESPACES_PORT_FORWARDING_DOMAIN = 'app.github.dev';
21: // CODESPACE_NAME is not set
22: expect((0, environment_detection_1.isRunningInCodespaces)()).toBe(false);Report false positiveEnvironment file access
Detected by automated pattern matching (rule DE-002) with medium confidence. May be a false positive.
14: it('should return true when both CODESPACE_NAME and GITHUB_CODESPACES_PORT_FORWARDING_DOMAIN are set', () => {
15: process.env.CODESPACE_NAME = 'my-codespace';
>>> 16: process.env.GITHUB_CODESPACES_PORT_FORWARDING_DOMAIN = 'app.github.dev';
17: expect((0, environment_detection_1.isRunningInCodespaces)()).toBe(true);
18: });Report false positiveEnvironment file access
Detected by automated pattern matching (rule DE-002) with medium confidence. May be a false positive.
56: }
57: // Default configuration for Dynatrace MCP Server Telemetry endpoints (DT Prod Self Mon)
>>> 58: const applicationId = process.env.DT_MCP_TELEMETRY_APPLICATION_ID || '5e2dbb56-076b-412e-8ffc-7babb7ae7c5d';
59: const endpointUrl = process.env.DT_MCP_TELEMETRY_ENDPOINT_URL || 'https://bf96767wvv.bf.dynatrace.com/mbeacon';
60: // get anonymized device idReport false positiveEnvironment file access
Detected by automated pattern matching (rule DE-002) with medium confidence. May be a false positive.
50: environmentInfo;
51: constructor(environmentInfo) {
>>> 52: this.isEnabled = process.env.DT_MCP_DISABLE_TELEMETRY !== 'true';
53: this.environmentInfo = environmentInfo;
54: if (!this.isEnabled) {Report false positiveEnvironment file access
Detected by automated pattern matching (rule DE-002) with medium confidence. May be a false positive.
11: });
12: it('should return SSO URL from environment variable if set', async () => {
>>> 13: process.env.DT_SSO_URL = 'https://custom-sso.example.com';
14: const result = await (0, get_sso_url_1.getSSOUrl)('https://abc12345.live.dynatrace.com');
15: expect(result).toBe('https://custom-sso.example.com');Report false positiveEnvironment file access
Detected by automated pattern matching (rule DE-002) with medium confidence. May be a false positive.
132: "cwd": "${workspaceFolder}",
133: "args": ["-y", "@dynatrace-oss/dynatrace-mcp-server@latest"],
>>> 134: "envFile": "${workspaceFolder}/.env"
135: }
136: }Report false positiveEnvironment file access
Detected by automated pattern matching (rule DE-002) with medium confidence. May be a false positive.
313: ## Environment Variables
314:
>>> 315: > **Breaking Change in v1.0.0:** The MCP server no longer automatically loads `.env` files. To use environment variables from a `.env` file, you need to configure your MCP client to load environment variables using the native `envFile` configuration option. See the [configuration examples](#configuration) below for details.
316:
317: - `DT_ENVIRONMENT` (**required**, string, e.g., `https://abc12345.apps.dynatrace.com`) - URL to your Dynatrace Platform (do not use Dynatrace classic URLs like `abc12345.live.dynatrace.com`)Report false positiveEnvironment file access
Detected by automated pattern matching (rule DE-002) with medium confidence. May be a false positive.
8: beforeEach(() => {
9: jest.clearAllMocks();
>>> 10: delete process.env.DT_SSO_URL;
11: });
12: it('should return SSO URL from environment variable if set', async () => {Report false positiveEnvironment file access
Detected by automated pattern matching (rule DE-002) with medium confidence. May be a false positive.
11: const defaultSSOUrl = 'https://sso.dynatrace.com';
12: // Allow override via environment variable for special cases (managed, sprint, dev environments)
>>> 13: const envOverride = process.env.DT_SSO_URL;
14: if (envOverride) {
15: console.error(`Using SSO URL from DT_SSO_URL environment variable: ${envOverride}`);Report false positiveEnvironment file access
Detected by automated pattern matching (rule DE-002) with medium confidence. May be a false positive.
82: finally {
83: // Restore original environment
>>> 84: process.env = originalEnv;
85: }
86: });Report false positiveEnvironment file access
Detected by automated pattern matching (rule DE-002) with medium confidence. May be a false positive.
71: // Ensure Codespaces environment variables are not set
72: delete process.env.CODESPACE_NAME;
>>> 73: delete process.env.GITHUB_CODESPACES_PORT_FORWARDING_DOMAIN;
74: const port = 8080;
75: const result = await (0, dynatrace_oauth_auth_code_flow_1.startOAuthRedirectServer)(port);Report false positiveEnvironment file access
Detected by automated pattern matching (rule DE-002) with medium confidence. May be a false positive.
70: try {
71: // Ensure Codespaces environment variables are not set
>>> 72: delete process.env.CODESPACE_NAME;
73: delete process.env.GITHUB_CODESPACES_PORT_FORWARDING_DOMAIN;
74: const port = 8080;Report false positiveEnvironment file access
Detected by automated pattern matching (rule DE-002) with medium confidence. May be a false positive.
67: });
68: test('startOAuthRedirectServer falls back to localhost when not in Codespaces', async () => {
>>> 69: const originalEnv = process.env;
70: try {
71: // Ensure Codespaces environment variables are not setReport false positiveEnvironment file access
Detected by automated pattern matching (rule DE-002) with medium confidence. May be a false positive.
63: finally {
64: // Restore original environment
>>> 65: process.env = originalEnv;
66: }
67: });Report false positiveEnvironment file access
Detected by automated pattern matching (rule DE-002) with medium confidence. May be a false positive.
66: });
67: it('should handle errors gracefully', () => {
>>> 68: process.env.HTTPS_PROXY = 'http://proxy.example.com:8080';
69: const mockProxyAgent = undici_1.ProxyAgent;
70: mockProxyAgent.mockImplementation(() => {Report false positiveEnvironment file access
Detected by automated pattern matching (rule DE-002) with medium confidence. May be a false positive.
54: });
55: it('should fall back to HTTP_PROXY if HTTPS_PROXY is not set', () => {
>>> 56: process.env.HTTP_PROXY = 'http://proxy.example.com:8080';
57: (0, proxy_config_1.configureProxyFromEnvironment)();
58: expect(undici_1.ProxyAgent).toHaveBeenCalledWith({Report false positiveEnvironment file access
Detected by automated pattern matching (rule DE-002) with medium confidence. May be a false positive.
47: it('should prefer HTTPS_PROXY over HTTP_PROXY', () => {
48: process.env.HTTPS_PROXY = 'http://https-proxy.example.com:8443';
>>> 49: process.env.HTTP_PROXY = 'http://http-proxy.example.com:8080';
50: (0, proxy_config_1.configureProxyFromEnvironment)();
51: expect(undici_1.ProxyAgent).toHaveBeenCalledWith({Report false positiveEnvironment file access
Detected by automated pattern matching (rule DE-002) with medium confidence. May be a false positive.
46: });
47: it('should prefer HTTPS_PROXY over HTTP_PROXY', () => {
>>> 48: process.env.HTTPS_PROXY = 'http://https-proxy.example.com:8443';
49: process.env.HTTP_PROXY = 'http://http-proxy.example.com:8080';
50: (0, proxy_config_1.configureProxyFromEnvironment)();Report false positiveEnvironment file access
Detected by automated pattern matching (rule DE-002) with medium confidence. May be a false positive.
38: });
39: it('should configure proxy when https_proxy is set (lowercase)', () => {
>>> 40: process.env.https_proxy = 'http://proxy.example.com:8080';
41: (0, proxy_config_1.configureProxyFromEnvironment)();
42: expect(undici_1.ProxyAgent).toHaveBeenCalledWith({Report false positiveEnvironment file access
Detected by automated pattern matching (rule DE-002) with medium confidence. May be a false positive.
48: });
49: test('startOAuthRedirectServer uses forwarded URL in GitHub Codespaces', async () => {
>>> 50: const originalEnv = process.env;
51: try {
52: // Mock Codespaces environment variablesReport false positiveEnvironment file access
Detected by automated pattern matching (rule DE-002) with medium confidence. May be a false positive.
51: try {
52: // Mock Codespaces environment variables
>>> 53: process.env.CODESPACE_NAME = 'test-codespace';
54: process.env.GITHUB_CODESPACES_PORT_FORWARDING_DOMAIN = 'app.github.dev';
55: const port = 8080;Report false positiveEnvironment file access
Detected by automated pattern matching (rule DE-002) with medium confidence. May be a false positive.
52: // Mock Codespaces environment variables
53: process.env.CODESPACE_NAME = 'test-codespace';
>>> 54: process.env.GITHUB_CODESPACES_PORT_FORWARDING_DOMAIN = 'app.github.dev';
55: const port = 8080;
56: const result = await (0, dynatrace_oauth_auth_code_flow_1.startOAuthRedirectServer)(port);Report false positiveEnvironment file access
Detected by automated pattern matching (rule DE-002) with medium confidence. May be a false positive.
30: describe('configureProxyFromEnvironment', () => {
31: it('should configure proxy when HTTPS_PROXY is set', () => {
>>> 32: process.env.HTTPS_PROXY = 'http://proxy.example.com:8080';
33: (0, proxy_config_1.configureProxyFromEnvironment)();
34: expect(undici_1.ProxyAgent).toHaveBeenCalledWith({Report false positiveEnvironment file access
Detected by automated pattern matching (rule DE-002) with medium confidence. May be a false positive.
59: const endpointUrl = process.env.DT_MCP_TELEMETRY_ENDPOINT_URL || 'https://bf96767wvv.bf.dynatrace.com/mbeacon';
60: // get anonymized device id
>>> 61: const deviceId = process.env.DT_MCP_TELEMETRY_DEVICE_ID || this.generateDeviceId();
62: this.initPromise = this.initializeOpenKit(endpointUrl, applicationId, deviceId);
63: }Report false positiveEnvironment file access
Detected by automated pattern matching (rule DE-002) with medium confidence. May be a false positive.
26: afterEach(() => {
27: // Restore original environment
>>> 28: process.env = originalEnv;
29: });
30: describe('configureProxyFromEnvironment', () => {Report false positiveEnvironment file access
Detected by automated pattern matching (rule DE-002) with medium confidence. May be a false positive.
20: delete process.env.HTTP_PROXY;
21: delete process.env.no_proxy;
>>> 22: delete process.env.NO_PROXY;
23: // Clear mocks
24: jest.clearAllMocks();Report false positiveEnvironment file access
Detected by automated pattern matching (rule DE-002) with medium confidence. May be a false positive.
19: delete process.env.http_proxy;
20: delete process.env.HTTP_PROXY;
>>> 21: delete process.env.no_proxy;
22: delete process.env.NO_PROXY;
23: // Clear mocksReport false positiveEnvironment file access
Detected by automated pattern matching (rule DE-002) with medium confidence. May be a false positive.
18: delete process.env.HTTPS_PROXY;
19: delete process.env.http_proxy;
>>> 20: delete process.env.HTTP_PROXY;
21: delete process.env.no_proxy;
22: delete process.env.NO_PROXY;Report false positiveEnvironment file access
Detected by automated pattern matching (rule DE-002) with medium confidence. May be a false positive.
17: delete process.env.https_proxy;
18: delete process.env.HTTPS_PROXY;
>>> 19: delete process.env.http_proxy;
20: delete process.env.HTTP_PROXY;
21: delete process.env.no_proxy;Report false positiveEnvironment file access
Detected by automated pattern matching (rule DE-002) with medium confidence. May be a false positive.
16: // Clear all proxy-related env vars
17: delete process.env.https_proxy;
>>> 18: delete process.env.HTTPS_PROXY;
19: delete process.env.http_proxy;
20: delete process.env.HTTP_PROXY;Report false positiveEnvironment file access
Detected by automated pattern matching (rule DE-002) with medium confidence. May be a false positive.
15: originalEnv = { ...process.env };
16: // Clear all proxy-related env vars
>>> 17: delete process.env.https_proxy;
18: delete process.env.HTTPS_PROXY;
19: delete process.env.http_proxy;Report false positiveEnvironment file access
Detected by automated pattern matching (rule DE-002) with medium confidence. May be a false positive.
13: beforeEach(() => {
14: // Save original environment
>>> 15: originalEnv = { ...process.env };
16: // Clear all proxy-related env vars
17: delete process.env.https_proxy;Report false positiveEnvironment file access
Detected by automated pattern matching (rule DE-002) with medium confidence. May be a false positive.
14: const httpsProxy = process.env.https_proxy || process.env.HTTPS_PROXY;
15: const httpProxy = process.env.http_proxy || process.env.HTTP_PROXY;
>>> 16: const noProxy = process.env.no_proxy || process.env.NO_PROXY;
17: // Determine which proxy to use (prefer HTTPS proxy for HTTPS requests)
18: const proxyUrl = httpsProxy || httpProxy;Report false positiveEnvironment file access
Detected by automated pattern matching (rule DE-002) with medium confidence. May be a false positive.
13: // Check for proxy environment variables (case-insensitive)
14: const httpsProxy = process.env.https_proxy || process.env.HTTPS_PROXY;
>>> 15: const httpProxy = process.env.http_proxy || process.env.HTTP_PROXY;
16: const noProxy = process.env.no_proxy || process.env.NO_PROXY;
17: // Determine which proxy to use (prefer HTTPS proxy for HTTPS requests)Report false positiveEnvironment file access
Detected by automated pattern matching (rule DE-002) with medium confidence. May be a false positive.
12: function configureProxyFromEnvironment() {
13: // Check for proxy environment variables (case-insensitive)
>>> 14: const httpsProxy = process.env.https_proxy || process.env.HTTPS_PROXY;
15: const httpProxy = process.env.http_proxy || process.env.HTTP_PROXY;
16: const noProxy = process.env.no_proxy || process.env.NO_PROXY;Report false positiveEnvironment file access
Detected by automated pattern matching (rule DE-002) with medium confidence. May be a false positive.
88: it('should handle different domain formats', () => {
89: process.env.CODESPACE_NAME = 'codespace-123';
>>> 90: process.env.GITHUB_CODESPACES_PORT_FORWARDING_DOMAIN = 'githubpreview.dev';
91: const result = (0, environment_detection_1.getCodespacesForwardedUrl)(4000);
92: expect(result).toBe('https://codespace-123-4000.githubpreview.dev');Report false positiveEnvironment file access
Detected by automated pattern matching (rule DE-002) with medium confidence. May be a false positive.
87: });
88: it('should handle different domain formats', () => {
>>> 89: process.env.CODESPACE_NAME = 'codespace-123';
90: process.env.GITHUB_CODESPACES_PORT_FORWARDING_DOMAIN = 'githubpreview.dev';
91: const result = (0, environment_detection_1.getCodespacesForwardedUrl)(4000);Report false positiveEnvironment file access
Detected by automated pattern matching (rule DE-002) with medium confidence. May be a false positive.
82: it('should handle codespace names with special characters', () => {
83: process.env.CODESPACE_NAME = 'my-special_codespace.v1';
>>> 84: process.env.GITHUB_CODESPACES_PORT_FORWARDING_DOMAIN = 'app.github.dev';
85: const result = (0, environment_detection_1.getCodespacesForwardedUrl)(8080);
86: expect(result).toBe('https://my-special_codespace.v1-8080.app.github.dev');Report false positiveEnvironment file access
Detected by automated pattern matching (rule DE-002) with medium confidence. May be a false positive.
81: });
82: it('should handle codespace names with special characters', () => {
>>> 83: process.env.CODESPACE_NAME = 'my-special_codespace.v1';
84: process.env.GITHUB_CODESPACES_PORT_FORWARDING_DOMAIN = 'app.github.dev';
85: const result = (0, environment_detection_1.getCodespacesForwardedUrl)(8080);Report false positiveDecoded base64 content: �����) X���'�ؚ�,ڶ*'
Detected by automated pattern matching (rule DO-BAS) with medium confidence. May be a false positive.
Report false positiveDecoded base64 content: r��v�,�f�j��ק�+r
Detected by automated pattern matching (rule DO-BAS) with medium confidence. May be a false positive.
Report false positiveDecoded base64 content: u����b��-�g)�)쵩e
Detected by automated pattern matching (rule DO-BAS) with medium confidence. May be a false positive.
Report false positiveDecoded base64 content: u����b��-�g)�)쵩e
Detected by automated pattern matching (rule DO-BAS) with medium confidence. May be a false positive.
Report false positiveDecoded base64 content: {"name":"dynatrace-mcp-server","command":"npx","args":["-y","@dynatrace-oss/dynatrace-mcp-server"],"
Detected by automated pattern matching (rule DO-BAS) with medium confidence. May be a false positive.
Report false positiveDecoded base64 content: �����no�(���n�h����v���
Detected by automated pattern matching (rule DO-BAS) with medium confidence. May be a false positive.
Report false positiveDecoded base64 content: r�����u�Z�_��v���
Detected by automated pattern matching (rule DO-BAS) with medium confidence. May be a false positive.
Report false positiveDecoded base64 content: r�����u�Z�_鮆�zk?
Detected by automated pattern matching (rule DO-BAS) with medium confidence. May be a false positive.
Report false positiveDecoded base64 content: r��v�,���z��q��j��nW�
Detected by automated pattern matching (rule DO-BAS) with medium confidence. May be a false positive.
Report false positiveDecoded base64 content: r��v�,�f�j��ק�+r
Detected by automated pattern matching (rule DO-BAS) with medium confidence. May be a false positive.
Report false positiveDecoded base64 content: j�h��^� +��h���rب��앧$
Detected by automated pattern matching (rule DO-BAS) with medium confidence. May be a false positive.
Report false positiveDecoded base64 content: r����?����o��G�
Detected by automated pattern matching (rule DO-BAS) with medium confidence. May be a false positive.
Report false positiveDecoded base64 content: r������oں�h�,�
Detected by automated pattern matching (rule DO-BAS) with medium confidence. May be a false positive.
Report false positiveDecoded base64 content: �֫��.�^v*�rԞ���
Detected by automated pattern matching (rule DO-BAS) with medium confidence. May be a false positive.
Report false positiveDecoded base64 content: �֫��.�^v*�rԞ���
Detected by automated pattern matching (rule DO-BAS) with medium confidence. May be a false positive.
Report false positiveDecoded base64 content: �������h�,ڶ*' �^
Detected by automated pattern matching (rule DO-BAS) with medium confidence. May be a false positive.
Report false positiveDecoded base64 content: �֫��.�^v*�rԞ���
Detected by automated pattern matching (rule DO-BAS) with medium confidence. May be a false positive.
Report false positiveDecoded base64 content: �֫��.�^v*�rԞ���
Detected by automated pattern matching (rule DO-BAS) with medium confidence. May be a false positive.
Report false positiveDecoded base64 content: �������h�,ڶ*' �^
Detected by automated pattern matching (rule DO-BAS) with medium confidence. May be a false positive.
Report false positiveDecoded base64 content: �֫��.�^v*�rԞ���
Detected by automated pattern matching (rule DO-BAS) with medium confidence. May be a false positive.
Report false positiveDecoded base64 content: �֫��.�^v*�rԞ���
Detected by automated pattern matching (rule DO-BAS) with medium confidence. May be a false positive.
Report false positiveDecoded base64 content: �������h�,ڶ*' �^
Detected by automated pattern matching (rule DO-BAS) with medium confidence. May be a false positive.
Report false positiveDecoded base64 content: ��Z��+����v������ͫb���v���
Detected by automated pattern matching (rule DO-BAS) with medium confidence. May be a false positive.
Report false positiveDecoded base64 content: r����?����oں�h�,�
Detected by automated pattern matching (rule DO-BAS) with medium confidence. May be a false positive.
Report false positiveDecoded base64 content: ��ڽ�^zp��W�Z+a
Detected by automated pattern matching (rule DO-BAS) with medium confidence. May be a false positive.
Report false positiveDecoded base64 content: r����?����oں�h�,�
Detected by automated pattern matching (rule DO-BAS) with medium confidence. May be a false positive.
Report false positiveDecoded base64 content: r����?����oں�h�,�
Detected by automated pattern matching (rule DO-BAS) with medium confidence. May be a false positive.
Report false positiveDecoded base64 content: r����?����oں�h�,�
Detected by automated pattern matching (rule DO-BAS) with medium confidence. May be a false positive.
Report false positiveDecoded base64 content: r����?����oں�h�,�
Detected by automated pattern matching (rule DO-BAS) with medium confidence. May be a false positive.
Report false positiveDecoded base64 content: z{⮉�z{H��+��b�p����
Detected by automated pattern matching (rule DO-BAS) with medium confidence. May be a false positive.
Report false positiveDecoded base64 content: �Ʃi���؞��+y�^
Detected by automated pattern matching (rule DO-BAS) with medium confidence. May be a false positive.
Report false positiveDecoded base64 content: �Ʃi���؞���u�^
Detected by automated pattern matching (rule DO-BAS) with medium confidence. May be a false positive.
Report false positiveDecoded base64 content: z{⮉�z{H��+��b�p����
Detected by automated pattern matching (rule DO-BAS) with medium confidence. May be a false positive.
Report false positiveDecoded base64 content: �h��b�֢���,
Detected by automated pattern matching (rule DO-BAS) with medium confidence. May be a false positive.
Report false positiveDecoded base64 content: �����) X���'�ؚ�,ڶ*'
Detected by automated pattern matching (rule DO-BAS) with medium confidence. May be a false positive.
Report false positiveDecoded base64 content: z{⮉�z{H��+��b�p����
Detected by automated pattern matching (rule DO-BAS) with medium confidence. May be a false positive.
Report false positiveDecoded base64 content: {⮉�z{H��+��b�p����
Detected by automated pattern matching (rule DO-BAS) with medium confidence. May be a false positive.
Report false positiveDecoded base64 content: ������E�z�D��+
Detected by automated pattern matching (rule DO-BAS) with medium confidence. May be a false positive.
Report false positiveDecoded base64 content: ��ݕॉ��E�z�D��+
Detected by automated pattern matching (rule DO-BAS) with medium confidence. May be a false positive.
Report false positiveDecoded base64 content: ������E�z�D��+
Detected by automated pattern matching (rule DO-BAS) with medium confidence. May be a false positive.
Report false positiveDecoded base64 content: ��ݕॉ��E�z�D��+
Detected by automated pattern matching (rule DO-BAS) with medium confidence. May be a false positive.
Report false positiveDecoded base64 content: ��z�G�f��k���
Detected by automated pattern matching (rule DO-BAS) with medium confidence. May be a false positive.
Report false positiveDecoded base64 content: z{⮉�z{H��+��b�p����
Detected by automated pattern matching (rule DO-BAS) with medium confidence. May be a false positive.
Report false positiveDecoded base64 content: {⮉�z{H��+��b�p����
Detected by automated pattern matching (rule DO-BAS) with medium confidence. May be a false positive.
Report false positiveDecoded base64 content: z{⮉�z{H��+��b�p����
Detected by automated pattern matching (rule DO-BAS) with medium confidence. May be a false positive.
Report false positiveDecoded base64 content: ��gz���X���?��gz���X���?
Detected by automated pattern matching (rule DO-BAS) with medium confidence. May be a false positive.
Report false positiveDecoded base64 content: ��O���zk�8��V�
Detected by automated pattern matching (rule DO-BAS) with medium confidence. May be a false positive.
Report false positiveDecoded base64 content: ��O���zk�8��V�
Detected by automated pattern matching (rule DO-BAS) with medium confidence. May be a false positive.
Report false positiveDecoded base64 content: ��O���zk�8��V�
Detected by automated pattern matching (rule DO-BAS) with medium confidence. May be a false positive.
Report false positiveDecoded base64 content: ��O���zk�8��V�
Detected by automated pattern matching (rule DO-BAS) with medium confidence. May be a false positive.
Report false positiveDecoded base64 content: ��O���zk�8��V�
Detected by automated pattern matching (rule DO-BAS) with medium confidence. May be a false positive.
Report false positiveDecoded base64 content: ��D�ح���8��V�
Detected by automated pattern matching (rule DO-BAS) with medium confidence. May be a false positive.
Report false positiveDecoded base64 content: ��D�ح���8��V�
Detected by automated pattern matching (rule DO-BAS) with medium confidence. May be a false positive.
Report false positiveDecoded base64 content: ��D�ح���8��V�
Detected by automated pattern matching (rule DO-BAS) with medium confidence. May be a false positive.
Report false positiveDecoded base64 content: ��D�ح���8��V�
Detected by automated pattern matching (rule DO-BAS) with medium confidence. May be a false positive.
Report false positiveDecoded base64 content: ��D�ح���8��V�
Detected by automated pattern matching (rule DO-BAS) with medium confidence. May be a false positive.
Report false positiveDecoded base64 content: ��D�ح���8��V�
Detected by automated pattern matching (rule DO-BAS) with medium confidence. May be a false positive.
Report false positiveDecoded base64 content: ��bt)Z�Ȝ{b�'�
Detected by automated pattern matching (rule DO-BAS) with medium confidence. May be a false positive.
Report false positiveDecoded base64 content: ��bt)Z�Ȝ{b�'�
Detected by automated pattern matching (rule DO-BAS) with medium confidence. May be a false positive.
Report false positiveDecoded base64 content: ��D�ح���8��V�
Detected by automated pattern matching (rule DO-BAS) with medium confidence. May be a false positive.
Report false positiveDecoded base64 content: ��bt)Z�Ȝ{b�'�
Detected by automated pattern matching (rule DO-BAS) with medium confidence. May be a false positive.
Report false positiveDecoded base64 content: ��D�ح���8��V�
Detected by automated pattern matching (rule DO-BAS) with medium confidence. May be a false positive.
Report false positiveDecoded base64 content: ��bt)Z�Ȝ{b�'�
Detected by automated pattern matching (rule DO-BAS) with medium confidence. May be a false positive.
Report false positiveDecoded base64 content: ��D�ح���8��V�
Detected by automated pattern matching (rule DO-BAS) with medium confidence. May be a false positive.
Report false positiveDecoded base64 content: ��z�G�f��k���
Detected by automated pattern matching (rule DO-BAS) with medium confidence. May be a false positive.
Report false positiveDecoded base64 content: ��ھ+����Ԥ�Y@���i�^
Detected by automated pattern matching (rule DO-BAS) with medium confidence. May be a false positive.
Report false positiveDecoded base64 content: ��ھ+����Ԥ�Y@���i�^
Detected by automated pattern matching (rule DO-BAS) with medium confidence. May be a false positive.
Report false positiveDecoded base64 content: ��ھ+����Ԥ�Y@���i�^
Detected by automated pattern matching (rule DO-BAS) with medium confidence. May be a false positive.
Report false positiveDecoded base64 content: r�Z+a ��*)�Z-
Detected by automated pattern matching (rule DO-BAS) with medium confidence. May be a false positive.
Report false positiveDecoded base64 content: ��z�G�f��k���
Detected by automated pattern matching (rule DO-BAS) with medium confidence. May be a false positive.
Report false positiveDecoded base64 content: r���娮G�h���nW�6�b~'�*'
Detected by automated pattern matching (rule DO-BAS) with medium confidence. May be a false positive.
Report false positiveDecoded base64 content: ��z�G�f��k���
Detected by automated pattern matching (rule DO-BAS) with medium confidence. May be a false positive.
Report false positiveDecoded base64 content: ��D�ح���8��V�
Detected by automated pattern matching (rule DO-BAS) with medium confidence. May be a false positive.
Report false positiveDecoded base64 content: ��z�G�f��k���
Detected by automated pattern matching (rule DO-BAS) with medium confidence. May be a false positive.
Report false positiveDecoded base64 content: n��r)� �-�v����
Detected by automated pattern matching (rule DO-BAS) with medium confidence. May be a false positive.
Report false positiveDecoded base64 content: n��r)� �-�v����
Detected by automated pattern matching (rule DO-BAS) with medium confidence. May be a false positive.
Report false positiveDecoded base64 content: n��r)� �-�v����
Detected by automated pattern matching (rule DO-BAS) with medium confidence. May be a false positive.
Report false positiveDecoded base64 content: {��׃j��v��7�
Detected by automated pattern matching (rule DO-BAS) with medium confidence. May be a false positive.
Report false positiveDecoded base64 content: J�b�'���ӭ�즊�
Detected by automated pattern matching (rule DO-BAS) with medium confidence. May be a false positive.
Report false positiveDecoded base64 content: ��ڽ�^zp��W�Z+a
Detected by automated pattern matching (rule DO-BAS) with medium confidence. May be a false positive.
Report false positiveDecoded base64 content: ��ڽ�^zp��W�Z+a
Detected by automated pattern matching (rule DO-BAS) with medium confidence. May be a false positive.
Report false positiveDecoded base64 content: ��ڽ�^zp��W�Z+a
Detected by automated pattern matching (rule DO-BAS) with medium confidence. May be a false positive.
Report false positiveDecoded base64 content: ��ڽ�^zp��W�Z+a
Detected by automated pattern matching (rule DO-BAS) with medium confidence. May be a false positive.
Report false positiveDecoded base64 content: ��N�s뢗�� ޱ���+
Detected by automated pattern matching (rule DO-BAS) with medium confidence. May be a false positive.
Report false positiveDecoded base64 content: ��ۖ�������Z��^
Detected by automated pattern matching (rule DO-BAS) with medium confidence. May be a false positive.
Report false positiveDecoded base64 content: �����) X���'�ؚ�,ڶ*'
Detected by automated pattern matching (rule DO-BAS) with medium confidence. May be a false positive.
Report false positiveHigh-entropy string (4.8 bits/char) — possible encoded payload
Detected by automated pattern matching (rule EN-001) with medium confidence. May be a false positive.
Report false positiveHigh-entropy string (5.0 bits/char) — possible encoded payload
Detected by automated pattern matching (rule EN-001) with medium confidence. May be a false positive.
Report false positiveHigh-entropy string (4.6 bits/char) — possible encoded payload
Detected by automated pattern matching (rule EN-001) with medium confidence. May be a false positive.
Report false positiveHigh-entropy string (5.0 bits/char) — possible encoded payload
Detected by automated pattern matching (rule EN-001) with medium confidence. May be a false positive.
Report false positiveHigh-entropy string (4.9 bits/char) — possible encoded payload
Detected by automated pattern matching (rule EN-001) with medium confidence. May be a false positive.
Report false positiveHigh-entropy string (5.3 bits/char) — possible encoded payload
Detected by automated pattern matching (rule EN-001) with medium confidence. May be a false positive.
Report false positiveHigh-entropy string (5.1 bits/char) — possible encoded payload
Detected by automated pattern matching (rule EN-001) with medium confidence. May be a false positive.
Report false positiveHigh-entropy string (4.6 bits/char) — possible encoded payload
Detected by automated pattern matching (rule EN-001) with medium confidence. May be a false positive.
Report false positiveHigh-entropy string (5.4 bits/char) — possible encoded payload
Detected by automated pattern matching (rule EN-001) with medium confidence. May be a false positive.
Report false positiveHigh-entropy string (4.8 bits/char) — possible encoded payload
Detected by automated pattern matching (rule EN-001) with medium confidence. May be a false positive.
Report false positiveHigh-entropy string (4.6 bits/char) — possible encoded payload
Detected by automated pattern matching (rule EN-001) with medium confidence. May be a false positive.
Report false positiveHigh-entropy string (4.7 bits/char) — possible encoded payload
Detected by automated pattern matching (rule EN-001) with medium confidence. May be a false positive.
Report false positiveHigh-entropy string (4.7 bits/char) — possible encoded payload
Detected by automated pattern matching (rule EN-001) with medium confidence. May be a false positive.
Report false positiveJavaScript fetch() call
Detected by automated pattern matching (rule NS-003) with medium confidence. May be a false positive.
10: const requestOAuthToken = async (ssoBaseURL, params) => {
11: const tokenUrl = new URL('/sso/oauth2/token', ssoBaseURL).toString();
>>> 12: const res = await fetch(tokenUrl, {
13: method: 'POST',
14: headers: {Report false positiveHigh-entropy string (4.6 bits/char) — possible encoded payload
Detected by automated pattern matching (rule EN-001) with medium confidence. May be a false positive.
Report false positiveJavaScript fetch() call
Detected by automated pattern matching (rule NS-003) with medium confidence. May be a false positive.
21: authUrl.pathname = '/platform/oauth2/authorization/dynatrace-sso';
22: // Make a HEAD request with redirect: 'manual' to get the Location header
>>> 23: const response = await fetch(authUrl.toString(), {
24: method: 'HEAD',
25: redirect: 'manual', // Don't follow redirects automaticallyReport false positiveHigh-entropy string (4.6 bits/char) — possible encoded payload
Detected by automated pattern matching (rule EN-001) with medium confidence. May be a false positive.
Report false positivePossible Base64-encoded payload (long encoded string)
Detected by automated pattern matching (rule OB-001) with medium confidence. May be a false positive.
11: <img src="https://img.shields.io/badge/Install_in-VS_Code-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white" />
12: </a>
>>> 13: <a href="[https://vscode.dev/redirect/mcp/install?name=dynatrace-mcp-server&config=%7B%22command%22%3A%22npx%22%2C%22args%22%3A%5B%22-y%22%2C%22%40dynatrace-oss%2Fdynatrace-mcp-server%22%5D%2C%22env%22%3A%7B%7D%7D](https://cursor.com/en/install-mcp?name=dynatrace-mcp-server&config=eyJuYW1lIjoiZHluYXRyYWNlLW1jcC1zZXJ2ZXIiLCJjb21tYW5kIjoibnB4IiwiYXJncyI6WyIteSIsIkBkeW5hdHJhY2Utb3NzL2R5bmF0cmFjZS1tY3Atc2VydmVyIl0sImVudiI6e319)">
14: <img src="https://img.shields.io/badge/Install_in-Cursor-000000?style=flat-square&logoColor=white" />
15: </a>Report false positiveHigh-entropy string (4.5 bits/char) — possible encoded payload
Detected by automated pattern matching (rule EN-001) with medium confidence. May be a false positive.
Report false positiveHigh-entropy string (4.7 bits/char) — possible encoded payload
Detected by automated pattern matching (rule EN-001) with medium confidence. May be a false positive.
Report false positiveHigh-entropy string (4.9 bits/char) — possible encoded payload
Detected by automated pattern matching (rule EN-001) with medium confidence. May be a false positive.
Report false positiveHigh-entropy string (4.8 bits/char) — possible encoded payload
Detected by automated pattern matching (rule EN-001) with medium confidence. May be a false positive.
Report false positiveJavaScript fetch() call
Detected by automated pattern matching (rule NS-003) with medium confidence. May be a false positive.
142: // This should help to see if DNS lookup works, TCP connection can be established, and TLS handshake works
143: try {
>>> 144: const response = await fetch(`${dtEnvironment}`).then((response) => response.text());
145: // check response
146: if (response && response.length > 0) {Report false positiveHigh-entropy string (4.6 bits/char) — possible encoded payload
Detected by automated pattern matching (rule EN-001) with medium confidence. May be a false positive.
Report false positiveHigh-entropy string (5.0 bits/char) — possible encoded payload
Detected by automated pattern matching (rule EN-001) with medium confidence. May be a false positive.
Report false positiveHigh-entropy string (4.7 bits/char) — possible encoded payload
Detected by automated pattern matching (rule EN-001) with medium confidence. May be a false positive.
Report false positiveHigh-entropy string (4.6 bits/char) — possible encoded payload
Detected by automated pattern matching (rule EN-001) with medium confidence. May be a false positive.
Report false positiveHigh-entropy string (4.7 bits/char) — possible encoded payload
Detected by automated pattern matching (rule EN-001) with medium confidence. May be a false positive.
Report false positiveHigh-entropy string (4.5 bits/char) — possible encoded payload
Detected by automated pattern matching (rule EN-001) with medium confidence. May be a false positive.
Report false positiveHigh-entropy string (4.6 bits/char) — possible encoded payload
Detected by automated pattern matching (rule EN-001) with medium confidence. May be a false positive.
Report false positiveHigh-entropy string (4.6 bits/char) — possible encoded payload
Detected by automated pattern matching (rule EN-001) with medium confidence. May be a false positive.
Report false positiveHigh-entropy string (4.7 bits/char) — possible encoded payload
Detected by automated pattern matching (rule EN-001) with medium confidence. May be a false positive.
Report false positiveHigh-entropy string (4.7 bits/char) — possible encoded payload
Detected by automated pattern matching (rule EN-001) with medium confidence. May be a false positive.
Report false positiveHigh-entropy string (4.7 bits/char) — possible encoded payload
Detected by automated pattern matching (rule EN-001) with medium confidence. May be a false positive.
Report false positiveHigh-entropy string (4.6 bits/char) — possible encoded payload
Detected by automated pattern matching (rule EN-001) with medium confidence. May be a false positive.
Report false positiveHigh-entropy string (5.0 bits/char) — possible encoded payload
Detected by automated pattern matching (rule EN-001) with medium confidence. May be a false positive.
Report false positiveHigh-entropy string (4.8 bits/char) — possible encoded payload
Detected by automated pattern matching (rule EN-001) with medium confidence. May be a false positive.
Report false positiveHigh-entropy string (4.8 bits/char) — possible encoded payload
Detected by automated pattern matching (rule EN-001) with medium confidence. May be a false positive.
Report false positiveHigh-entropy string (4.5 bits/char) — possible encoded payload
Detected by automated pattern matching (rule EN-001) with medium confidence. May be a false positive.
Report false positiveHigh-entropy string (4.6 bits/char) — possible encoded payload
Detected by automated pattern matching (rule EN-001) with medium confidence. May be a false positive.
Report false positiveHigh-entropy string (4.8 bits/char) — possible encoded payload
Detected by automated pattern matching (rule EN-001) with medium confidence. May be a false positive.
Report false positiveHigh-entropy string (4.7 bits/char) — possible encoded payload
Detected by automated pattern matching (rule EN-001) with medium confidence. May be a false positive.
Report false positiveHigh-entropy string (4.5 bits/char) — possible encoded payload
Detected by automated pattern matching (rule EN-001) with medium confidence. May be a false positive.
Report false positiveHigh-entropy string (4.6 bits/char) — possible encoded payload
Detected by automated pattern matching (rule EN-001) with medium confidence. May be a false positive.
Report false positiveHigh-entropy string (4.7 bits/char) — possible encoded payload
Detected by automated pattern matching (rule EN-001) with medium confidence. May be a false positive.
Report false positiveHigh-entropy string (4.9 bits/char) — possible encoded payload
Detected by automated pattern matching (rule EN-001) with medium confidence. May be a false positive.
Report false positiveHigh-entropy string (4.6 bits/char) — possible encoded payload
Detected by automated pattern matching (rule EN-001) with medium confidence. May be a false positive.
Report false positiveHigh-entropy string (4.9 bits/char) — possible encoded payload
Detected by automated pattern matching (rule EN-001) with medium confidence. May be a false positive.
Report false positiveHigh-entropy string (4.5 bits/char) — possible encoded payload
Detected by automated pattern matching (rule EN-001) with medium confidence. May be a false positive.
Report false positiveHigh-entropy string (4.5 bits/char) — possible encoded payload
Detected by automated pattern matching (rule EN-001) with medium confidence. May be a false positive.
Report false positiveScan History
| Date | Risk | Findings | Files | Duration |
|---|---|---|---|---|
| Feb 23, 2026 | critical | 198 | 50 | 0.00s |
| Feb 22, 2026 | critical | 198 | 50 | 0.00s |