From f93ed81787403b60daa477c80be6b911f6b0a936 Mon Sep 17 00:00:00 2001 From: Matteo Date: Tue, 12 May 2026 10:50:16 +0200 Subject: [PATCH] Fix two CodeQL findings: missing-await + Dockerfile HEALTHCHECK MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 1. site-settings.controller.ts: getFooterLinks() returned the unresolved Promise (Promise || [] is always truthy → '|| []' fallback was dead code). Now properly awaited so [] fallback works when there are no footer links. 2. Dockerfile: add HEALTHCHECK pointing at the backend Terminus /health endpoint (port 4000). 30s interval, 5s timeout, 30s start period, 3 retries. Satisfies Trivy DS-0026 and gives Docker/K8s/Compose a proper liveness signal. --- Dockerfile | 5 +++++ packages/backend/src/settings/site-settings.controller.ts | 4 +++- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/Dockerfile b/Dockerfile index baa5a2c4..f3fbacc4 100644 --- a/Dockerfile +++ b/Dockerfile @@ -113,4 +113,9 @@ LABEL org.opencontainers.image.title="AnythingMCP" \ USER appuser EXPOSE 3000 4000 +# Health check — backend exposes /health on port 4000. +# 30s interval, 5s timeout, 30s start period, 3 retries before unhealthy. +HEALTHCHECK --interval=30s --timeout=5s --start-period=30s --retries=3 \ + CMD wget --quiet --tries=1 --spider http://localhost:4000/health || exit 1 + CMD ["./start.sh"] diff --git a/packages/backend/src/settings/site-settings.controller.ts b/packages/backend/src/settings/site-settings.controller.ts index 3fff98ec..a638272f 100644 --- a/packages/backend/src/settings/site-settings.controller.ts +++ b/packages/backend/src/settings/site-settings.controller.ts @@ -150,7 +150,9 @@ export class SiteSettingsAdminController { @Get('footer-links') @ApiOperation({ summary: 'Get footer links for current organization (ADMIN)' }) async getFooterLinks(@Req() req: any) { - return this.orgSettings.getFooterLinks(req.user.organizationId) || []; + return ( + (await this.orgSettings.getFooterLinks(req.user.organizationId)) || [] + ); } @Put('footer-links')