Skip to content

Instantly share code, notes, and snippets.

@omarshahine
Created April 19, 2026 19:43
Show Gist options
  • Select an option

  • Save omarshahine/c1b153f542fe6cb8992f042d06e62390 to your computer and use it in GitHub Desktop.

Select an option

Save omarshahine/c1b153f542fe6cb8992f042d06e62390 to your computer and use it in GitHub Desktop.
landpr handoff: PR #69070
Land PR #69070 via /landpr.
Context (self-contained — you don't have prior session history):
- Repo: openclaw/openclaw (cloned at ~/GitHub/openclaw)
- PR: https://github.com/openclaw/openclaw/pull/69070
- Branch: fix/bluebubbles-send-method-explicit
- Tip commit: acc1589305
- Author: me (omarshahine, maintainer)
- Title: "bluebubbles: always set method explicitly on text sends, force Private API on macOS 26"
- Closes: #64480 (silent delivery failure without Private API) and #53159 (macOS 26 plain-text AppleScript -1700)
What's in the PR (2 commits):
1. f575743efa — always set `method` on outbound text sends ("private-api" or "apple-script", never omitted); macOS 26 override in resolvePrivateApiDecision forces Private API for plain text when available.
2. acc1589305 — follow-up from Greptile/Codex P1: lazy refresh now fires on any null privateApiStatus, not just reply/effect, so macOS 26 detection doesn't silently regress after the 10-min server-info cache expires.
Verification already done by me before handoff:
- Scoped tests: `pnpm test extensions/bluebubbles` = 469/469 pass
- tsgo pre-existing failure: `pnpm tsgo:extensions` reports errors in `extensions/qa-lab/src/providers/aimock/server.ts` (missing `@copilotkit/aimock` module). Confirmed present on main — unrelated to this PR. Do not block landing on these.
- Bot reviews: Greptile + Codex P1 addressed in commit acc1589305. Greptile confidence score was 4/5 pre-fix; the P1 concern (cache-expiry regression path) was resolved.
- Real-world smoke: deployed to my macOS 26.3.1 Lobster setup (BB Server 1.9.9, Private API enabled, 127.0.0.1:1234). Sent a plain-text message via `openclaw message send --channel bluebubbles --target '+1...'` — message delivered to iPhone. BB Server log confirms the expected new request pattern: `/api/v1/server/info` probe fires before `/api/v1/message/text` for plain-text sends (Bug C fix active). Smoke details posted as PR comment #4276666676.
Changelog entry is in the PR (Unreleased → Fixes, ~line 24 of CHANGELOG.md).
Run the /landpr workflow (review → prepare → merge). For the review phase, note that maintainer review is already complete — flag that in the review artifacts rather than re-deriving a finding from scratch. For the prepare phase, use the landing bar appropriate for macOS (pnpm check + pnpm test; skip pnpm build unless the touched surface plausibly affects build output — this PR only touches extensions/bluebubbles/src/{send,send.test,test-harness}.ts and CHANGELOG.md, none of which affect bundling).
Preferred squash commit title: the PR title. Preferred merge: squash. Do not force-push to main. Use /landpr's standard merge path.
After merge: check out main, pull, confirm the merge commit landed, clean up the local branch `fix/bluebubbles-send-method-explicit`. No need to do broader BB cleanup — the rest of the session I just ran is done.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment