Skip to content

fix: signing view + Hermes ICU fallback — flow-aware modal open, clos… #178

fix: signing view + Hermes ICU fallback — flow-aware modal open, clos…

fix: signing view + Hermes ICU fallback — flow-aware modal open, clos… #178

Workflow file for this run

name: CI
on:
push:
branches: [main, master]
pull_request:
branches: [main, master]
# Cancel in-progress runs on the same PR/branch when a new commit lands.
# Saves CI minutes and avoids confusing "is this from the old commit?" questions.
concurrency:
group: ci-${{ github.ref }}
cancel-in-progress: true
jobs:
# ---------------------------------------------------------------------------
# Job 1: typecheck + build + test on Linux with Bun
# ---------------------------------------------------------------------------
build-and-test:
name: Build & Test (bun ${{ matrix.bun-version }} on ${{ matrix.os }})
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
os: [ubuntu-latest]
bun-version: ['1.3.14']
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Setup Bun
uses: oven-sh/setup-bun@v2
with:
bun-version: ${{ matrix.bun-version }}
- name: Print versions
run: |
echo "bun: $(bun --version)"
echo "node: $(node --version 2>/dev/null || echo 'n/a')"
echo "tsc: $(bunx tsc --version 2>/dev/null || echo 'n/a')"
- name: Install dependencies
run: bun install --frozen-lockfile
- name: Typecheck (core)
run: bun run --cwd packages/core typecheck
# Build core BEFORE typechecking siws-verify — siws-verify's src
# imports from '@saganta/stellar-appkit', which resolves via the
# workspace symlink to packages/core/dist. Without this build step
# first, tsc can't find core's type declarations.
- name: Build (core)
run: bun run --cwd packages/core build
- name: Typecheck (siws-verify)
run: bun run --cwd packages/siws-verify typecheck
- name: Build (siws-verify)
run: bun run --cwd packages/siws-verify build
- name: Test
run: bun test
timeout-minutes: 5
# ---------------------------------------------------------------------------
# Job 2: cross-platform sanity check (macOS) — only runs after Linux passes
# to save CI minutes. Wallet SDKs that touch `window` are skipped at runtime
# by the connectors themselves, so the connector tests run identically
# across platforms; this job mostly catches platform-specific path/encoding
# issues that are easy to miss otherwise.
# ---------------------------------------------------------------------------
cross-platform:
name: Cross-platform check (macOS)
needs: build-and-test
runs-on: macos-latest
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Setup Bun
uses: oven-sh/setup-bun@v2
with:
bun-version: '1.3.14'
- name: Install dependencies
run: bun install --frozen-lockfile
- name: Typecheck (core)
run: bun run --cwd packages/core typecheck
- name: Build (core)
run: bun run --cwd packages/core build
- name: Typecheck (siws-verify)
run: bun run --cwd packages/siws-verify typecheck
- name: Test
run: bun test
timeout-minutes: 5