7b20fc011b
* .github/workflows: add UI tests and path-filter Go CI Add ui-tests.yml workflow to run svelte type checking and vitest on push/PR to main when ui-svelte/ files change. - Add path filters to go-ci.yml and go-ci-windows.yml to skip Go tests when only non-backend files change - Filter on **/*.go, go.mod, go.sum, and Makefile https://claude.ai/code/session_01E6acq54D8JjuE7pczxPGT7 * ui-svelte: remove unused declarations in SpeechInterface Remove unused `generatedText` state and `clearAudio` function that caused svelte-check errors. https://claude.ai/code/session_01E6acq54D8JjuE7pczxPGT7 * .github/workflows: update Node.js to v24 Node 23 is end-of-life; bump to 24 in ui-tests.yml and release.yml. https://claude.ai/code/session_01E6acq54D8JjuE7pczxPGT7 --------- Co-authored-by: Claude <noreply@anthropic.com>
66 lines
1.7 KiB
YAML
66 lines
1.7 KiB
YAML
name: Windows CI
|
|
|
|
on:
|
|
push:
|
|
branches: [ "main" ]
|
|
# only run when backend source changes
|
|
# cmd/ is excluded because it contains utilities without tests
|
|
paths:
|
|
- '**/*.go'
|
|
- '!cmd/**'
|
|
- 'go.mod'
|
|
- 'go.sum'
|
|
- 'Makefile'
|
|
- '.github/workflows/go-ci-windows.yml'
|
|
|
|
pull_request:
|
|
branches: [ "main" ]
|
|
paths:
|
|
- '**/*.go'
|
|
- '!cmd/**'
|
|
- 'go.mod'
|
|
- 'go.sum'
|
|
- 'Makefile'
|
|
- '.github/workflows/go-ci-windows.yml'
|
|
|
|
# Allows manual triggering of the workflow
|
|
workflow_dispatch:
|
|
|
|
jobs:
|
|
|
|
run-tests:
|
|
runs-on: windows-latest
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
|
|
- name: Set up Go
|
|
uses: actions/setup-go@v4
|
|
with:
|
|
go-version: '1.23'
|
|
|
|
# cache simple-responder to save the build time
|
|
- name: Restore Simple Responder
|
|
id: restore-simple-responder
|
|
uses: actions/cache/restore@v4
|
|
with:
|
|
path: ./build
|
|
key: ${{ runner.os }}-simple-responder-${{ hashFiles('cmd/simple-responder/simple-responder.go') }}
|
|
|
|
# necessary for testing proxy/Process swapping
|
|
- name: Create simple-responder
|
|
if: steps.restore-simple-responder.outputs.cache-hit != 'true'
|
|
shell: bash
|
|
run: make simple-responder-windows
|
|
|
|
- name: Save Simple Responder
|
|
# nothing new to save ... skip this step
|
|
if: steps.restore-simple-responder.outputs.cache-hit != 'true'
|
|
id: save-simple-responder
|
|
uses: actions/cache/save@v4
|
|
with:
|
|
path: ./build
|
|
key: ${{ runner.os }}-simple-responder-${{ hashFiles('cmd/simple-responder/simple-responder.go') }}
|
|
|
|
- name: Test all
|
|
shell: bash
|
|
run: make test-all |