Skip to content

Edit sent messages with encrypted revision history - #51

Merged
fireplacechat-com merged 3 commits into
mainfrom
feat/sent-message-editing
Nov 10, 2026
Merged

fireplacechat-com merged 3 commits into
mainfrom
feat/sent-message-editing

Conversation

@xss3cut10n3r

Copy link
Copy Markdown
Member

Why

People need to correct a sent message while keeping its original context and visible edit history for both participants.

What changed

Add menu/double-tap editing, a separate edit draft, themed checkmark submission, cancellation restoring the ordinary draft, an Edited label and a version-history sheet. Enforce author ownership, ten revisions and the 24-hour sending window. Preserve reactions and quotes, resolve linked-device ordering, and make local/remote deletion dominate every version. Unknown publish outcomes require explicit recovery and never retry automatically.

Edits are encrypted v3 control payloads through the existing double ratchet and device-copy path. No key construction, server fields, rules or dependencies changed. Decision 0022 explains delayed delivery, concurrent revisions, compatibility and deletion limits. Older clients cannot apply edits.

Quote taps now locate lazy rows within the full conversation. A finishing ordinary send clears its own draft while preserving any independently opened edit.

How it was checked

See the review report for fresh-checkout format/analyze, the full test suite, isolated timing tests, rules tests and deterministic render hashes. Tests exercise real encryption with fake Firestore, linked devices, invalid authors/limits, ordering, encrypted reload, deletion, unknown outcomes, keyboard/gesture interaction and concurrent drafts. No physical-device testing. Stacked on the quoted-reply draft; screenshots show the final stack.

Edit composer
Edit history

AI assistance

OpenAI Codex wrote the implementation, tests and review material. Human review, physical-device acceptance and CLA confirmation remain pending. No merge or deployment.

@fireplacechat-com
fireplacechat-com marked this pull request as ready for review November 10, 2026 04:56
@fireplacechat-com
fireplacechat-com requested a review from a team as a code owner November 10, 2026 04:56
Base automatically changed from feat/quoted-message-replies to main November 10, 2026 04:57
xss3cut10n3r and others added 3 commits November 10, 2026 04:57
Apply author-only edits through the existing ratchet, enforce sending limits, preserve history and reactions, and provide edit composition, cancellation, history and direct quote navigation.

Co-authored-by: Codex <noreply@openai.com>
Clear only consumed ordinary text and its reply target; preserve a concurrently opened edit and cover the interaction.

Co-authored-by: Codex <noreply@openai.com>
Include reproducible render hashes, protocol/rules test results and AI assistance disclosure.

Co-authored-by: Codex <noreply@openai.com>
@fireplacechat-com
fireplacechat-com dismissed their stale review November 10, 2026 04:57

The merge-base changed after approval.

@fireplacechat-com
fireplacechat-com force-pushed the feat/sent-message-editing branch from 3123549 to 6529052 Compare November 10, 2026 04:57
@fireplacechat-com
fireplacechat-com enabled stacked auto-merge November 10, 2026 05:02
@fireplacechat-com
fireplacechat-com merged commit 579f09e into main Nov 10, 2026
9 checks passed
@fireplacechat-com
fireplacechat-com deleted the feat/sent-message-editing branch November 10, 2026 05:03
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants