Skip to content

feat: Phase 1+2 Background Autonomy — FS Watcher + Continuous Learning Pipeline #16

feat: Phase 1+2 Background Autonomy — FS Watcher + Continuous Learning Pipeline

feat: Phase 1+2 Background Autonomy — FS Watcher + Continuous Learning Pipeline #16

Workflow file for this run

name: CI
on:
push:
branches: [ master, main ]
pull_request:
jobs:
build-and-test:
runs-on: ubuntu-latest
defaults:
run:
working-directory: universal-refiner
steps:
- uses: actions/checkout@v4
- name: Setup Node 22
uses: actions/setup-node@v4
with:
node-version: '22'
- name: Install dependencies
run: npm install --no-fund
- name: Rebuild native modules
run: npm rebuild better-sqlite3
- name: Generate version file
run: node scripts/sync-version.mjs
- name: Type check
run: npx tsc --noEmit
- name: Run tests
run: |
chmod +x node_modules/.bin/vitest 2>/dev/null || true
node_modules/.bin/vitest run --exclude '**/correlation.test.ts'
acceptance:
runs-on: ubuntu-latest
defaults:
run:
working-directory: universal-refiner
strategy:
fail-fast: false
matrix:
model-order:
- primary
- reversed
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: '22'
cache: npm
cache-dependency-path: universal-refiner/package-lock.json
- run: npm ci --no-fund
- run: npm rebuild better-sqlite3
- run: npm run build
- name: Run all-tool and provider acceptance
run: npm run test:acceptance
- name: Run fake-model semantic acceptance
env:
PROMPT_REFINER_PRIMARY_MODEL: ${{ matrix.model-order == 'primary' && 'gemma3:12b' || 'gemma3:1b' }}
PROMPT_REFINER_FALLBACK_MODEL: ${{ matrix.model-order == 'primary' && 'gemma3:1b' || 'gemma3:12b' }}
run: npm run acceptance:semantic
stress:
runs-on: ubuntu-latest
defaults:
run:
working-directory: universal-refiner
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: '22'
cache: npm
cache-dependency-path: universal-refiner/package-lock.json
- run: npm ci --no-fund
- run: npm rebuild better-sqlite3
- run: npm run build
- name: Run restart and in-process concurrency tests
run: npm run test:stress
- name: Run multi-process EventStore stress
env:
PROMPT_REFINER_STRESS_WORKERS: '4'
PROMPT_REFINER_STRESS_WRITES: '100'
run: npm run stress:event-store