Restore iOS widgets/App Intent + fix CloudKit relay voice fidelity & dedup - #8
Merged
Merged
Conversation
…dedup The CloudKit-relay PR (#7) accidentally dropped the iOS widget/control/Siri feature set when its branch was squashed. Restore them, and fix three relay issues found in review. Restore (regression from #7): - ReadTextIntent + VoxClawShortcuts (Siri/Spotlight/Shortcuts "Read Text Aloud") - ReadClipboardControl (Control Center) + ReadClipboardWidget (home screen) back into the widget bundle, with WidgetBridge/ReadClipboardIntent - handlePendingClipboardRead + scenePhase wiring so the control/widget's App Group hand-off actually triggers a read Relay fixes: - makeRelayEngine now accepts rate + instructions; both receiver paths (CloudKit wake + LAN) pass the sender's values so relayed speech matches the source's speed/prosody instead of using the receiver's defaults. - Dedup watermark advances to the newest fetched record's sentAt (sender clock) instead of the receiver's Date.now, which could skip records written during the fetch->watermark window and was sensitive to clock skew. Payload now carries sentAt. - CloudSpeechRelay caches a zoneEnsured flag so steady-state send() no longer does a redundant zone-save round-trip on every relayed message. Verified: swift build clean, iOS app + widget extension BUILD SUCCEEDED (AppIntents training re-registers the Read shortcut), 279/279 tests pass. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
malpern
added a commit
that referenced
this pull request
Jun 30, 2026
) README, SKILL.md, and CHANGELOG were missing the features added in #7/#8. - README: cross-device iCloud relay in the pitch + Features; expanded iOS section (Control Center control, home-screen widget, Siri/Shortcuts, Live Activity, TestFlight, relay receiver + privacy note); /ack example; bumped tech stack to Swift 6.4 and added CloudKit/WidgetKit/App Intents/ActivityKit; fixed a user-specific absolute path in the iOS build instructions. - SKILL.md: documented the POST /ack endpoint (project_id required, agent_id scopes to one agent, relays to LAN peers, {"status":"acknowledged"}); added /ack to the 404 endpoint list. Verified semantics against HTTPRequestParser and the relayAck path. - CHANGELOG: added an Unreleased section for the relay + iOS additions and the two relay fixes (voice fidelity, dedup). Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
A code review of the CloudKit-relay PR (#7) found its squash accidentally dropped the iOS widget/control/Siri feature set, plus three relay correctness issues. This restores them and fixes the relay.
Restored (regression from #7)
Relay fixes
Verification
🤖 Generated with Claude Code