Skip to content

bug(orchestration): retain mutation reservations after response timeout #926

Description

@Juliusolsson05

Expected behavior

Distinguish expired-before-dispatch from outcome-unknown-after-dispatch. Retain scoped conflicting-mutation authority until reconciliation, without blocking unrelated scopes or replaying an uncertain create.

Source finding and impact

The renderer response timeout deletes pending state and rejects; the queue finally releases its active slot and dispatches the next request. This proves caller timeout, not that a previously dispatched renderer mutation stopped.

Evidence and environment

Inspected source at 552914f5610518458f944fa1bdaf63f243685bd1 on 2026-09-12 in the local macOS workspace. This finding has not yet been reproduced through a running application or the package integration suite.

Regression and acceptance

Delay child creation beyond bridge timeout, queue a conflicting operation and then complete the original late. Exactly one logical effect must be discoverable, no blind duplicate occurs, and unrelated windows progress.

The resolving PR must protect the observable contract and document any remaining uncertainty. This planning pass makes no runtime changes.

Refs #918; planning finding F13.

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