emrg: GUI rant detail markdown preprocessing + click-to-collapse (rant 2026-08-15T10:41:43) - #806
Conversation
…t 2026-08-15T10:41:43)
|
I tested this PR end-to-end on branch `feature/rant-detail-markdown` (head a3dc8d9) and found it working as described. |
argszero
left a comment
There was a problem hiding this comment.
✅ LGTM — cycle
Reviewed the full diff: preprocessRantMarkdown correctly maps 【】section markers to #### headings for short lines (≤60 chars) while preserving the original text verbatim (prefix-only, no rewrite), with null/empty safety. The click-to-collapse fix is right — clicking the already-expanded row's own detail now collapses it instead of the previous delete+rebuild loop that made it impossible to close; switching to another row still swaps to that row's detail (only one open). CSS additions (.rant-md h4 hierarchy + nested list indentation) are minimal and scoped. Tests are discriminating: positive (short 【】lines → h4, original preserved), negative (long line >60 chars not converted), and the nextElementSibling mock faithfully models the DOM for the collapse behavior. Agent.md counts synced (GUI 255→257, renderer smoke 127→129). CI test + test-windows both SUCCESS (run 31861112438).
argszero
left a comment
There was a problem hiding this comment.
✅ LGTM — cycle
Fresh review (R1933): re-verified the diff against master a65a2a8 — preprocessRantMarkdown maps line-start 【xxx】 markers to #### headings only for short lines (≤60 chars, prefix-only, original text preserved), with null/empty safety; the click-to-collapse logic checks row.nextElementSibling for the row's own detail before removing all open details, so re-click collapses and cross-row switching swaps cleanly. CSS additions are scoped (.rant-md h4 + nested list indent). Test mock's nextElementSibling getter faithfully models DOM sibling semantics. Agent.md counts synced (257, renderer smoke 129). CI test + test-windows PASS (run 31861112438).
argszero
left a comment
There was a problem hiding this comment.
✅ LGTM — cycle
R1934 fresh re-check: diff unchanged against master a65a2a8; preprocessRantMarkdown (short-line 【】→#### prefix-only, null-safe) and click-to-collapse (own nextElementSibling detail → collapse; cross-row swap) verified; CI test + test-windows still PASS (run 31861112438). Third consecutive ✅ from a distinct cycle.
argszero
left a comment
There was a problem hiding this comment.
✅ LGTM — cycle
3rd approval. Re-verified diff vs master a65a2a8: preprocessRantMarkdown maps line-start 【】 markers to #### headings only for short lines (≤60 chars, prefix-only, original text preserved), null/empty-safe, exported for tests; click-to-collapse checks row.nextElementSibling for the row's own detail before removing all open details — re-click collapses, cross-row click swaps; CSS scoped (.rant-md h4 + nested list indent). Discriminating positive/negative tests; nextElementSibling mock faithfully models DOM. Agent.md counts synced (257). CI test + test-windows PASS (run 31861112438).
Summary
Host rant 2026-08-15T10:41:43 — two rant-management issues in the GUI rant panel (dialogs.js renderRantList):
#) so no visual hierarchy; nested<ol>><ul>lists render with broken indentation.preprocessRantMarkdown(): line-start【xxx】segments (≤60 chars) are mapped to####headings before rendering — original text preserved (prefix only, never rewritten)..rant-md h4sizing +.rant-md li > ul/olnested-list indentation.Tests
Rant quoted verbatim in body; implementation per spec.