Skip to content

chore: two e2e tests flicker, and the deploy gate hangs on the suite they are in #429

Open

Description

@G1NG4R

Two tests in the browser suite fail about one run in several and pass on a rerun. Taken one at a time each is an annoyance; taken together they are a gate nobody can read any more, because deploy hangs on e2e and whoever reruns on red has abolished the gate.

The two

e2e/contact.spec.ts:542 — "the duration is on the page, and it is what proves a real send". Red once in the second full local run of U8, green in the first. .tx-log li[data-dir='in'] was not there after 5 s: the routed answer did not arrive, or arrived late.

full run 1 2,352 green, 348 skipped, 8.3 min
full run 2 2,351 green, 1 red, 8.6 min
contact.spec.ts alone @ w1081 37 green, 31 s
that one test, three times 3 × green

So load, not breakage: eight workers, and every submission waits out the 3,000 ms dwell threshold (ADR 0021 §2). Not touched by U8 — contact.spec.ts is unchanged, lib/contact/* too, and the catalogue strings on /contact are English in this project either way.

e2e/touch-targets.coarse.spec.ts:172 — the second of the same kind, recorded one stage earlier.

Why it is one issue and not two

deploy runs after e2e. A gate that goes red for a reason unrelated to the change in front of it teaches everybody to rerun first and read second, and then it is not a gate. The decision this issue wants is which of the three: make the two tests wait on a condition rather than a timeout, take them out of the gating suite and run them on a schedule, or accept the flicker in writing with a documented rerun rule.

#291 is the neighbour — selftest flickering on witness.sh, about one run in five — and the same question is behind all three. (The backlog pointed at #180 and #181 for this; both are closed.)

Activity

  1. added
    choreMaintenance with a date or a routine, not a feature
    on Oct 11, 2026
  2. G1NG4R commented on Oct 17, 2026

    @G1NG4R
    OwnerAuthor

    A measured rate for the count test, from twelve e2e runs in one night
    (2026-10-16 21:45 → 2026-10-17 03:30 UTC), across six PRs and their main runs:

    e2e runs 12
    runs where touch-targets.coarse.spec.ts:211 failed 3
    rate 25 %
    counts, every time 1 failed · 348 skipped · 2457 passed
    Expected: 2 · Received: 1 at [coarse-390] every time

    The three: main for 50bd9cc, PR #457, and main for f0e5998. Each was
    green on a gh run rerun --failed with no code touched.

    Two of the three were on main, and there deploy is skipped — so a swap
    that was queued did not happen until a human (or a loop) noticed and reran. That
    is the "deploy gate hangs on the suite they are in" half of this issue, observed
    twice in one night rather than argued about.

    Nothing here identifies the mechanism; it is frequency only, the same shape the
    note in #291 asks for. What is new is that 25 % over twelve runs is high enough
    that a phase closing with make bundle-size and a merge will meet it.

    Alongside: e2e duration on main ranged from 12:40 to 38:30 in the same
    night, all green, so a long run is not a sign of this failure.

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

    choreMaintenance with a date or a routine, not a feature

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions