Skip to content

test(tui): restore the green Linux full-workspace test gate on main #6579

Description

@aboimpinto

Problem

The authoritative Linux full-workspace libtest gate is red on clean upstream main@8a835d7c4d08ea85cb6e05b84f913ababf5d7bf5 (2026-09-25), without any FEAT-029 changes:

sh scripts/with-hermetic-test-home.sh cargo test --workspace --all-features --locked -- --format=pretty

Rust/Cargo 1.98.0; proxy variables, RUSTFLAGS, RUST_TEST_THREADS, and CARGO_TARGET_DIR absent; normal repository target/; exit 101. The TUI library suite reported 13,381 passed, 12 failed, 19 ignored. A detached checkout of current upstream main was used; the feature worktree was not involved.

Failures reported by libtest:

  1. mcp::http_client::tests::model_added_endpoint_cannot_use_ambient_proxy_but_operator_can
  2. mcp::tests::legacy_sse_closed_stream_reconnects_and_retries_tool_call
  3. plugins::tests::workspace_scoped_registries_do_not_cross_load_skills
  4. runtime_api::tests::compatibility_stream_closes_losslessly_across_replay_live_handoff
  5. runtime_threads::tests::runtime_image_inputs::runtime_image_stored_retry_keeps_five_mib_bytes_without_relaxing_route_policy
  6. runtime_threads::tests::turn_operation_lookup::exact_lookup_is_read_only_without_an_engine_and_survives_restart
  7. terminal_mode_tests::fresh_launch_uses_selected_fleet_operator_unless_route_is_explicit
  8. tools::git_history::tests::git_fetch_runner_kills_a_remote_that_never_answers
  9. tools::shell::enforced_readonly_tests::enforced_readonly_native_python_cannot_reach_a_loopback_listener
  10. tools::subagent::budget_handback_tests::budget_handback_truncated_report_leaves_the_digest_as_the_deliverable
  11. tools::subagent::tests::launch_receipt::issue_6320_untethered_runtime_binds_exact_route
  12. tui::markdown_render::tests::rust_fence_renders_multiple_syntax_foregrounds_without_reserved_rgb

The same command on the earlier clean main@922679d6c failed seven tests, including the route, Git, sandbox, budget-handback cancellation and launch-receipt identities. The overlapping identities are not caused by FEAT-029.

The CI-style command below is also red locally on clean current main: 16,534 passed, 2 failed, 27 skipped. The two are the loopback sandbox test and the markdown color test. The same two fail on the FEAT-029 worktree under this runner. Eight other FEAT-029 Phase 8 failure identities pass in separate nextest processes, which suggests shared-process interaction in libtest but does not identify the exact state leak.

sh scripts/with-hermetic-test-home.sh cargo nextest run --workspace --all-features --locked --profile ci

The loopback case has a concrete false-positive assertion: Python raises ConnectionRefusedError (connection blocked), but its traceback echoes the submitted source line print('connected'), and the test rejects any response containing connected. The markdown case reports expected syntax colors, got: {Reset}. The image-route case reports model deepseek-v4-flash-vision-exp is not served by direct provider deepseek. Other full-suite failures need their assertion/fixture state captured rather than guessed from a passing isolated rerun.

The GitHub push CI workflow uses nextest rather than the shared-process libtest release gate. At this commit the Ubuntu push job skipped its Run tests step; the Windows nextest job succeeded. The job statuses therefore do not establish a green Linux full-workspace libtest result. Related historical reports: #2597, #6320, #6305, #6295.

Intended outcome

Restore a reliable, fully exercised Linux full-workspace gate on upstream main. Keep these tests enabled, verify their intended behavior, and fix the fixture, assertion, product code, or shared state responsible for each failure. Split implementation PRs by cause if needed; this issue tracks the complete gate.

Acceptance criteria

  • The exact hermetic full-workspace cargo test command above completes with zero failed tests on Linux from a clean branch based on current main, with all twelve listed cases executed and no test disabled/ignored to obtain green.
  • The CI-style nextest command above completes with zero failed tests on Linux, with the sandbox and markdown cases executed.
  • For each repaired cause, the PR documents the intended behavior, the observed failure, and a before/after reproduction; shared-process cases are checked in the full suite, not only as isolated passes.
  • Existing CI checks pass; any environment-specific limitation is stated with evidence rather than silently waived.

Paulo Aboim Pinto

Activity

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

    No labels
    No labels

    Projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions