Skip to content

bug(review): update restart-parity fixture for controller signature #406

Description

@decode2

Problem

upstream/main deterministically fails the restart-parity test because its worker fixture calls executeReviewControllerOperation with a stale positional argument layout.

The fixture passes new Map() as the third argument and the native client as the fourth argument. The current controller signature expects the native client as the third argument, so FINALIZE receives a Map instead of the stubbed native client and exits as native-status-unsupported before invoking the relay.

Reproduction

On upstream/main at 54f691cd9c2b636210823e9a3e7dcf0bd3b1c2dc:

node --experimental-strip-types --test tests/review-host-relay-restart-parity.test.ts

Run three times, the command failed identically three times with 0 passed and 3 failed. The first assertion observed zero relay requests instead of one.

Expected behavior

The worker passes its native stub to the controller's nativeReviewCli parameter. All three restart-parity scenarios reach the relay path and pass.

Actual behavior

The controller receives new Map() as nativeReviewCli, cannot find targetStatus, and returns a blocked native-status-unsupported envelope. The relay runner, provider status stub, and native finalize stub are never called.

Root cause

Current fixture call:

executeReviewControllerOperation(parameters, cwd, new Map(), nativeReviewCli)

Current controller signature begins with:

(parametersValue, sessionCwd, nativeReviewCli, signal?, candidateViews?, ...)

The positional call was not updated when the controller signature changed.

Acceptance criteria

  • The restart worker passes the native stub in the controller's third parameter.
  • tests/review-host-relay-restart-parity.test.ts passes all three scenarios.
  • The full package test suite passes without candidate-only failures.
  • No production behavior or generated runtime artifact changes.
  • The fix remains a focused test-harness work unit within 400 changed lines.

Scope

This is a regression in the P6 test fixture introduced under #311. Issue #311 is already closed, and open issue #377 covers Pi runtime identity rather than this stale fixture signature.

Evidence

Activity

  1. decode2 commented on Aug 24, 2026

    @decode2
    MemberAuthor

    The original failure no longer exists on current main. Merged #411 / #404 removed the stale restart worker fixture and moved restart-parity coverage to the capture API. CI passes on the #411 merge commit and current main.

    Closing this issue as completed by the replacement implementation rather than merging the now-obsolete #407 patch.

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

    status:approvedIssue approved by maintainer; PR may be openedtype:bugBug fix

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions