Skip to content

chore(deps): bump the non-critical group across 1 directory with 20 updates #18

chore(deps): bump the non-critical group across 1 directory with 20 updates

chore(deps): bump the non-critical group across 1 directory with 20 updates #18

Workflow file for this run

name: SDK CI
on:
push:
paths:
- "sdk/**"
pull_request:
paths:
- "sdk/**"
jobs:
# ── Build + unit tests ─────────────────────────────────────────────────────
sdk-test:
name: SDK — build & test
runs-on: ubuntu-latest
defaults:
run:
working-directory: sdk
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: 20.x
cache: npm
cache-dependency-path: package-lock.json
- name: Install dependencies
run: npm ci
working-directory: .
- name: Type-check
run: npm run lint
- name: Run unit tests (including browser smoke test)
run: npm test
- name: Build all bundles
run: npm run build
# ── Bundle size budget ─────────────────────────────────────────────────────
sdk-bundle-size:
name: SDK — browser bundle size budget
runs-on: ubuntu-latest
needs: sdk-test
defaults:
run:
working-directory: sdk
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: 20.x
cache: npm
cache-dependency-path: package-lock.json
- name: Install dependencies
run: npm ci
working-directory: .
- name: Build bundles
run: npm run build
- name: Run size-limit budget check
run: npx size-limit --json
# The budgets are declared in package.json "size-limit" field:
# - dist/browser/index.global.js ≤ 120 kB gzipped
# - dist/browser/index.esm.mjs ≤ 120 kB gzipped
# - dist/index.js ≤ 150 kB gzipped
# The job fails if any artifact exceeds its budget.
- name: Upload browser bundle as artifact
uses: actions/upload-artifact@v4
with:
name: sdk-browser-bundle
path: |
sdk/dist/browser/index.global.js
sdk/dist/browser/index.global.js.map
sdk/dist/browser/index.esm.mjs
retention-days: 14