mirror of
https://gh-proxy.org/https://github.com/klinsmaya/multica.git
synced 2026-11-09 18:06:45 +08:00
* fix(comments): stop rendering a placeholder for a deleted reply A comment deleted while it still had replies keeps its row as a tombstone so those replies keep a direct parent (#8296), and every client rendered that row as a "This comment was deleted" line. A thread renders its replies flat, in chronological order, so the tombstone carried no structure the line could explain — it was a row that said nothing. Deleted replies now render nothing at all: no row, no divider, and no place in the reply or folded counts. Their own replies keep rendering where they were (a tombstone always has a live descendant, since the server prunes one that loses its last reply), and runs anchored to a tombstone still render, so a deleted agent trigger never takes the agent's run block or its published reply with it. A deleted thread ROOT keeps its placeholder: it heads the thread, and hiding it would leave its replies with nothing above them. Co-authored-by: multica-agent <[email protected]> * fix(comments): land a deep link above a deleted reply instead of nowhere A tombstone reply renders nothing as of the previous commit, so an inbox notification or a share link naming one had no DOM anchor to scroll to and no row to flash: the landing effect looked up an element that was no longer there, returned, and left the user wherever the timeline opened. The landing now resolves to the comment above where the tombstone was — the nearest visible reply before it, or the thread root when it had none. The original comment id stays the notification's identity: the landing guards and the memento still key off it, so a repeat visit is still recognized as the same landing. Mobile applies the same rule to its flash target. The matrix lives in comment-deletion.test.ts; issue-detail.test.tsx covers the wiring. Co-authored-by: multica-agent <[email protected]> --------- Co-authored-by: J <[email protected]> Co-authored-by: multica-agent <[email protected]>