Hacktoberfest 2026:メンテナが10月に向けて印を付けた、オープンで初心者向けの issue。 Hacktoberfest の issue を見る

tests: run-engine and session tests read the box's real load and time out on a busy machine

オープン
#1,525 コメント 0 件 リアクション 0 件 担当者 0 名 GitHub で見る

メンテナーはふだん 1 日以内に返信

まだ誰も着手していません。

評価

難易度
4/5
見積もり時間
3〜5日
初心者へのやさしさ
65/100
issue の種類
バグ
明瞭さ
明確に書かれている
活発さ
活発
技術スタック
go
領域
testing-qa

調査の方向性

Start with the named tests in internal/session and internal/run, reproducing them with stress-ng and the provided go test commands. Trace how their fixtures obtain the machine load and identify a fixture-profile or injected load-reader path that avoids real /proc/loadavg unless the test covers the gate. Done means all named tests pass under sustained load and a law test or fixture helper prevents new run-engine tests from reading the real load accidentally.

索引モデルが issue の本文から書いたものです。

説明

area:tests bug

What happened

Several run-engine and session tests start real run seats, which pass through the machine gate (task.max_load, default 1.5 per core). On a busy box they wait machine busy · load per core at or above task.max_load 1.5, then time out. They are green in CI and alone, and red when another suite is running beside them. CLAUDE.md treats that as a bug, not a known flake.

Seen on 2026-09-25 on an 8-core box at load 11–24:

  • internal/session TestUnderOneModelEveryRunSeatRidesTheConversationsModel/the_launch_model: timed out waiting for the run to end on dev@691ade547 at load 12, and 11 s alone. Added in #1517.
  • internal/run TestSupervisorLaunchesEveryReadyLeafAtOnceWithNoSlotBound and TestAnUnboundedRunEndedEarlyStillDrainsEveryWorker: fail even alone at load about 11.
  • Also timing out only under load: TestPlandbCliWorkerOwnDone, TestARunCorrectedPastItsRoundLimitStopsWithoutMergingOrSayingDone, TestBeltRunCarriesMachineGateAndShowsItsHold, TestPlandbCliLoopThroughBash, TestACarriedOverDesignRaisesItsCardAndSavesOnYes, TestTheDelegationDoorsCrossFromTheEnginesProfile (session); TestHostedTasksToolStopEndsTheRunAndReportsWhatHappened (remote).

Replication

Deterministic:

stress-ng --cpu $(( $(nproc) * 2 )) --timeout 600s &   # or any load above 1.5 per core
go test -count=1 -run 'TestUnderOneModelEveryRunSeatRidesTheConversationsModel' ./internal/session
go test -count=1 -run 'TestSupervisorLaunchesEveryReadyLeafAtOnceWithNoSlotBound' ./internal/run

Both fail today. Without the load, both pass.

The fix

A test that is not about the machine gate runs with the gate out of its way, through its fixture profile or an injected load reader, never the box's real /proc/loadavg. A test that IS about the gate injects the load it needs.

Acceptance

  • Unit: each named test passes with stress-ng holding the box above 1.5 per core.
  • A law test, or a single fixture helper, so that a new run-engine test cannot read the real load by accident.
主要言語
Go
スター
115
フォーク
14
平均マージ
9時間 35分
マージ済み PR(30日)
752

環境構築

このプロジェクトの環境構築ファイルはまだ確認していません。まず README を読み、一般的な手順ははじめてのコントリビューションガイドを参照してください。

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

Agent-Field/CodeAF のほかの issue

Agent-Field/CodeAF の issue をすべて見る

似ている issue

Go の issue をもっと見る

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。