fix(ollama): always send num_ctx to prevent context-window errors #2199
Workflow file for this run
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: CI | |
| on: | |
| push: | |
| branches: [main] | |
| pull_request: | |
| branches: [main, dev] | |
| permissions: | |
| contents: read | |
| jobs: | |
| release-versioning: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: actions/setup-node@v4 | |
| with: | |
| node-version: 22 | |
| - name: Release versioning tests | |
| run: node --test scripts/ci/semantic-beta-version.test.mjs | |
| go: | |
| runs-on: ubuntu-latest | |
| # Postgres service container for integration tests. pgvector/pgvector:pg18 | |
| # matches the local dev image (Makefile uses the same tag on port 5433). | |
| # Healthcheck blocks the job until PG accepts connections, avoiding | |
| # first-connection flakiness on cold runner starts. | |
| services: | |
| pg: | |
| image: pgvector/pgvector:pg18 | |
| env: | |
| POSTGRES_PASSWORD: test | |
| POSTGRES_DB: goclaw_test | |
| ports: | |
| - 5432:5432 | |
| options: >- | |
| --health-cmd "pg_isready -U postgres" | |
| --health-interval 5s | |
| --health-timeout 3s | |
| --health-retries 10 | |
| env: | |
| # tests/integration/v3_test_helper.go reads TEST_DATABASE_URL and runs | |
| # migrations once via golang-migrate. Uses port 5432 (CI-clean) vs 5433 | |
| # for local dev (avoids clash with desktop Postgres installs). | |
| TEST_DATABASE_URL: postgres://postgres:test@localhost:5432/goclaw_test?sslmode=disable | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: actions/setup-go@v5 | |
| with: | |
| go-version-file: go.mod | |
| cache-dependency-path: go.sum | |
| - run: go build ./... | |
| - run: go build -tags sqliteonly ./... | |
| - run: go vet ./... | |
| # -timeout=5m caps each test binary so a deadlocked test fails fast | |
| # instead of blocking CI for the 10-minute default. Bumped from 90s | |
| # because real 1s retry backoffs in HTTPHandler and goja memory-bomb | |
| # sandbox tests push the internal/hooks/handlers binary past 90s | |
| # under -race -coverpkg=./... Followup: make handler backoff | |
| # configurable so tests can use ms-scale delays. | |
| - name: Unit tests | |
| run: go test -race -timeout=5m -coverpkg=./... -coverprofile=coverage.out ./... | |
| # Invariant tests (P0) - tenant isolation, permission enforcement | |
| # These run against real DB and MUST pass for merge. | |
| - name: Invariant tests (P0) | |
| run: go test -race -timeout=90s -tags integration ./tests/invariants/... | |
| # Contract tests (P1) - API schema validation | |
| # Skip if no server available (requires CONTRACT_TEST_* env vars). | |
| - name: Contract tests (P1) | |
| run: go test -race -timeout=90s -tags integration ./tests/contracts/... || echo "::warning::Contract tests skipped (no server configured)" | |
| continue-on-error: true | |
| # Integration suite runs against the `pg` service container above. | |
| # Longer -timeout=180s because the first test runs migrations from | |
| # scratch (can take 10-30s on a cold CI runner). Local full suite | |
| # completes in <3s against a warm DB. | |
| - name: Integration tests | |
| run: go test -race -timeout=180s -tags integration ./tests/integration/ | |
| - name: Coverage summary | |
| run: go tool cover -func=coverage.out | tail -1 | |
| web: | |
| runs-on: ubuntu-latest | |
| defaults: | |
| run: | |
| working-directory: ui/web | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: pnpm/action-setup@v4 | |
| with: | |
| version: 10 | |
| - uses: actions/setup-node@v4 | |
| with: | |
| node-version: 22 | |
| cache: pnpm | |
| cache-dependency-path: ui/web/pnpm-lock.yaml | |
| - run: pnpm install --frozen-lockfile | |
| - run: pnpm lint | |
| - run: pnpm build |