Skip to content

fix(macos): keep node invokes responsive during system.run#100842

Merged
vincentkoc merged 2 commits into
mainfrom
fix/macos-node-invoke-current
Jul 6, 2026
Merged

fix(macos): keep node invokes responsive during system.run#100842
vincentkoc merged 2 commits into
mainfrom
fix/macos-node-invoke-current

Conversation

@vincentkoc

@vincentkoc vincentkoc commented Jul 6, 2026

Copy link
Copy Markdown
Member

Closes #89423

What Problem This Solves

Fixes an issue where the macOS app node could stop receiving gateway frames while a system.run invoke was still in flight, causing the gateway to mark the otherwise-running node offline.

Why This Change Was Made

Invoke execution now runs independently from the WebSocket receive callback while preserving the existing channel-generation guard, so late results cannot leak onto a replacement connection. The regression test blocks one system.run, proves a second invoke is received and answered before the first completes, then verifies the blocked result is delivered.

User Impact

Longer macOS system.run commands no longer stall unrelated node traffic or force an avoidable reconnect.

Evidence

  • Exact PR head: 9310e393ef0e4434e86773d20d3dd249249202d2.
  • Hosted exact-head CI passed in run 28789889999, including macos-swift, macos-node, iOS build, and Android build/test lanes.
  • Native maintainer preparation passed on the same head against current main with OPENCLAW_TESTBOX=1 bash scripts/pr prepare-run 100842.
  • swiftformat --lint ... --config config/swiftformat passed for both changed Swift files.
  • swift build --package-path apps/shared/OpenClawKit --target OpenClawKit passed.
  • Changelog is not required for this changed-file set.

@vincentkoc vincentkoc added the clownfish Tracked by Clownfish automation label Jul 6, 2026
@vincentkoc vincentkoc self-assigned this Jul 6, 2026
@openclaw-barnacle openclaw-barnacle Bot added size: S maintainer Maintainer-authored PR labels Jul 6, 2026
@vincentkoc

Copy link
Copy Markdown
Member Author

@clawsweeper review

@clawsweeper

clawsweeper Bot commented Jul 6, 2026

Copy link
Copy Markdown
Contributor

🦞🧹
ClawSweeper re-review requested.

I asked ClawSweeper to review this item again.
Action: item re-review queued (workflow sweep.yml, event repository_dispatch).
Result: the existing ClawSweeper review comment will be edited in place when the review finishes.

@clawsweeper

clawsweeper Bot commented Jul 6, 2026

Copy link
Copy Markdown
Contributor

Codex review: stale review; fresh review needed.

Summary
The latest durable ClawSweeper review was for head 37b0d77fbc2011d4558d96bd35e072401d633a68, but the PR head is now 9310e393ef0e4434e86773d20d3dd249249202d2. Its old verdict and PR readiness labels are no longer current.

Next step
Run or wait for a fresh ClawSweeper review on the current PR head.

@vincentkoc
vincentkoc marked this pull request as ready for review July 6, 2026 11:40
@vincentkoc
vincentkoc requested review from a team as code owners July 6, 2026 11:40
@openclaw-barnacle openclaw-barnacle Bot added docs Improvements or additions to documentation app: android App: android app: ios App: ios app: macos App: macos app: web-ui App: web-ui gateway Gateway runtime cli CLI command changes scripts Repository scripts commands Command implementations agents Agent runtime and tooling extensions: acpx extensions: anthropic extensions: openai extensions: memory-wiki extensions: codex size: XL and removed size: S labels Jul 6, 2026
@vincentkoc

Copy link
Copy Markdown
Member Author

@clawsweeper re-review

@clawsweeper

clawsweeper Bot commented Jul 6, 2026

Copy link
Copy Markdown
Contributor

🦞🧹
ClawSweeper re-review requested.

I asked ClawSweeper to review this item again.
Action: item re-review queued (workflow sweep.yml, event repository_dispatch).
Result: the existing ClawSweeper review comment will be edited in place when the review finishes.

@vincentkoc

Copy link
Copy Markdown
Member Author

@clawsweeper re-review

@vincentkoc

Copy link
Copy Markdown
Member Author

@clawsweeper re-review

@clawsweeper

clawsweeper Bot commented Jul 6, 2026

Copy link
Copy Markdown
Contributor

🦞🧹
ClawSweeper re-review requested.

I asked ClawSweeper to review this item again.
Action: item re-review queued (workflow sweep.yml, event repository_dispatch).
Result: the existing ClawSweeper review comment will be edited in place when the review finishes.

@vincentkoc
vincentkoc force-pushed the fix/macos-node-invoke-current branch from 37b0d77 to 9310e39 Compare July 6, 2026 11:59
@vincentkoc

Copy link
Copy Markdown
Member Author

@clawsweeper re-review

@clawsweeper

clawsweeper Bot commented Jul 6, 2026

Copy link
Copy Markdown
Contributor

🦞👀
ClawSweeper picked this up.

Command router queued. I will update this comment with the next step.

@clawsweeper

clawsweeper Bot commented Jul 6, 2026

Copy link
Copy Markdown
Contributor

🦞🧹
ClawSweeper re-review requested.

I asked ClawSweeper to review this item again.
Action: item re-review queued (workflow sweep.yml, event repository_dispatch).
Result: the existing ClawSweeper review comment will be edited in place when the review finishes.

@vincentkoc
vincentkoc merged commit 8b86645 into main Jul 6, 2026
48 checks passed
@vincentkoc
vincentkoc deleted the fix/macos-node-invoke-current branch July 6, 2026 12:06
@vincentkoc

Copy link
Copy Markdown
Member Author

Merged via squash.

github-actions Bot pushed a commit to Desicool/openclaw that referenced this pull request Jul 7, 2026
…100842)

* fix(macos): keep app node connected after system.run invoke

* fix(macos): document node invoke receive isolation

---------

Co-authored-by: openclaw-clownfish[bot] <280122609+openclaw-clownfish[bot]@users.noreply.github.com>
giodl73-repo pushed a commit to giodl73-repo/openclaw that referenced this pull request Jul 8, 2026
…100842)

* fix(macos): keep app node connected after system.run invoke

* fix(macos): document node invoke receive isolation

---------

Co-authored-by: openclaw-clownfish[bot] <280122609+openclaw-clownfish[bot]@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

clownfish Tracked by Clownfish automation maintainer Maintainer-authored PR size: S

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Mac App] node.invoke system.run causes WebSocket disconnection on macOS

1 participant