Skip to content

opencode-qa serve-wake-split-probe --expect fixed verdict depends on runner speed (wake count flips on unmodified code) #8958

Open

Description

@code-yeongyu

Summary

.agents/skills/opencode-qa/scripts/serve-wake-split-probe.sh --expect fixed returns INCONCLUSIVE (exit 1) on unmodified code whenever the parent session takes more than ~5 s to go idle after the parent wake's noReply admission.

Evidence

Six runs on a busy machine (base and a branch that does not touch this path):

run "no assistant output" requeue promptAsync dispatches wake branch verdict
4 runs 0 1 0 FIXED
2 runs 1 2 1 INCONCLUSIVE

In the INCONCLUSIVE runs the omo log shows Recorded admit-only parent wake ..., then Requeued dispatched parent wake after no assistant output (retryCount 1) about 5 s later, then a second promptAsync dispatching that the fake LLM counts as branch=wake. In the FIXED runs the harness reached FINAL_COUNTS about 2 s after the admission, before that window.

Expected

The --expect fixed verdict is deterministic. It should either wait for the retained reply-required wake to settle (consumed or re-dispatched) before counting, or treat a liveness re-dispatch after a completed parent turn as the designed outcome rather than a split. As written, the verdict depends on how fast the runner is.

Acceptance criteria

  • Ten consecutive --expect fixed runs on the same code give the same verdict, including under CPU load.

Found while validating #8956.

Activity

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

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions