Skip to content

v1.6.0 polish: CI and tests #890

Open

Description

@FumingPower3925

Consolidated on 2026-10-02 from the per-PR 'Follow-ups from #N' bundles, by maintainer decision. From now on, review nits are fixed inside the PR before it merges, so no new bundles are filed. Each line names the bundle and item it came from; the bundle's thread keeps the full context. Everything here stays in v1.6.0.

Added 2026-10-02 18:40Z from #860 comment 5958063514, the second review of #843 at f718f05 (posted 4 min before the consolidation closed #860):

Added 2026-10-03 (from #899, the last pre-rule bundle):

Added 2026-10-03 (#907's round-2 reviews, lane L905):

Added 2026-10-03 (#910's round-2 reviews, lane CI1):

Added 2026-10-03 (#923's round-1 reviews, lane F3T):

Added 2026-10-03 (#935's round-1 reviews, lane D2):

Added 2026-10-03 (#932's round-1 review, lane D1):

Added 2026-10-03 (#932's round-2 review, lane D1):

Added 2026-10-04 (from #938's review round 1, lane M443):

Added 2026-10-09 (lane C1, PR #961; celeris#684 / celeris#709 follow-ups that the PR leaves out by maintainer decision):

Added 2026-10-10 (lane E15, PR #973):

Added 2026-10-10 (lane E5B, PR #975 review r1):

Added 2026-10-10 (merges of #972 and #971):

Added 2026-10-10 (lane E10, PR #978):

Added 2026-10-10 (lane E10, PR #978 round 3):

Added 2026-10-10 (lane H2B, PR #984 round-2 review):

Added 2026-10-10 (lane ADDR, PR #986 review r1):

Added 2026-10-10 (lane ADDR, PR #986 round-3 Opus verify):

  • No test pins the accepted-socket argument at the two call sites of sockaddrString (internal/engine/epoll/loop.go accept site, internal/engine/iouring/worker.go accept site): a mutant passing -1 there prints the zone as a number (%12) instead of the interface name for every real link-local peer and every PR test still passes. Add an engine end-to-end test of this shape: pick an up interface with an fe80:: address from net.Interfaces/Addrs (or add a dummy link dz0 with fe80::1234/64 nodad where CAP_NET_ADMIN is available), dial [fe80::...%name]:port, and compare the handler and OnConnect strings with std's Accept RemoteAddr; skip when no such interface, required in CI behind an env var (GitHub runners' eth0 has an fe80 address). The reviewer's template: lanes-20261009/ADDR/review-r3-verify/zoned_e2e_verify_linux_test.go.tmpl. (epoll, iouring, probe: the AsyncHandlers note, the start-up multishot fields, the probe reason, the diagnostic floor and parseAddr say what is so (v1.6.0 polish items) #1079)

Added 2026-10-10 (lane E10B, PR #987 round-2 CI):

Added 2026-10-10 (lane E10B, round-2 review; CI and test items):

Added 2026-10-11 (lane E14, PR #994 review r1; tests the CI runner's configuration does not run):

Activity

  1. added this to the v1.6.0 milestone on Oct 2, 2026
  2. FumingPower3925 commented on Oct 3, 2026

    @FumingPower3925
    ContributorAuthor

    New item (lane F3, 2026-10-03), for this checklist rather than a bug issue: a test-harness robustness gap, no product defect.

  3. FumingPower3925 commented on Oct 3, 2026

    @FumingPower3925
    ContributorAuthor

    One item from the round-1 review of #906 (celeris#893, lane F3):

  4. FumingPower3925 commented on Oct 3, 2026

    @FumingPower3925
    ContributorAuthor

    New item (lane SW, 2026-10-03), for this checklist rather than a bug issue: a test that flakes on darwin, no product defect.

  5. FumingPower3925 commented on Oct 3, 2026

    @FumingPower3925
    ContributorAuthor

    A recurrence for the existing item "Replace sleep-as-synchronisation in #805's tests ... TestBackloggedPeerIsClosed's 300 ms sleep ... can fail falsely (from #818 7)", from lane F3:

  6. FumingPower3925 commented on Oct 3, 2026

    @FumingPower3925
    ContributorAuthor

    A recurrence for the engine/iouring fd-lifetime ENOMEM item (issuecomment-5964149125), from lane F3: TestHandoffHasNothingInFlight/async: iouring engine failed to start: ... io_uring_setup: cannot allocate memory failed #906's Coverage job again (run 37095434570, job 111124269137, head fc3474b, a head that does not touch engine/iouring). The one rerun passed. That makes 2 of the 3 Coverage runs #906 has had. Log: evidence/lanes-20261003/F3/fix-r1/logs/ci/906-r1-coverage-37095434570.log.

  7. FumingPower3925 commented on Oct 3, 2026

    @FumingPower3925
    ContributorAuthor

    One item from lane MW (PR #918, celeris#706):

    • CI lints neither the test/drivercmp/* modules nor the celeris_closeprobe build of middleware/websocket, and both carry findings that are on main (2ca5d72) too: golangci-lint v2.13.2 reports 5 in test/drivercmp/redis (3 errcheck in integrated_test.go: resp.Body.Close, two fmt.Fprintf; 2 revive var-naming, benchmarkPipeline_Celeris/_GoRedis) and 4 in server_close_drain_linux_test.go under --build-tags celeris_closeprobe (goimports at :22, misspell strat x3). Fix them, and add Lint-job steps for the drivercmp modules and the closeprobe tag so they stay clean.
  8. FumingPower3925 commented on Oct 3, 2026

    @FumingPower3925
    ContributorAuthor

    One item from the round-2 review of #901 (celeris#835, lane F3, correctness lens):

  9. FumingPower3925 commented on Oct 3, 2026

    @FumingPower3925
    ContributorAuthor

    One item seen while watching #906's CI (lane F3, round 2):

  10. FumingPower3925 commented on Oct 3, 2026

    @FumingPower3925
    ContributorAuthor

    New item from lane MW (#920 round 2):

  11. FumingPower3925 commented on Oct 3, 2026

    @FumingPower3925
    ContributorAuthor

    The engine/std/listen_cancel_budget_test.go item above (from #821 3, "el < budget has a sub-microsecond theoretical margin") has now failed CI. It was on the Coverage job of #933 (head aeeccf7, run 37133330659, job 111232677229, about 2026-10-03T15:29Z, go test -race -covermode=atomic):

    --- FAIL: TestListenCancelDrainKeepsTheShutdownBudget (0.30s)
        listen_cancel_budget_test.go:141: Shutdown returned after 299.955505ms, before its 300ms budget ran out, with the handler still running
    

    The shortfall is 44.5 µs, so the margin is not sub-microsecond. At 28383e8 the test still creates shutCtx (the deadline) before it takes start (listen_cancel_budget_test.go:133-135). On a loaded hosted runner the gap between those two lines can be larger than the timer's own lateness. #933 changes only driver/internal/eventloop, so this is the test, not that PR. The fix is the item's: take start before context.WithTimeout, or compare against shutCtx's deadline. That makes it a flake fix rather than polish. The job is being re-run once. Log: evidence/lanes-20261003/D1/fix-r2/logs/ci-933-coverage-job111232677229.log.

  12. 126 remaining items

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    area/ciCI/CD pipelinearea/testTesting infrastructuretestingTesting infrastructure and helpers

    Type

    No type

    Projects

    No projects

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions