mirror of
https://github.com/mudler/LocalAI.git
synced 2026-07-07 23:07:34 -04:00
Bumps [actions/cache](https://github.com/actions/cache) from 4 to 6. - [Release notes](https://github.com/actions/cache/releases) - [Changelog](https://github.com/actions/cache/blob/main/RELEASES.md) - [Commits](https://github.com/actions/cache/compare/v4...v6) --- updated-dependencies: - dependency-name: actions/cache dependency-version: '6' dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
70 lines
2.7 KiB
YAML
70 lines
2.7 KiB
YAML
---
|
|
name: 'realtime-conformance'
|
|
|
|
# Verifies the realtime state-machine implementations conform to their formal
|
|
# designs (docs/design/realtime-state-machines.md, formal-verification/). BOTH
|
|
# layers are enforced and the gate is fail-closed: the Go conformance layer
|
|
# (respcoord + turncoord transition/rapid tests under -race) AND the FizzBee model check of
|
|
# the authoritative specs. FizzBee is pinned + checksum-verified
|
|
# (formal-verification/fizzbee.sha256), so a failed install fails the job rather
|
|
# than silently skipping verification.
|
|
|
|
on:
|
|
pull_request:
|
|
paths:
|
|
- 'core/http/endpoints/openai/coordinator/**'
|
|
- 'core/http/endpoints/openai/respcoord/**'
|
|
- 'core/http/endpoints/openai/turncoord/**'
|
|
- 'core/http/endpoints/openai/conncoord/**'
|
|
- 'core/http/endpoints/openai/compactcoord/**'
|
|
- 'core/http/endpoints/openai/ttscoord/**'
|
|
- 'formal-verification/**'
|
|
- 'scripts/realtime-conformance.sh'
|
|
- 'scripts/install-fizzbee.sh'
|
|
- '.github/workflows/realtime-conformance.yml'
|
|
push:
|
|
branches:
|
|
- master
|
|
paths:
|
|
- 'core/http/endpoints/openai/coordinator/**'
|
|
- 'core/http/endpoints/openai/respcoord/**'
|
|
- 'core/http/endpoints/openai/turncoord/**'
|
|
- 'core/http/endpoints/openai/conncoord/**'
|
|
- 'core/http/endpoints/openai/compactcoord/**'
|
|
- 'core/http/endpoints/openai/ttscoord/**'
|
|
- 'formal-verification/**'
|
|
- 'scripts/realtime-conformance.sh'
|
|
|
|
concurrency:
|
|
group: realtime-conformance-${{ github.event.pull_request.number || github.sha }}-${{ github.repository }}
|
|
cancel-in-progress: ${{ github.event_name == 'pull_request' }}
|
|
|
|
jobs:
|
|
conformance:
|
|
runs-on: ubuntu-latest
|
|
strategy:
|
|
matrix:
|
|
go-version: ['1.26.x']
|
|
steps:
|
|
- name: Clone
|
|
uses: actions/checkout@v7
|
|
- name: Setup Go ${{ matrix.go-version }}
|
|
uses: actions/setup-go@v5
|
|
with:
|
|
go-version: ${{ matrix.go-version }}
|
|
cache: false
|
|
- name: Cache FizzBee
|
|
uses: actions/cache@v6
|
|
with:
|
|
path: .tools/fizzbee
|
|
key: fizzbee-v0.5.2-${{ runner.os }}-${{ hashFiles('formal-verification/fizzbee.sha256') }}
|
|
- name: Install FizzBee (pinned, checksum-verified)
|
|
# No `|| true`: a failed/forged download must fail the job, not silently
|
|
# drop the design verification. install-fizzbee.sh is a no-op if the
|
|
# cached binary is already present and valid.
|
|
run: ./scripts/install-fizzbee.sh
|
|
- name: Run conformance gate (fail-closed)
|
|
# No skip env: both the Go conformance and the FizzBee model check are
|
|
# required. The gate auto-detects .tools/fizzbee/fizz.
|
|
run: make test-realtime-conformance
|