From 4cd50dbfffab31c0f44df3180519acc44096d267 Mon Sep 17 00:00:00 2001 From: ROBOT Date: Sun, 28 Jun 2026 05:40:51 +0000 Subject: [PATCH 01/13] fix: add caching step to improve build performance --- .github/workflows/setup/action.yml | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/.github/workflows/setup/action.yml b/.github/workflows/setup/action.yml index 7ca6fc62..945574eb 100644 --- a/.github/workflows/setup/action.yml +++ b/.github/workflows/setup/action.yml @@ -24,6 +24,12 @@ runs: cache-from: type=gha cache-to: type=gha,mode=max + - name: Use cache + uses: actions/cache@v6 + with: + path: .cache + key: ${{ runner.os }}-cache-${{ hashFiles('**/bun.lock') }} + - name: Checkout Container working-directory: ./docker/ shell: bash From 37a33a725271b33bc38e800bb1c7518627a507fe Mon Sep 17 00:00:00 2001 From: ROBOT Date: Sun, 28 Jun 2026 08:25:16 +0000 Subject: [PATCH 02/13] fix: update setup script to specify playwright browsers path --- src/presentation/web/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/presentation/web/package.json b/src/presentation/web/package.json index a8ebec8c..97905dba 100644 --- a/src/presentation/web/package.json +++ b/src/presentation/web/package.json @@ -12,7 +12,7 @@ "check:watch": "svelte-kit sync && svelte-check --tsconfig ./tsconfig.json --watch", "lint": "prettier --check . && eslint .", "format": "prettier --write .", - "setup": "playwright install --with-deps && npm run build-storybook", + "setup": "PLAYWRIGHT_BROWSERS_PATH=../../../.cache/ms-playwright playwright install --with-deps && npm run build-storybook", "test:unit": "vitest", "test": "npm run test:unit -- --run && npm run test:e2e", "test:e2e": "playwright test", From 81dda2773f0601628aec9c955ba0cac0e1f08127 Mon Sep 17 00:00:00 2001 From: ROBOT Date: Sun, 28 Jun 2026 08:28:11 +0000 Subject: [PATCH 03/13] fix: correct user group ID check in Dockerfile --- docker/dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docker/dockerfile b/docker/dockerfile index 5721c925..159505b7 100644 --- a/docker/dockerfile +++ b/docker/dockerfile @@ -30,7 +30,7 @@ RUN apt-get update \ && rm -rf /var/lib/apt/lists/* RUN [[ $(id -u ubuntu) = $USER_UID ]] || usermod -u $USER_UID ubuntu \ - && [[ $(id -u ubuntu) = $USER_GID ]] || groupmod -g $USER_GID ubuntu \ + && [[ $(id -g ubuntu) = $USER_GID ]] || groupmod -g $USER_GID ubuntu \ && echo "ubuntu ALL=NOPASSWD: ALL" > /etc/sudoers.d/ubuntu \ && chmod 0440 /etc/sudoers.d/ubuntu From 08ef7f36ddf7264b53c10e1239615c0a9bd78551 Mon Sep 17 00:00:00 2001 From: ROBOT Date: Sun, 28 Jun 2026 08:30:50 +0000 Subject: [PATCH 04/13] fix: remove unused cache volume from docker-compose.yml --- docker/docker-compose.yml | 2 -- 1 file changed, 2 deletions(-) diff --git a/docker/docker-compose.yml b/docker/docker-compose.yml index 4d9e6a4d..8e8ebe9c 100644 --- a/docker/docker-compose.yml +++ b/docker/docker-compose.yml @@ -29,13 +29,11 @@ services: command: sleep infinity volumes: - ..:/workspaces/distopia:cached - - distopia-cache:/workspaces/distopia/.cache - distopia-node-modules:/workspaces/distopia/node_modules volumes: distopia-db-store: external: true - distopia-cache: distopia-node-modules: networks: From 73e0eab803e38a66fe9d60d2cf88ea2fdf43f429 Mon Sep 17 00:00:00 2001 From: ROBOT Date: Sun, 28 Jun 2026 08:33:41 +0000 Subject: [PATCH 05/13] fix: refine caching steps for Bun install and Playwright browsers --- .github/workflows/setup/action.yml | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/.github/workflows/setup/action.yml b/.github/workflows/setup/action.yml index 945574eb..d934fadc 100644 --- a/.github/workflows/setup/action.yml +++ b/.github/workflows/setup/action.yml @@ -24,12 +24,20 @@ runs: cache-from: type=gha cache-to: type=gha,mode=max - - name: Use cache + - name: Cache Bun install uses: actions/cache@v6 with: - path: .cache + path: .cache/bun/install key: ${{ runner.os }}-cache-${{ hashFiles('**/bun.lock') }} + - name: Cache Playwright browsers + uses: actions/cache@v6 + with: + path: .cache/ms-playwright + key: ${{ runner.os }}-playwright-${{ hashFiles('src/presentation/web/package.json') }} + restore-keys: | + ${{ runner.os }}-playwright- + - name: Checkout Container working-directory: ./docker/ shell: bash From f74225e420a97216b788f51e31af46fc8d5f7eee Mon Sep 17 00:00:00 2001 From: ROBOT Date: Sun, 28 Jun 2026 08:47:38 +0000 Subject: [PATCH 06/13] fix: add caching for Turbo build process --- .github/workflows/setup/action.yml | 8 ++++++++ turbo.json | 1 + 2 files changed, 9 insertions(+) diff --git a/.github/workflows/setup/action.yml b/.github/workflows/setup/action.yml index d934fadc..636426e7 100644 --- a/.github/workflows/setup/action.yml +++ b/.github/workflows/setup/action.yml @@ -38,6 +38,14 @@ runs: restore-keys: | ${{ runner.os }}-playwright- + - name: Cache Turbo + uses: actions/cache@v6 + with: + path: .cache/turbo + key: ${{ runner.os }}-turbo-${{ github.sha }} + restore-keys: | + ${{ runner.os }}-turbo- + - name: Checkout Container working-directory: ./docker/ shell: bash diff --git a/turbo.json b/turbo.json index 1c13923b..a6ac9101 100644 --- a/turbo.json +++ b/turbo.json @@ -1,5 +1,6 @@ { "$schema": "./node_modules/turbo/schema.json", + "cacheDir": ".cache/turbo", "tasks": { "build": { "dependsOn": ["^build"], From c844adec56992b63c2690b4b2538561e19ce05e7 Mon Sep 17 00:00:00 2001 From: ROBOT Date: Sun, 28 Jun 2026 08:49:57 +0000 Subject: [PATCH 07/13] fix: update Bun install cache key and restore keys --- .github/workflows/setup/action.yml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/.github/workflows/setup/action.yml b/.github/workflows/setup/action.yml index 636426e7..71062cab 100644 --- a/.github/workflows/setup/action.yml +++ b/.github/workflows/setup/action.yml @@ -28,7 +28,9 @@ runs: uses: actions/cache@v6 with: path: .cache/bun/install - key: ${{ runner.os }}-cache-${{ hashFiles('**/bun.lock') }} + key: ${{ runner.os }}-bun-install-${{ hashFiles('**/bun.lock') }} + restore-keys: | + ${{ runner.os }}-bun-install- - name: Cache Playwright browsers uses: actions/cache@v6 From f34963bc1dda55cdd58ca9d5a3d0db2556f9fe68 Mon Sep 17 00:00:00 2001 From: ROBOT Date: Sun, 28 Jun 2026 08:59:14 +0000 Subject: [PATCH 08/13] fix: update Playwright test command to include browser path --- src/presentation/web/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/presentation/web/package.json b/src/presentation/web/package.json index 97905dba..e3365555 100644 --- a/src/presentation/web/package.json +++ b/src/presentation/web/package.json @@ -15,7 +15,7 @@ "setup": "PLAYWRIGHT_BROWSERS_PATH=../../../.cache/ms-playwright playwright install --with-deps && npm run build-storybook", "test:unit": "vitest", "test": "npm run test:unit -- --run && npm run test:e2e", - "test:e2e": "playwright test", + "test:e2e": "PLAYWRIGHT_BROWSERS_PATH=../../../.cache/ms-playwright playwright test", "storybook": "storybook dev -p 6006", "build-storybook": "storybook build" }, From a99a75b1cef93542ba6817f8e67412dfd6331e3d Mon Sep 17 00:00:00 2001 From: ROBOT Date: Mon, 29 Jun 2026 01:17:20 +0000 Subject: [PATCH 09/13] fix: simplify Playwright setup and test commands --- src/presentation/web/package.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/presentation/web/package.json b/src/presentation/web/package.json index e3365555..98132700 100644 --- a/src/presentation/web/package.json +++ b/src/presentation/web/package.json @@ -12,10 +12,10 @@ "check:watch": "svelte-kit sync && svelte-check --tsconfig ./tsconfig.json --watch", "lint": "prettier --check . && eslint .", "format": "prettier --write .", - "setup": "PLAYWRIGHT_BROWSERS_PATH=../../../.cache/ms-playwright playwright install --with-deps && npm run build-storybook", + "setup": "playwright install --with-deps", "test:unit": "vitest", "test": "npm run test:unit -- --run && npm run test:e2e", - "test:e2e": "PLAYWRIGHT_BROWSERS_PATH=../../../.cache/ms-playwright playwright test", + "test:e2e": "playwright test", "storybook": "storybook dev -p 6006", "build-storybook": "storybook build" }, From aaeab09314cfa0744f03f20ca78d31fbdc8336db Mon Sep 17 00:00:00 2001 From: ROBOT Date: Mon, 29 Jun 2026 01:26:00 +0000 Subject: [PATCH 10/13] fix: remove cacheDir from Turbo configuration --- .github/workflows/setup/action.yml | 16 ---------------- turbo.json | 1 - 2 files changed, 17 deletions(-) diff --git a/.github/workflows/setup/action.yml b/.github/workflows/setup/action.yml index 71062cab..4aba2fbd 100644 --- a/.github/workflows/setup/action.yml +++ b/.github/workflows/setup/action.yml @@ -32,22 +32,6 @@ runs: restore-keys: | ${{ runner.os }}-bun-install- - - name: Cache Playwright browsers - uses: actions/cache@v6 - with: - path: .cache/ms-playwright - key: ${{ runner.os }}-playwright-${{ hashFiles('src/presentation/web/package.json') }} - restore-keys: | - ${{ runner.os }}-playwright- - - - name: Cache Turbo - uses: actions/cache@v6 - with: - path: .cache/turbo - key: ${{ runner.os }}-turbo-${{ github.sha }} - restore-keys: | - ${{ runner.os }}-turbo- - - name: Checkout Container working-directory: ./docker/ shell: bash diff --git a/turbo.json b/turbo.json index a6ac9101..1c13923b 100644 --- a/turbo.json +++ b/turbo.json @@ -1,6 +1,5 @@ { "$schema": "./node_modules/turbo/schema.json", - "cacheDir": ".cache/turbo", "tasks": { "build": { "dependsOn": ["^build"], From ae17db4c98c4a79c8b0ec65dfa9ed7345ef05877 Mon Sep 17 00:00:00 2001 From: ROBOT Date: Mon, 29 Jun 2026 02:15:06 +0000 Subject: [PATCH 11/13] fix: add caching option to setup task in Turbo configuration --- turbo.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/turbo.json b/turbo.json index 1c13923b..d5ee4b8d 100644 --- a/turbo.json +++ b/turbo.json @@ -16,7 +16,8 @@ "dependsOn": ["^format"] }, "setup": { - "dependsOn": ["^setup"] + "dependsOn": ["^setup"], + "cache": false }, "typecheck": { "dependsOn": ["^typecheck"] From 5cefbbce6711a8a195b3e6af00bce83b2d92a28c Mon Sep 17 00:00:00 2001 From: ROBOT Date: Mon, 29 Jun 2026 04:10:38 +0000 Subject: [PATCH 12/13] fix: update web server command in Playwright config and adjust task dependencies in Turbo configuration --- src/presentation/web/playwright.config.ts | 2 +- turbo.json | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/presentation/web/playwright.config.ts b/src/presentation/web/playwright.config.ts index 9e6d5ec1..5c79bbaf 100644 --- a/src/presentation/web/playwright.config.ts +++ b/src/presentation/web/playwright.config.ts @@ -6,7 +6,7 @@ export default defineConfig({ baseURL: "http://localhost:4173", }, webServer: { - command: "npm run build && npm run preview", + command: "npm run preview", port: 4173, // Reuse the server if it is already running (e.g. from a previous test run or `npm run preview`). reuseExistingServer: true, diff --git a/turbo.json b/turbo.json index d5ee4b8d..0df058a3 100644 --- a/turbo.json +++ b/turbo.json @@ -6,7 +6,7 @@ "cache": false }, "test": { - "dependsOn": ["^test"], + "dependsOn": ["build", "^test"], "cache": false }, "lint": { From 51580e99ca60729edc22598284ede8550ab1dfed Mon Sep 17 00:00:00 2001 From: ROBOT Date: Mon, 29 Jun 2026 04:18:33 +0000 Subject: [PATCH 13/13] fix: synchronize command settings between development and production Docker configurations --- docker/docker-compose.dev.yml | 1 + docker/docker-compose.yml | 1 - 2 files changed, 1 insertion(+), 1 deletion(-) diff --git a/docker/docker-compose.dev.yml b/docker/docker-compose.dev.yml index 294ecc20..bab86172 100644 --- a/docker/docker-compose.dev.yml +++ b/docker/docker-compose.dev.yml @@ -6,6 +6,7 @@ services: hostname: thunlights container_name: distopia-dev working_dir: /workspaces/distopia + command: sleep infinity ports: - "127.0.0.1:${PROD_PORT:-3000}:3000" - "127.0.0.1:${DEV_PORT:-5173}:5173" diff --git a/docker/docker-compose.yml b/docker/docker-compose.yml index 8e8ebe9c..d322da35 100644 --- a/docker/docker-compose.yml +++ b/docker/docker-compose.yml @@ -26,7 +26,6 @@ services: init: true networks: - distopia-network - command: sleep infinity volumes: - ..:/workspaces/distopia:cached - distopia-node-modules:/workspaces/distopia/node_modules