Conversation
Owner
Author
|
Superseded by pingdotgg#12868 — the implementation PR now lives upstream against |
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.
What Changed
Closing review editors could discard unsent text and attachments. Native navigation now protects invested input and transfers comments atomically into the task draft. Web editors retain target-keyed session drafts and original line context across panel dismissal; failed or stale saves cannot clear newer text.
Why
Implements the proposed invariant in pingdotgg#12680. This PR is stacked on that exact documentation branch in the fork; each invariant pair is independent.
Web drafts retain the existing session lifetime. Native back/swipe, attachment transfer, panel reopening and retained line anchors still need real-client proof.
Verification
112 tests across six review/draft-store files passed, including removal immediately after a successful transfer; web/mobile typechecks and targeted lint passed (warnings only).
Independent review: direct SWE-2 Max via Devin, high reasoning requested. Source-only review and a fresh correction review both exited 0. Confirmed findings were fixed and affected checks repeated; remaining conditional findings were checked against the pinned source, with no unresolved actionable defects. The initial tool-based attempt returned no verdict after read commands required confirmation.
UI Changes
Runtime proof (2026-09-20, isolated proof app; base d6f2913 vs this branch): typing a diff-line comment then pressing Cancel discards it silently on base; on this branch a destructive confirm appears ("Discard this comment? Your text has not been added to the draft.").
Before: https://github.com/user-attachments/assets/4f78e941-5004-41f0-8893-461ea5cfb76a
After: https://github.com/user-attachments/assets/ff050741-5128-4628-ae75-02ffa32fbc4a
Only the web diff-comment surface was exercised end to end; the native composer-sheet dismissal path is covered by focused tests — T3 Device tools are unavailable in this environment.
Tracking: https://github.com/saphid/personal-ops/issues/142
Model: GPT-6 Astra via Codex/T3 Code.