Skip to content

feat: Hermes Agent webhook dispatch mode (PER-81) #117

feat: Hermes Agent webhook dispatch mode (PER-81)

feat: Hermes Agent webhook dispatch mode (PER-81) #117

Workflow file for this run

name: CI
on:
push:
branches: [main]
pull_request:
branches: [main]
permissions:
contents: read
jobs:
lint:
name: Lint & Format
runs-on: ubuntu-latest
timeout-minutes: 5
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0
- uses: actions/setup-node@v4
with:
node-version: 24
cache: npm
- run: npm ci --ignore-scripts
- name: Lint changed files
run: |
CHANGED=$(git diff --name-only --diff-filter=ACMRT origin/main...HEAD -- '*.ts' '*.js' '*.json')
if [ -n "$CHANGED" ]; then
echo "Linting changed files:"
echo "$CHANGED"
npx biome ci $CHANGED
else
echo "No changed files to lint"
fi
typecheck:
name: TypeCheck
runs-on: ubuntu-latest
timeout-minutes: 5
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: 24
cache: npm
- run: npm ci --ignore-scripts
- run: npx tsc --noEmit
test:
name: Test & Coverage
runs-on: ubuntu-latest
timeout-minutes: 10
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: 24
cache: npm
- run: npm ci --ignore-scripts
- run: npx vitest run --coverage
env:
CI: "true"
- name: Upload coverage to Codecov
if: always()
uses: codecov/codecov-action@v5
with:
files: ./coverage/lcov.info
fail_ci_if_error: false
token: ${{ secrets.CODECOV_TOKEN }}