Background Jobs - Reap one job #MA9

I’m failing on Background Jobs - Reap one job #MA9 on the tester. When I try the tester, the jobs reads as getting terminated when it should still be running. Locally, the same series of events works as expected and matches the expected results:

Tester logs:

[tester::#MA9] Running tests for Stage #MA9 (Background Jobs - Reap one job)
[tester::#MA9] Running ./your_program.sh
[tester::#MA9] [setup] mkfifo /tmp/raspberry-27
[your-program] $ cat /tmp/raspberry-27 &
[your-program] [1] 62
[tester::#MA9] ✓ Found process with PID 62
[tester::#MA9] ✓ Expected executable path found for process with PID 62
[tester::#MA9] ✓ Output includes job number with PID
[your-program] $ jobs
[your-program] [1]+  Done                    cat /tmp/raspberry-27 &
[tester::#MA9] ^ Line does not match expected value.
[tester::#MA9] Expected: "[1]+  Running                 cat /tmp/raspberry-27 &"
[tester::#MA9] Received: "[1]+  Done                    cat /tmp/raspberry-27 &"
[your-program] $ 
[tester::#MA9] Test failed

My shell:

$ mkfifo /tmp/test-fifo
$ cat /tmp/test-fifo &
[1] 11868
$ jobs
[1]+  Running                 cat /tmp/test-fifo &
$ jobs
[1]+  Running                 cat /tmp/test-fifo &
$ jobs
[1]+  Running                 cat /tmp/test-fifo &

The way I determine if a job is finished:

int status;
waitpid(pid, &status, WNOHANG); // Check without waiting to finish
if (WIFEXITED(status)) {
  // Add job to data structure containing finished jobs
}

Does anyone have any advice on how to trouble shoot this? The logs aren’t helpful when doing the exact same thing locally works as expected. If it matters, I am running this locally on macos