Repository navigation
Add encrypted quoted replies and swipe-to-reply composition - #50
Merged
Merged
Conversation
Document encrypted payloads, ordering, recovery and the requested mobile interactions before implementation. Co-authored-by: Codex <noreply@openai.com>
Keep quote metadata through recovery and linked copies, scrub deleted originals, and expose reply previews and local navigation with tests and render states. Co-authored-by: Codex <noreply@openai.com>
Co-authored-by: Codex <noreply@openai.com>
fireplacechat-com
approved these changes
Nov 10, 2026
fireplacechat-com
approved these changes
Nov 10, 2026
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.
Why
Replying to a particular message should preserve its context for both participants and linked devices.
What changed
Add swipe-right and Reply menu/accessibility actions, a cancellable quote preview above the composer, and a quote inside the sent bubble. Quotes carry bounded snapshots in encrypted v3 text payloads through the existing sender/receiver and receive journal. Preserve them through uncertain sends, status checks, explicit new-copy sends and local-save repair. Deleting a known original scrubs its quoted text locally.
Ordinary text stays v1. No keys, cryptographic algorithms, Firestore rules/fields, packages or plaintext server data changed. Read decision 0022 for validation, compatibility and privacy. Older clients show reply text without its quote. The following edit draft improves quote navigation to scroll within the full timeline.
How it was checked
Fresh clone: format/analyze clean; 58 targeted tests, 9 accessibility/menu edge tests and 8 reply renders passed. Final-stack regression and rules results are in the review report. No physical-device testing. Builds on the merged messaging work in #45–48.
AI assistance
OpenAI Codex wrote the implementation, tests, protocol note and review material. Human review, physical-device acceptance and CLA confirmation remain pending. No merge or deployment.