ATMOSYNTH Groove: a desktop DAW whose instruments and effects are ATMOSYNTH patches, on ATproto.

A sequencer of a patch on its own does not always show as playing once the backend says it runs #41

Open opened by center.for.cybernetic.beauty

The Playwright test "a sequencer of a patch on its own stops, starts and restarts by keys while the transport moves" (frontend/e2e/patch-document.spec.js, from line 182) fails most of the time on main, so scripts/suite is red on main where every suite is meant to exit 0.

What is seen #

A patch is opened on its own from a track ("Open … on its own"), its sequencer beat is selected, and its Play toggle is pressed with Enter. The backend counts the press (movedSequencers holds the restart) and says the transport is playing. The test then has the backend say the sequencer runs, through a playheads event. The toggle should then show as pressed. Often it is not: expect(toggle).toHaveAttribute('aria-pressed', 'true') fails at line 211, after its timeout.

Whether the window shows the same thing against the real backend, or only against the fake one with this test's timing, is not known.

How often #

All runs are WebKit, with --retries=0.

  • Main at ec93161, before anything below:
    • --repeat-each=5 --workers=1: failed 5 of 5;
    • one run alone: passed 1 of 1.
  • At 81c0b1d, which moves the engine and editor pins and reads a patch's tempo as text:
    • --repeat-each=5 --workers=1: failed 2 of 5;
    • one run alone: failed 1 of 1;
    • in scripts/suite: failed, retry included.
  • At 81c0b1d, without that commit's change to frontend/src/patch-editor.js:
    • --repeat-each=5 --workers=1: failed 4 of 5.

So it comes and goes on main, with or without that commit. That commit's only change in the window is to what is held of a room's document, which this test never reaches.

A second sequencer test failed in the same scripts/suite run at 81c0b1d: "playing, a sequencer’s playhead stands where the backend counts it, and stopped there is none" (frontend/e2e/patch-editor.spec.js, line 140). It passed when run alone, so it may be load rather than the same fault.

Seen again at 36f8587, in scripts/suite: this test failed, retry included. Beside it, "playing, a sequencer’s playhead stands where the backend counts it, and stopped there is none" (frontend/e2e/patch-editor.spec.js, line 140) failed with its retry too, and then passed 3 of 3 alone (--repeat-each=3 --workers=1). Both wait on the window showing what a playheads event said, so they may be one fault that load brings out.

Sign up or Sign in to add to the discussion.