Skip to content

[Bug]: orcad build's @parcel/watcher smoke gate fails good builds roughly 1 run in 3 #17845

Closed

Description

@klaidliadon

Operating system: Linux (Synology DSM)
Orca version: built from main at 94e758666 — between v1.4.191 and v1.4.192


smokeLoadWatcherChild in config/scripts/build-orcad.mjs fails good builds about
one run in three on real hardware, more often the slower the machine.

The gate resolves on the forked child's exit event and treats a non-zero code as
a load failure. But the parent disconnects the IPC channel the instant the child
acks subscribe-started. A child that writes once more then takes EPIPE on an
unhandled 'error' event and exits non-zero — read as "@parcel/watcher failed to
load". Nothing is wrong with the build; the verdict was already in.

Repro:

  1. Run the orcad build on a slow machine (consistent on a Synology NAS, rare on
    fast hardware).
  2. Roughly 1 run in 3 fails at the watcher smoke step.
  3. Re-run with no changes — it passes.

The ack is the real verdict: it is emitted once the child's module graph has
resolved under plain Node, which is all this gate claims to prove. It runs
deliberately before the native module is touched, so a build machine with no
compiled @parcel/watcher still passes. Past the ack the child's fate is not
evidence. An exit before the ack is still a genuine failure.

A gate that fails good builds at this rate is worse than none — it teaches
everyone to re-run, and then it cannot catch the real failure either.

Activity

  1. AmethystLiang commented on Sep 3, 2026

    @AmethystLiang
    Contributor

    thanks for reporting. looking into it

  2. added
    bugSomething isn't working
    orca-remote-serverRemote Orca Server / orca serve / paired remote runtime
    on Sep 19, 2026
  3. added theissue type on Sep 19, 2026
  4. OrcaWin commented on Oct 9, 2026

    @OrcaWin
    Collaborator

    Fixed by #24863: the smoke gate now waits for the watcher to confirm its subscription before disconnecting, and the watcher process no longer crashes on a write after disconnect. If you still see this on a current build, please reopen with details and we'll take another look.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

bugSomething isn't workingorca-remote-serverRemote Orca Server / orca serve / paired remote runtime

Type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions