Repository navigation
v1.22.2 - #53
Merged
Merged
v1.22.2#53
Conversation
The #52 range fix (omitted fields stay out of the packet) was reachable only over raw IPC: the CLI sent no range fields at all. This exposes them as flags mapping 1:1 to rangeStartTimestamp/numberToRequest. Unset stays unset. IsSet, not a zero default, decides whether a field goes in the packet, because the phone reads an explicit 0 as "older than the epoch" or "zero messages" and returns nothing. Negatives are rejected: neither a ms epoch nor a count can be negative. SmsRequestConversation keeps its signature and delegates with nils, so the public client API does not break; the range form is additive. Live note: verified the default path end to end (126 messages, whole thread) and the payload shapes by test. The capped path could not be confirmed live: the phone stopped answering SMS requests mid-session (its SMS plugin has since been disabled device-side, which is also the documented way to end the latch). Retest with the app awake and unrestricted if the cap's phone-side handling is ever in doubt.
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.
Small release. Note the range: PR #52 merged to main after the v1.22.1 tag, so its four commits ship here for the first time, plus the new CLI flags. Compare v1.22.1...v1.22.2, not the PR diff.
Fixed
pairwithreject: trueaccepted the request instead of declining it: the payload parsed into a shape with norejectfield. Now declines or unpairs, matching the docs.0, which Android reads as "older than the epoch", so conversation requests returned nothing. Omitted fields stay out of the packet; the whole thread comes back.sms.incomingu_idwas empty: Android sends the message id as_id. Now read and published.notificationevents carryid, as documented, soreply/dismisshave a stable target.Added
kcd sms conversation [--before <ms-epoch>] [--limit <n>] <device-id> <thread-id>. Flags map 1:1 torangeStartTimestamp/numberToRequest; omitted flags stay out of the packet.SmsRequestConversationkeeps its signature and delegates with nils.Upgrading
Nothing required. No config, wire, or IPC changes. One behavioral inversion to know:
pairwithreject: truenow declines — previously it accepted, which was the bug.Live note: the default conversation path was verified end to end against a connected phone (whole thread returned); the capped path is payload-asserted by test but not yet phone-confirmed.