Skip to content

Bump actions/setup-node from 4 to 6 #5

Bump actions/setup-node from 4 to 6

Bump actions/setup-node from 4 to 6 #5

Workflow file for this run

name: CI
on:
push:
branches: [main]
pull_request:
branches: [main]
permissions:
contents: read
jobs:
test:
name: Test
runs-on: ubuntu-latest
strategy:
matrix:
node-version: [18, 20, 22]
steps:
- uses: actions/checkout@v4
- name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v6
with:
node-version: ${{ matrix.node-version }}
cache: npm
- name: Install dependencies
run: npm ci
- name: Run tests
run: npm test
security-audit:
name: Security Audit
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Use Node.js 20
uses: actions/setup-node@v6
with:
node-version: 20
cache: npm
- name: Install dependencies
run: npm ci
- name: Run npm audit
run: npm audit --audit-level=high
zero-network-check:
name: Zero Network Verification
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Verify no network calls in source
run: |
echo "Checking for network API usage in source files..."
if grep -rn "fetch\|XMLHttpRequest\|WebSocket\|\.ajax\|sendBeacon\|new Request" \
--include="*.js" --include="*.html" \
--exclude-dir=node_modules --exclude-dir=.git \
--exclude="build.js" .; then
echo "::error::Network API calls detected! FirePath must remain zero-network."
exit 1
fi
echo "✓ No network calls found — privacy guarantee intact."
build:
name: Build
runs-on: ubuntu-latest
needs: [test, security-audit, zero-network-check]
steps:
- uses: actions/checkout@v4
- name: Use Node.js 20
uses: actions/setup-node@v6
with:
node-version: 20
cache: npm
- name: Install dependencies
run: npm ci
- name: Build standalone HTML
run: node build.js
- name: Upload build artifact
uses: actions/upload-artifact@v4
with:
name: fire_calculator
path: fire_calculator.html
retention-days: 30