Hacktoberfest 2026: die Issues, die Maintainer für den Oktober markiert haben – offen und einsteigerfreundlich. Hacktoberfest-Issues durchsuchen

a worker was handed no note at all under a loaded full-tree run

Offen
#1,375 1 Kommentar 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Maintainer antworten meist innerhalb von 1 Tag

Dieses Issue hat noch niemand übernommen.

Bewertung

Schwierigkeit
4/5
Geschätzter Aufwand
3-5 Tage
Anfängerfreundlichkeit
52/100
Issue-Typ
Bug
Klarheit
Größtenteils klar
Aktivitätsstatus
Aktiv
Tech-Stack
go
Bereich
testing-qa

Rechercherichtung

Start with TestTwoWorkersLiveAtOnceEachGetOnlyItsOwnNote in internal/run/note_channel_test.go and reproduce the package with -race, then compare it with the full-tree run described at commit 2f94ca1f0. Trace the two workers' note delivery decisions and improve the failure output to identify each worker's notes and timing. Done means the runtime or fixture issue is fixed, the change explains which it was, and package -race covers it in CI.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Beschreibung

area:tests bug sev:papercut

What happened

TestTwoWorkersLiveAtOnceEachGetOnlyItsOwnNote in internal/run failed once,
inside a run of 112 packages at once on a loaded build box.

--- FAIL: TestTwoWorkersLiveAtOnceEachGetOnlyItsOwnNote (0.66s)
    note_channel_test.go:326: alpha was handed its own note 0 times, want once
FAIL	github.com/Agent-Field/codeaf/internal/run	29.998s

The dump the assertion prints shows three requests to alpha, each carrying the
work order and the ask, and none of them carrying the note. So the note was not
delivered late or delivered to the wrong worker in that run. It was not there at
all across every request the worker made.

It does not reproduce, and that is the report

Sixteen attempts on the same tree at the same commit, on a box at load 0.33:

what result
-count=5 -run TestTwoWorkersLiveAtOnce ./internal/run/ ok 2.758s
-count=3 ./internal/run/ (whole package, so the other tests run beside it) ok 75.353s
GOMAXPROCS=1 -count=8 -run TestTwoWorkersLiveAtOnce ./internal/run/ ok 4.151s

Filing rather than rerunning is deliberate. The repository's own rule is that a
test failing only when other suites run beside it is a bug report and not a
known shape, and this test is about two workers being live at once, which is the
condition a loaded box actually supplies and an isolated rerun does not.

It is NOT in .github/known-red.txt and must not be added to it.

Why it matters more than an ordinary flake

The behaviour under test is the one #1356 shipped: a note is a channel into a
running worker rather than a log nobody reads. A worker that never receives its
note is that feature not working, and the failing case renders exactly like a
run where nobody sent a note. If this is real, the product symptom is silence.

Replication

Not reliable. What produced it once: go test -count=1 over every package
except internal/tui3 and internal/session on one box, roughly 112 packages,
during a full-tree check. The commit was 2f94ca1f0.

Acceptance

  1. Whatever the cause, the test's failure output says which of the two workers
    got which notes and when, not only that alpha got none. The current dump
    shows the requests but not the delivery decisions, so a reader cannot tell a
    note that was never written from one written to the wrong worker.
  2. If it is a race in the runtime, -race on this package in CI names it.
  3. If it is a race in the fixture, the fixture is fixed, and the change says
    which of the two it was. Not "made deterministic".
Vorherrschende Sprache
Go
Sterne
115
Forks
14
Ø Merge
15 Std. 42 Min.
Gemergte PRs (30 T.)
235

Entwicklungsumgebung

Die Einrichtungsdateien dieses Projekts haben wir noch nicht geprüft. Beginnen Sie mit der README; die allgemeinen Schritte stehen in unserem Leitfaden für den ersten Beitrag.

Erste Schritte

  1. Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
  3. Forken Sie das Repository und arbeiten Sie in einem Branch.
  4. Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.

Mehr aus Agent-Field/CodeAF

Alle Issues in Agent-Field/CodeAF

Ähnliche Issues

Weitere Issues zu Go

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.