← index #18869Issue #18868
Related · high · value 1.138
QUERY · ISSUE

tests: extmod/time_time_ns.py intermittent failure due to CI runner clock precision

openby andrewleechopened 2026-02-25updated 2026-02-25

The time_time_ns.py test makes assertions about time.time_ns() precision
that intermittently fail on shared CI runners. Observed in the float (1)
and longlong (1) jobs in a 20-run log window. Attributed to ~7 of 103
failed runs over 14 months.

On shared CI runners the wall clock can have insufficient precision or
the process can be descheduled between measurements, causing timing
assertions to return False instead of True.

This one might be addressable by increasing the tolerance in the test
rather than fixing underlying code.

PR #18861 now ignores this failure in CI.

See analysis: https://gist.github.com/andrewleech/5686ed5242e0948d8679c432579e002e

CANDIDATE · ISSUE

tests: cmdline/repl_lock.py and repl_cont.py intermittent failures

openby andrewleechopened 2026-02-25updated 2026-03-19
tests

Two REPL tests fail intermittently on CI:

cmdline/repl_lock.py — fails on QEMU ARM and RISCV64. The expected
output shows >>> micropython.heap_lock() but the actual output drops
the >>> prompt prefix. Observed 3 times in 20 runs with logs. This is
a REPL prompt timing issue under QEMU emulation.

cmdline/repl_cont.py — fails on macOS. Differences in quote escaping
in REPL continuation prompts ("'" vs '\''). Observed once in 20 runs.
The macOS job has historically been the second most failure-prone job
(4.3% failure rate, 25 failures over 14 months) with all failures
attributed to REPL-related issues. The August 2025 spike (11 macOS
failures) correlates with the GitHub Actions macOS 15 runner migration.

PR #18861 now ignores these failures in CI.

See analysis: https://gist.github.com/andrewleech/5686ed5242e0948d8679c432579e002e

Keyboard

j / / n
next pair
k / / p
previous pair
1 / / h
show query pane
2 / / l
show candidate pane
c
copy suggested comment
r
toggle reasoning
g i
go to index
?
show this help
esc
close overlays

press ? or esc to close

copied