Skip to content

Stabilize release tests on current Go toolchains - #171

Merged
darron merged 2 commits into
mainfrom
codex/fix-release-test-stability
Aug 25, 2026
Merged

darron merged 2 commits into
mainfrom
codex/fix-release-test-stability

Conversation

@darron

@darron darron commented Aug 25, 2026

Copy link
Copy Markdown
Owner

What changed

  • Warm the lazy link-capture admission SQLite pool before measuring semantic-lease independence. The test now measures lock behavior instead of one-time connection setup.
  • Update github.com/go-json-experiment/json to a revision compatible with the JSON v2 APIs exposed by Go 1.27 (json.SkipFunc and json.DiscardUnknownMembers).

Why

The release test intermittently failed because the first admission-pool connection could take just over the test's 200 ms timing threshold while an unrelated semantic lease was held. Separately, local Go 1.27 builds failed before tests compiled because the old indirect JSON module referenced standard-library APIs that are no longer present under that toolchain.

Verification

  • go test -race ./internal/store -run '^TestLinkCaptureQueueDoesNotWaitForSemanticLease$' -count=100
  • go test -race ./internal/store -count=1
  • go test -mod=readonly -race ./internal/store ./internal/mediadownload -count=1
  • Full task test-ci under Go 1.27.0
  • CI-pinned golangci-lint v2.12.2: 0 issues

The release retry also completed the Verify job and the linux/amd64, linux/arm64, darwin/amd64, and windows/amd64 builds successfully while this PR was prepared; the native darwin/arm64 build was still running at the last check.

darron added 2 commits August 25, 2026 09:45
Co-authored-by: Darron Froese <darron@froese.org>
Signed-off-by: Darron Froese <darron@froese.org>
@github-actions

Copy link
Copy Markdown

PR Diff Stats

PR #171 changed 4 file(s), with +21 / -3 (24 changed lines).

Bucket Files Additions Deletions Changed
Docs 1 +8 -0 8
Tests 1 +10 -0 10
Migrations 0 +0 -0 0
Generated 0 +0 -0 0
Lockfiles 1 +2 -2 4
Config / Ops 0 +0 -0 0
Code 1 +1 -1 2
Total 4 +21 -3 24

Largest Changed Files

File Bucket Additions Deletions Changed
internal/store/link_capture_test.go Tests +10 -0 10
CHANGELOG.md Docs +8 -0 8
go.sum Lockfiles +2 -2 4
go.mod Code +1 -1 2
Bucket rules
  • Docs: Markdown/text docs such as docs/**, README.md, and other *.md or *.txt files
  • Tests: *_test.go, test/, tests/, e2e/, and JS/TS *.test.* or *.spec.* files
  • Migrations: schema migration/init files such as internal/store/migrations.go and internal/store/schema_init.go
  • Generated: local runtime/generated surfaces such as data/, logs/, tmp/, vault/, and web/ui/dist/
  • Lockfiles: dependency lockfiles such as go.sum and package-lock.json
  • Config / Ops: CI, config, packaging, skills, deploy, and scripting files such as .github/, packaging/, skills/, scripts/, Makefile, Dockerfile, Taskfile.yml, config.yaml.sample, and fly.toml
  • Code: everything else

@darron
darron merged commit 129a0db into main Aug 25, 2026
8 checks passed
@darron
darron deleted the codex/fix-release-test-stability branch August 25, 2026 16:10
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