test: native save FIFO substitution bound test is flaky under load
Maintainers usually reply within 1 day
Nobody has claimed this yet.
Assessment
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Newbie friendliness
- 35/100
Research direction
Start with the test fifo_substitution_at_actual_writable_hook_is_bounded in src/document/native_save/unix/tests.rs (around line 988) and the native save code it exercises. Run it in a loop with cargo test -- --test-threads=1 while the CPU is loaded, and look for wall-clock or timing assumptions. Done means the root cause is fixed without simply raising timeouts, with 200 consecutive passes under load and green CI on all three OSes.
Written by the indexing model from the issue text.
Description
Problem
document::native_save::unix::tests::fifo_substitution_at_actual_writable_hook_is_bounded (src/document/native_save/unix/tests.rs:988) failed once locally during an unrelated change (Status Line work touching only src/app) and passed on rerun. The machine was under heavy load with a nearly full disk. Likely timing-sensitive.
Why it matters
This test guards the bounded behavior of native save when a FIFO is substituted at the writable hook (a safety property of the atomic save path). A flaky safety test either hides regressions or trains people to rerun until green.
Expected
Deterministic: the bound is enforced by construction (or by a deadline independent of machine load), and the test asserts it without wall-clock sensitivity.
Acceptance
- Reproduce under load (e.g. run with
--test-threads=1while CPU-saturated, or loop it N times) and record the failure output. - Fix the root cause (test timing assumption or production bound), not by raising timeouts blindly.
- Evidence: 200 consecutive local passes under load plus green CI on all three OSes.
- Dominant language
- Rust
- Stars
- 4
- Forks
- 2
- Avg merge
- 2h 28m
- Merged PRs (30d)
- 76
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 cristim/AztecCraft
-
area/viewport type/chore
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
cristim/AztecCraft#186 ·
Maintainers usually reply within 1 day
-
area/infra type/chore
Difficulty 1/5 Under an hour Newbie friendliness 94/100
cristim/AztecCraft#181 ·
Maintainers usually reply within 1 day
-
area/modeling type/bug
Difficulty 2/5 1-3 hours Newbie friendliness 76/100
cristim/AztecCraft#176 ·
Maintainers usually reply within 1 day
-
area/modeling type/bug
Difficulty 2/5 1-3 hours Newbie friendliness 82/100
cristim/AztecCraft#175 ·
Maintainers usually reply within 1 day
-
area/ui-parity type/bug
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
cristim/AztecCraft#172 · 1 comment ·
Maintainers usually reply within 1 day
All issues in cristim/AztecCraft
Similar issues
-
documentation P2
Difficulty 2/5 1-3 hours Newbie friendliness 88/100
Maintainers usually reply within 1 day
-
bug good first issue priority:high
Difficulty 2/5 1-3 hours Newbie friendliness 88/100
Konfirm-xyz/konfirm-contracts#163 ·
Maintainers usually reply within 1 day
-
area:gc-repack-output bug factory:dogfood factory:triaged priority:p3 type:bug type:ux
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
gitbutlerapp/grit#1161 · 1 comment ·
Maintainers usually reply within 1 day
-
bug
Difficulty 2/5 1-3 hours Newbie friendliness 76/100
Maintainers usually reply within 1 day
-
feature performance
Difficulty 2/5 1-3 hours Newbie friendliness 65/100
lance-format/lance#10137 ·
Maintainers usually reply within 2 days