ci: add build + vet + test workflow#18
Merged
Merged
Conversation
gact-tui had no CI. Add .github/workflows/ci.yml: on push to main and on PRs, run gofmt check, go vet, go build, and go test across the whole go.work workspace (tui, emulator, adapters/*, conformance). Closes #17
Run gofmt -w across all tracked .go files. The repo had no CI, so gofmt was never enforced and ~42 files had drifted. Required for the CI workflow's gofmt gate to pass; pure formatting, no logic changes.
Go tooling (gofmt, go vet) treats CRLF as unformatted. Without a .gitattributes, Windows checkouts get CRLF via autocrlf and the CI gofmt gate fails on files that are fine on Linux. Force `* text=auto eol=lf` and mark binary assets, then renormalize.
The repo root is a go.work workspace, not a module -- `go vet ./...` from the root fails with "directory prefix . does not contain modules listed in go.work". Loop over the modules listed in go.work and run vet/build/test inside each instead.
Collaborator
Author
|
CI is now structurally correct -- gofmt, vet, build, and most of the test suite pass on the Linux runner. The remaining red is 6 pre-existing test failures in Filed as a tracking issue. Two options:
The CI workflow + gofmt normalization + |
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
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Closes #17. gact-tui had no CI -- nothing built or tested it on push/PR.
Adds
.github/workflows/ci.yml: gofmt check,go vet ./...,go build ./...,go test ./...across the wholego.workworkspace, on push tomainand on PRs.Heads-up on test state (from a local Windows run):
TestCaptureVoice_*fail locally only becauseshisn't on PATH -- they should pass on the Linux runner.TestSessionFilter_*andTestSSEResume_PassesLastEventIDOnReconnectalso failed locally; this PR's own CI run is the first signal of whether those are real bugs or were Windows-env artifacts. If they're red on the runner, they need follow-up triage -- I'd rather land the CI and see the truth than guess.