Skip to content

chore: pin the linters and run the sidecar spec in ci - #41

Merged
undont merged 8 commits into
mainfrom
fix/ci-gate-hardening
Aug 14, 2026
Merged

chore: pin the linters and run the sidecar spec in ci#41
undont merged 8 commits into
mainfrom
fix/ci-gate-hardening

Conversation

@undont

@undont undont commented Aug 14, 2026

Copy link
Copy Markdown
Owner

Summary

  • test: go-test runs under -race; the sidecar is a goroutine per request over a shared client and cache
  • build: all four linters pinned and fetched into .tools, and ci runs the make targets rather than marketplace actions. luacheck pins its interpreter too: 1.2.0 will not load on lua 5.5
  • build: .golangci.yml names the v2 defaults, and stops golangci-lint walking up into a parent's config
  • test: lua-test-nvim builds the sidecar, so sidecar_spec runs rather than skipping as it has on every pr since it was written
  • test: cover the 60s request timeout, by SIGSTOPping the sidecar and standing in for vim.uv.new_timer
  • test: post every graphql document to the live schema. the go tests fake at the RoundTripper boundary, which is how get_pending_review shipped broken in every release
  • chore: fail a pr that has not closed off the last release. missed for v0.1.25, v0.1.26 and v0.1.30; v0.1.30 is closed off here
  • test: two blob-path call counters were racy, caught by the new -race leg on its first full run
  • docs: document what bare :Differ opens, and the merge-tool reroute
  • lua-test (v0.12.0) and gql-validate added to main's required checks

Test plan

  • make check: unit 370/0, headless-nvim 444/0 with 0 pending, luacheck 0, golangci-lint 0, lua_ls clean, demo-build ok, go ok under -race
  • make gql-validate: 21 documents accepted, and it fails on the reinstated get_pending_review bug
  • the timeout test fails against the rejection neutered; sidecar_spec fails in 0.003s with no binary
  • the changelog check fails on the tree as it stood, and passes on equality and on an empty [Unreleased]
  • cold .tools fetch of all four tools, each guard failing on a bad pin
  • 30 runs of the blob-cache tests under -race, plus 3 full go test -race ./...
  • make vimdoc regenerates doc/differ.txt unchanged

undont added 8 commits August 14, 2026 18:39
luacheck pins its interpreter too: 1.2.0 will not load on lua 5.5.
the lua-test job had no go toolchain, so the spec skipped on every pr.
release.yml tags but cannot push the rename back. v0.1.30 is closed off here.
the go tests fake at the RoundTripper boundary, so a query github would refuse passes them.
get_file_versions fetches base and head concurrently, so -race caught the increment.
@undont undont changed the title chore: pin the linters, and run the tests ci was skipping chore: pin the linters and run the sidecar spec in ci Aug 14, 2026
@undont
undont merged commit 7dcb5a0 into main Aug 14, 2026
13 checks passed
@undont
undont deleted the fix/ci-gate-hardening branch August 14, 2026 21:03
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant