Skip to content

refactored authentication and deleted generated/client folder from pr… #54

refactored authentication and deleted generated/client folder from pr…

refactored authentication and deleted generated/client folder from pr… #54

Workflow file for this run

name: Checks
on:
push:
branches: [dev]
jobs:
lint:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6
- name: Setup Node.js
uses: actions/setup-node@v6
with:
node-version: "25.2.1"
cache: "npm"
- name: Install dependencies
run: npm install
- name: Lint
run: npm run lint
continue-on-error: true
- name: Typecheck
run: npx tsc --noEmit
build-macos:
runs-on: macos-latest
steps:
- uses: actions/checkout@v6
- name: Setup desktop build toolchain
uses: ./.github/actions/setup-desktop-build
with:
platform: macos
- name: Build macOS bundle
run: npm run build:macos
build-windows:
runs-on: windows-latest
steps:
- uses: actions/checkout@v6
- name: Setup desktop build toolchain
uses: ./.github/actions/setup-desktop-build
with:
platform: windows
- name: Build MSIX bundle
run: npm run build:windows
build-docker:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6
- name: Build Docker image
run: docker compose build app-prod
benchmark:
runs-on: ubuntu-latest
strategy:
matrix:
browser: [chromium, webkit]
steps:
- uses: actions/checkout@v6
- name: Setup Node.js
uses: actions/setup-node@v6
with:
node-version: "25.2.1"
cache: "npm"
- name: Install dependencies
run: npm install
- name: Get Playwright version
id: pw-version
run: echo "version=$(node -e "console.log(require('./node_modules/playwright-core/package.json').version)")" >> $GITHUB_OUTPUT
- name: Cache Playwright browser
uses: actions/cache@v4
id: pw-cache
with:
path: ~/.cache/ms-playwright
key: playwright-${{ matrix.browser }}-${{ steps.pw-version.outputs.version }}
- name: Install Playwright browser and system deps
if: steps.pw-cache.outputs.cache-hit != 'true'
run: npx playwright install --with-deps ${{ matrix.browser }}
- name: Install Playwright system deps only
if: steps.pw-cache.outputs.cache-hit == 'true'
run: npx playwright install-deps ${{ matrix.browser }}
- name: Run benchmarks
run: npx vitest bench --project ${{ matrix.browser }}
- name: Upload benchmark results
uses: actions/upload-artifact@v4
with:
name: bench-results-${{ matrix.browser }}
path: bench-results.json
retention-days: 90
overwrite: true
benchmark-compare:
runs-on: ubuntu-latest
needs: benchmark
steps:
- uses: actions/checkout@v6
- name: Setup Node.js
uses: actions/setup-node@v6
with:
node-version: "25.2.1"
cache: "npm"
- name: Download chromium results
uses: actions/download-artifact@v4
with:
name: bench-results-chromium
path: bench-current-chromium
- name: Download webkit results
uses: actions/download-artifact@v4
with:
name: bench-results-webkit
path: bench-current-webkit
- name: Merge current results
run: node scripts/merge-bench.mjs bench-current-chromium/bench-results.json bench-current-webkit/bench-results.json > bench-results.json
- name: Download previous benchmark baseline
uses: dawidd6/action-download-artifact@v9
continue-on-error: true
with:
name: bench-results
path: bench-baseline
workflow: checks.yaml
branch: ${{ github.ref_name }}
if_no_artifact_found: warn
- name: Compare and report
run: |
if [ -f bench-baseline/bench-results.json ]; then
node scripts/compare-bench.mjs bench-baseline/bench-results.json bench-results.json >> $GITHUB_STEP_SUMMARY
else
echo "<h2>Benchmark Results</h2><p>No baseline found — results uploaded as the new baseline.</p>" >> $GITHUB_STEP_SUMMARY
fi
continue-on-error: true
- name: Upload merged benchmark results as new baseline
uses: actions/upload-artifact@v4
with:
name: bench-results
path: bench-results.json
retention-days: 90
overwrite: true