Hacktoberfest 2026:维护者为十月标记出来的 issue,仍然开放、适合新手。 浏览 Hacktoberfest issue

The tmux e2e suite is 7/18 red on the trunk, and nothing in CI would ever say so

未关闭
#1,361 2 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看

维护者通常 1 天内回复

还没有人认领这个 Issue。

评估

难度
4/5
预计耗时
3-5 天
新手友好度
48/100
Issue 类型
功能
描述清晰度
基本清楚
活跃度
活跃
技术栈
github-actions, go
领域
ci-cd, testing

调研方向

Start with internal/e2e/tui_e2e_test.go and run the documented tagged TestTUIE2E command, capturing its screen output. Then inspect .github/workflows/ci.yml, ci-full.yml, and internal/e2e/tuiwords_test.go. Done means the listed subtests are passing or explicitly filed as defects, a scheduled red-reporting path exists, and a cheap test covers the foot sentence's screen adjacency.

由索引模型根据 Issue 内容生成。

描述

area:tests bug sev:serious

What is wrong

TestTUIE2E — the only suite that drives the real binary in a real terminal
against a real model — fails 7 of its 18 subtests on clean santos/dev2, and
no scheduled job runs it, so nothing reports this.

Measured twice on the Spark cluster with a real model, same result both times.
Clean origin/santos/dev2 at 8a83f4132, 837 seconds:

subtest what the screen says
home_opens_on_launch_as_seven_panels home's foot is not the resting sentence (tui_e2e_test.go:391)
a_real_conversation_on_the_panels_and_its_search_card where you were does not lead with this window's own here row (:510)
answer_from_home_across_two_windows the asking row is not under needs you (:1131), although the chips themselves are offered
the_projects_panel_is_the_view_by_project the projects panel has no row for groupws, alpha, beta or gamma (:1367)
a_refused_task_proposal_draws_no_schema_sentence waited 30s for enter open its room and saw nothing (:1943)
space_in_the_task_room_pages_the_card same cause as the row above
TaskOnTheRunEngine the run's plan row is deduped away by title, so Enter opens an empty room (:2173, :2231)

Why nothing noticed

Three gaps compound, and each one alone would be survivable.

  1. No workflow runs the tagged suite. .github/workflows/ci.yml and
    ci-full.yml mention e2e only as "the words the e2e suite waits for" — the
    untagged gate. The nightly Full check runs the full tests in three shards,
    the cross-build matrix and make test-remote, and has a page on a red nightly job ready to open an issue, but the tagged suite is not among its
    legs. So it runs only when a person runs it.
  2. The untagged words gate cannot see this class of rot.
    internal/e2e/tuiwords_test.go is read back against internal/tui3's own
    sources, which catches a respelled string. It does not catch a needle that
    still exists but no longer sits where the assertion looks: home's foot fails on
    homeFootWord + " · " + placeHintTail being adjacent while both words are
    present in the source. Adjacency, row order, and which heading a row is filed
    under all pass the gate and fail the drive.
  3. There is no ledger to check a red against. .github/known-red.txt burned
    to zero on 2026-09-12 (#1012) and the file is gone, deliberately — the
    Makefile's read survives so a ledger cannot quietly return. That is the right
    end state, and it means every one of the seven is unaccounted-for debt rather
    than a known shape.

This is #184 recurring, with the cause #576 named: a suite nobody runs reports
green by not running.

Replication a stranger can run

Needs a provider key resolved the way the product resolves one (liveKey goes
through config.APIKeyAt, so OPENROUTER_API_KEY, OPENAI_API_KEY or the
profile's own api_key row all work), tmux, and about fifteen minutes and a few
cents:

git worktree add --detach /tmp/e2e-baseline origin/santos/dev2
cd /tmp/e2e-baseline
make build
go test -tags e2e -count=1 -timeout 40m -v -run '^TestTUIE2E$' ./internal/e2e/ > /tmp/e2e.log 2>&1
grep -E '^\s*--- (PASS|FAIL): ' /tmp/e2e.log

Capture to a file; the screens it logs are far too wide to read through a pipe.

Acceptance

End-to-end first, on the real door.

  1. Every subtest above either passes under
    go test -tags e2e -count=1 -timeout 40m -v -run 'TestTUIE2E/<name>' ./internal/e2e/
    with its PASS line quoted, or is a filed defect with the subtest left red on
    purpose and a sentence saying which.
  2. A scheduled job runs the tagged suite and pages on a red, the way
    ci-full.yml's page on a red nightly job already does for the shards. The
    suite needs a key and costs money, so this is a decision about budget and
    cadence rather than a line to add: a keyed nightly on dev, or a leg on the
    way into staging, or a recorded human ritual with a stated cadence. Any of
    the three closes the gap; leaving it to whoever remembers does not.
  3. A test that fails when the words gate's blind spot returns — that is, one
    asserting the screen's adjacency for at least the foot sentence, so the
    next drift is caught by the cheap untagged run rather than by a paid drive.

Not in scope here

TaskOnTheRunEngine's cause is being fixed separately, because making the worker
harness the default belt promotes it from an opt-in road to the one everybody
gets.

主要语言
Go
星标
115
派生
14
平均合并
9 小时 37 分钟
30 天内合并 PR
755

环境准备

我们还没有检查这个项目的环境配置文件。先看它的 README,通用步骤见我们的新手贡献指南。

从这里开始

  1. 先读完整个 Issue,再读项目的贡献指南。
  2. 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
  3. Fork 仓库,在一个分支上完成修改。
  4. 提交 Pull Request,并在描述里引用这个 Issue 编号。

Agent-Field/CodeAF 的其他 Issue

查看 Agent-Field/CodeAF 的全部 Issue

相似的 Issue

更多 Go Issue

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。