ui-react: classify coarse rail activation failures in seeded navigation proof
Maintainers usually reply within 1 day
Nobody has claimed this yet.
Assessment
- Difficulty
- 5/5
- Estimated time
- Over a week
- Newbie friendliness
- 12/100
- Issue type
- Bug
- Clarity
- Mostly clear
- Activity status
- Active
- Tech stack
- playwright, react, typescript
- Domain
- testing
Research direction
Start with packages/ui-react/tests/browser/desktop-navigation.pointer.tsx, especially the press helper at lines 126-138 and the failing assertions at lines 426, 442 and 469, then read D52 and D54 in the design-kit decision docs. Reproduce with the pinned Playwright image and the seeded rail-coarse command given in the issue. Done means each of the three failures has recorded native touch, hit-target, store and rendered-surface evidence, with per-case reproduction counts, and no correction is selected without a supported responsible boundary.
Written by the indexing model from the issue text.
Description
Context
Found during #1737's bounded reproduction pass at main 400c50ed231f33eeca875ec9223b24ad535b2b22 on 2026-10-15. The unchanged complete desktop-navigation.pointer.tsx file ran under rail-coarse with randomized test order, fixed seed 1737: 115 passes / three assertion failures, 118 total, 86.73 seconds. All eight All commands pointer/Enter/Escape/Space sequences passed. These three failures are separate observations; no common cause or order dependence is established.
with Files open, every destination is one rail press (D52 §2, #1075): dark, 900:Actions drawn after one press with Files open, expected true / received false (test,packages/ui-react/tests/browser/desktop-navigation.pointer.tsx:426).one rail Files activation from activity draws it (D52 N1): light, 1280:Files flag from activity, expected true / received false (test, same file:442).acts run the palette's handlers, mid-turn too, and the briefing says why: light, 1280:Add opens mid-turn, expected true / received false (test, same file:469).
The first and third exhausted existing polls; the second failed its immediate store assertion. All reached native runtime assertions. Existing press (packages/ui-react/tests/browser/desktop-navigation.pointer.tsx:126-138) sends native touchStart/touchEnd at a button's inset corner. Full log and screenshots retained outside authored source. No source changes, waits, retries, timeout increases or guard changes.
Pinned mcr.microsoft.com/playwright:v1.63.0-noble, disabled network, shared IPC, normal UID, read-only locked fonts, exact-SHA built workspace. Other investigations shared the host; no deliberate load/CPU quota. A second invocation briefly overlapped during setup and was stopped; its output is excluded. No isolated-contention claim. #1257's listed constrained-load cases do not name these assertions.
Command from packages/ui-kit inside the image:
node /repo/node_modules/vitest/vitest.mjs run --project=rail-coarse --browser.fileParallelism=false --sequence.shuffle.tests --sequence.seed=1737 ../ui-react/tests/browser/desktop-navigation.pointer.tsx
Read D52 in docs/decisions/design-kit/sessions-and-drafts.md and D54 in docs/decisions/design-kit/overlays.md before selecting corrections.
A subsequent matched declaration-order control removed only the shuffle/seed options and added JSON reporting. It passed all 118 cases, zero failures or skips, exit 0. This establishes a successful control, not order causation: there is only one completed run per condition, and the briefly overlapping setup is a limitation of the first run. All original assertions and guards remained enabled.
Out of scope
#1737's native Space failure, redesign, weakened one-press/drawn/state guarantees, forced clicks, sleeps, retry-as-correction, deadline increases or assuming a common cause.
Scope
Classify and reduce these three native coarse-pointer activation observations. Compare dispatch, hit target, state and rendered destination evidence under declared/seeded order and isolate required preconditioning. File separately scoped correction work when responsible boundaries differ.
Acceptance criteria
- Preserve SHA, command, seed, exact assertions and failure screenshots.
- Capture native touch/hit-target, store and rendered-surface observations per failure; distinguish lost input, geometry, delayed commit, fixture cleanup and product behavior through controlled comparisons.
- Report per-case reproduction counts and order/preconditioning dependence; successful controls do not erase failed receipts.
- Select no correction without supported responsible boundaries. Later corrections need meaningful failing-first/restored mutations preserving original guarantees.
Verification
Pinned offline repository Chromium harness with existing fixture/font/egress guards. Keep focused reductions and complete-file context distinct. No API keys/network required.
Contract impact
None selected: investigation only. Future product corrections require normal changeset/contract assessment.
Priority p2: wanted unscheduled diagnosis. Observed assertions are investigation inputs; missing causes are its output, so no invented needs: repro prerequisite.
- Dominant language
- TypeScript
- Stars
- 1
- Forks
- 0
- Avg merge
- 4h 6m
- Merged PRs (30d)
- 947
Getting set up
- No Dockerfile or Docker Compose file
- Has a pull request template
- Read the contributing guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from schlessera/brain-kit
-
area: backends type: docs
Difficulty 1/5 1-3 hours Newbie friendliness 83/100
schlessera/brain-kit#2383 ·
Maintainers usually reply within 1 day
-
agent-ready area: ci area: docs priority: p2 type: docs
Difficulty 2/5 1-3 hours Newbie friendliness 62/100
schlessera/brain-kit#2104 · 4 comments ·
Maintainers usually reply within 1 day
-
agent-ready area: backends priority: p2 type: test
Difficulty 2/5 1-3 hours Newbie friendliness 64/100
schlessera/brain-kit#1996 · 1 comment ·
Maintainers usually reply within 1 day
-
agent-ready area: docs priority: p2 type: docs
Difficulty 1/5 Under an hour Newbie friendliness 88/100
schlessera/brain-kit#1990 · 3 comments ·
Maintainers usually reply within 1 day
-
agent-ready area: core type: docs
Difficulty 2/5 1-3 hours Newbie friendliness 62/100
schlessera/brain-kit#1944 ·
Maintainers usually reply within 1 day
All issues in schlessera/brain-kit
Similar issues
-
enhancement
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
equinor/prisma-decision-web#919 ·
Maintainers usually reply within 1 day
-
[DC] OneLogin sync imports a partial user list when an API request failsPossibly taken @RaphaelFakhri claimed this today. Open
Difficulty 2/5 1-3 hours Newbie friendliness 84/100
bitwarden/directory-connector#1276 · 1 comment ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 62/100
home-assistant/installer#324 ·
Maintainers usually reply within 1 day
-
Mondriaan
Difficulty 2/5 1-3 hours Newbie friendliness 65/100
knaw-huc/textannoviz#733 ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
Maintainers usually reply within 1 day