Skip to content

Comprehensive VaultService Memory Leak Prevention, Accessibility Enhancement, Test Infrastructure Fixes, Critical Runtime Error Resolution, and Complete Design System Overhaul #10

Comprehensive VaultService Memory Leak Prevention, Accessibility Enhancement, Test Infrastructure Fixes, Critical Runtime Error Resolution, and Complete Design System Overhaul

Comprehensive VaultService Memory Leak Prevention, Accessibility Enhancement, Test Infrastructure Fixes, Critical Runtime Error Resolution, and Complete Design System Overhaul #10

Workflow file for this run

name: Build Web Application
on:
push:
branches: [ main, develop, 'feature/*', 'fix/*', 'copilot/*' ]
paths-ignore:
- 'docs/**'
- '*.md'
pull_request:
branches: [ main, develop ]
paths-ignore:
- 'docs/**'
- '*.md'
workflow_dispatch:
jobs:
build-web:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Setup Node.js
uses: actions/setup-node@v4
with:
node-version-file: '.nvmrc'
cache: 'yarn'
- name: Install dependencies
run: |
for i in 1 2 3; do
yarn install --frozen-lockfile && break || sleep 10
done
- name: Build web application
run: ./scripts/build-web.sh
- name: Upload web artifacts
uses: actions/upload-artifact@v4
with:
name: web-build-${{ github.sha }}
path: deploy_*/
retention-days: 30
build-extensions:
runs-on: ubuntu-latest
needs: build-web
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Setup Node.js
uses: actions/setup-node@v4
with:
node-version-file: '.nvmrc'
cache: 'yarn'
- name: Install dependencies
run: |
for i in 1 2 3; do
yarn install --frozen-lockfile && break || sleep 10
done
- name: Build browser extensions
run: ./scripts/build-extensions.sh
- name: Upload extension artifacts
uses: actions/upload-artifact@v4
with:
name: browser-extensions-${{ github.sha }}
path: |
extension/*.zip
extension/extension-build-info.txt
retention-days: 30
test:
runs-on: ubuntu-latest
needs: build-web
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Setup Node.js
uses: actions/setup-node@v4
with:
node-version-file: '.nvmrc'
cache: 'yarn'
- name: Install dependencies
run: |
for i in 1 2 3; do
yarn install --frozen-lockfile && break || sleep 10
done
- name: Download web build artifacts
uses: actions/download-artifact@v4
with:
name: web-build-${{ github.sha }}
path: deploy_latest
- name: Run tests
run: yarn test --watchAll=false --coverage
- name: Install Playwright
run: yarn playwright:install
- name: Run E2E tests
run: yarn test:e2e
env:
# Use local build for E2E tests if needed
PLAYWRIGHT_BASE_URL: http://localhost:3000
- name: Upload test results
uses: actions/upload-artifact@v4
if: always()
with:
name: test-results-${{ github.sha }}
path: |
coverage/
playwright-report/
retention-days: 7