Skip to content

The test suite prints render warnings and fails on none of them #37

Description

@bmethod

Source: found while fixing the suppressed review findings from #30, 2026-09-09.

Reached by: run bun test src/ with two rendered rows sharing a React key. The suite prints Encountered two children with the same key, /dev/x and reports every test passing.

A duplicate key means React cannot tell two rows apart across a render. It reuses state for the wrong row, and a list whose rows carry selection or expansion state shows the reader one row's state on another. The suite generated that exact warning, printed it, and counted it as nothing: 289 passed.

This is the same shape as the review comments that reached main in #30 — a signal produced, displayed, and gated by nothing. A warning nobody fails on is a warning nobody reads.

The instance is fixed. The gap is not: the next duplicate key, missing key, or invalid nesting warning will pass in exactly the same way.

Done when

  • A render warning during the suite fails the run, with the warning text in the failure.
  • A test proves it: a fixture that renders a duplicate key must redden.
  • Any warning that is genuinely acceptable is silenced at its source with a stated reason, not by leaving the gate off.

Context

  • Location: the test setup under src/test/, and scripts/ci.py where the suite is run.
  • Found because grouping filesystems by fsid split two groups that had shared a device string, and the React key was the display name. The defect was real; only the discovery was luck.

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

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions