From 31d2bdefd27c889c8b8dafe97a3e008e6089016f Mon Sep 17 00:00:00 2001 From: Tien Dung Dao Date: Sun, 19 Jul 2026 19:59:08 +0700 Subject: [PATCH] test(ci): run agent integrations on Windows --- .github/workflows/ci.yml | 9 ++++++--- internal/agents/instructions_test.go | 3 ++- 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 05ca221dc..fef67b98b 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -36,9 +36,9 @@ jobs: build-windows: # CGO build smoke-test on native Windows. tree-sitter needs a C/C++ # compiler — the GitHub windows runner ships mingw-w64 on PATH, so no - # extra toolchain setup is required. Build-only: `go build ./...` - # compiles every production package without pulling in the - # platform-specific test files a full `go test` would. + # extra toolchain setup is required. `go build ./...` compiles every + # production package; the focused agents test also exercises Windows-only + # integration paths without opting into the unsupported full test suite. runs-on: windows-latest steps: - uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0 @@ -53,6 +53,9 @@ jobs: - name: Build all packages run: go build ./... + - name: Test Windows agent integrations + run: go test -timeout=5m -count=1 ./internal/agents + lint: runs-on: ubuntu-latest steps: diff --git a/internal/agents/instructions_test.go b/internal/agents/instructions_test.go index f42a045fd..a1998a4dc 100644 --- a/internal/agents/instructions_test.go +++ b/internal/agents/instructions_test.go @@ -185,11 +185,12 @@ func TestBashInstructionsBodyUsesOnlyExplicitCLIMirror(t *testing.T) { func TestGlobalPointerBody_ShapeAndSentinel(t *testing.T) { const dir = "/home/user/.gortex/instructions" body := GlobalPointerBody(dir) + activePath := filepath.Join(dir, "active.md") if !strings.Contains(body, InstructionsSentinel) { t.Error("pointer block lost the idempotency sentinel heading") } - if !strings.Contains(body, "@"+dir+"/active.md") { + if !strings.Contains(body, "@"+activePath) { t.Errorf("pointer block does not @-include the active profile: %q", body) } if !strings.Contains(body, "gortex instructions switch") {