Skip to content

πŸš€ release: v0.1.8 #1623

πŸš€ release: v0.1.8

πŸš€ release: v0.1.8 #1623

Workflow file for this run

name: CI
on:
pull_request:
paths-ignore:
- "docs/**"
push:
branches:
- main
paths-ignore:
- "docs/**"
permissions:
contents: read
pull-requests: write
concurrency:
group: ci-${{ github.event.pull_request.number || github.ref }}
cancel-in-progress: true
jobs:
# ── Shared setup anchor ────────────────────────────────────────────────────
# Every job repeats checkout + pnpm install; the pnpm store cache is shared
# across jobs so the install step is fast after the first run.
# ── Typecheck ──────────────────────────────────────────────────────────────
typecheck:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Setup pnpm
uses: pnpm/action-setup@v4
with:
version: 10.26.0
- name: Setup Node.js
uses: actions/setup-node@v4
with:
node-version: 24
cache: pnpm
cache-dependency-path: pnpm-lock.yaml
- name: Install dependencies
env:
NEXU_SKIP_RUNTIME_POSTINSTALL: "1"
run: pnpm install --frozen-lockfile
- name: Typecheck
run: pnpm typecheck
# ── Lint ───────────────────────────────────────────────────────────────────
lint:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Setup pnpm
uses: pnpm/action-setup@v4
with:
version: 10.26.0
- name: Setup Node.js
uses: actions/setup-node@v4
with:
node-version: 24
cache: pnpm
cache-dependency-path: pnpm-lock.yaml
- name: Install dependencies
env:
NEXU_SKIP_RUNTIME_POSTINSTALL: "1"
run: pnpm install --frozen-lockfile
- name: Lint
run: pnpm lint
# ── Test ──────────────────────────────────────────────────────────────────
test:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Setup pnpm
uses: pnpm/action-setup@v4
with:
version: 10.26.0
- name: Setup Node.js
uses: actions/setup-node@v4
with:
node-version: 24
cache: pnpm
cache-dependency-path: pnpm-lock.yaml
- name: Install dependencies
env:
NEXU_SKIP_RUNTIME_POSTINSTALL: "1"
run: pnpm install --frozen-lockfile
- name: Test
run: pnpm test
# ── openclaw-runtime lockfile sync ─────────────────────────────────────────
openclaw-runtime-lockfile:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Setup Node.js
uses: actions/setup-node@v4
with:
node-version: 24
- name: Verify openclaw-runtime lockfile is in sync
run: corepack npm ci --ignore-scripts --no-audit --no-fund
working-directory: openclaw-runtime
# ── Build + ESM check ─────────────────────────────────────────────────────
build:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Setup pnpm
uses: pnpm/action-setup@v4
with:
version: 10.26.0
- name: Setup Node.js
uses: actions/setup-node@v4
with:
node-version: 24
cache: pnpm
cache-dependency-path: pnpm-lock.yaml
- name: Install dependencies
env:
NEXU_SKIP_RUNTIME_POSTINSTALL: "1"
run: pnpm install --frozen-lockfile
- name: Build
run: pnpm build
- name: Verify ESM import specifiers
run: pnpm check:esm-imports