From 3d08a955d07d2fac72e3b268bf498d544d75b15b Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Thu, 21 May 2026 16:04:56 +0000 Subject: [PATCH 1/2] Initial plan From eccac0f16f1e806c3ac57c5624419687dcffc634 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Thu, 21 May 2026 16:09:01 +0000 Subject: [PATCH 2/2] fix(logs): make isContainerRunning test-helper only --- src/logs/log-discovery.test.ts | 10 +++++----- src/logs/log-discovery.ts | 6 +++++- 2 files changed, 10 insertions(+), 6 deletions(-) diff --git a/src/logs/log-discovery.test.ts b/src/logs/log-discovery.test.ts index 55274fffb..a30d01926 100644 --- a/src/logs/log-discovery.test.ts +++ b/src/logs/log-discovery.test.ts @@ -8,7 +8,7 @@ import * as os from 'os'; import { discoverLogSources, selectMostRecent, - isContainerRunning, + testHelpers, validateSource, listLogSources, } from './log-discovery'; @@ -42,7 +42,7 @@ describe('log-discovery', () => { it('should return true when container is running', async () => { mockedExeca.mockResolvedValue({ stdout: 'awf-squid', stderr: '' } as never); - const result = await isContainerRunning('awf-squid'); + const result = await testHelpers.isContainerRunning('awf-squid'); expect(result).toBe(true); expect(mockedExeca).toHaveBeenCalledWith('docker', [ @@ -57,7 +57,7 @@ describe('log-discovery', () => { it('should return false when container is not running', async () => { mockedExeca.mockResolvedValue({ stdout: '', stderr: '' } as never); - const result = await isContainerRunning('awf-squid'); + const result = await testHelpers.isContainerRunning('awf-squid'); expect(result).toBe(false); }); @@ -65,7 +65,7 @@ describe('log-discovery', () => { it('should return false when container name does not match exactly', async () => { mockedExeca.mockResolvedValue({ stdout: 'awf-squid-old', stderr: '' } as never); - const result = await isContainerRunning('awf-squid'); + const result = await testHelpers.isContainerRunning('awf-squid'); expect(result).toBe(false); }); @@ -73,7 +73,7 @@ describe('log-discovery', () => { it('should return false when docker command fails', async () => { mockedExeca.mockRejectedValue(new Error('Docker not available')); - const result = await isContainerRunning('awf-squid'); + const result = await testHelpers.isContainerRunning('awf-squid'); expect(result).toBe(false); }); diff --git a/src/logs/log-discovery.ts b/src/logs/log-discovery.ts index a7f9c6cb4..c33f88aae 100644 --- a/src/logs/log-discovery.ts +++ b/src/logs/log-discovery.ts @@ -145,7 +145,7 @@ export function selectMostRecent(sources: LogSource[]): LogSource | null { * @param containerName - Name of the container to check * @returns true if container is running, false otherwise */ -export async function isContainerRunning(containerName: string): Promise { +async function isContainerRunning(containerName: string): Promise { try { const { stdout } = await execa('docker', [ 'ps', @@ -163,6 +163,10 @@ export async function isContainerRunning(containerName: string): Promise