When a list node is the target of a NodeSelection, findParentNode resolves
to its parent list rather than the selected node. Check the selected node
directly so the toolbar reflects the selected list.
https://claude.ai/code/session_01BGH191WyuL9SgQyjfJ3YsD
When the selection sits inside a nested list, the toolbar previously marked
both the inner list and any ancestor list of a different type as active,
because each list button walked the full ancestor chain. Highlight only the
list closest to the selection.
https://claude.ai/code/session_01BGH191WyuL9SgQyjfJ3YsD
A checklist nested inside any list (bullet, ordered, or another checklist)
no longer carries the 1em vertical margin of a top-level checklist. Since
both list_item and checkbox_item render as li elements, target any
checklist-wrapper inside an li rather than only those inside another wrapper.
https://claude.ai/code/session_01BGH191WyuL9SgQyjfJ3YsD
After converting a list to a checklist via the checkbox marker input rule,
position the selection at the start of the converted item so the user can
continue typing immediately.
https://claude.ai/code/session_01BGH191WyuL9SgQyjfJ3YsD
Typing "[ ] " at the start of an existing bullet or ordered list item now
converts the whole list to a checklist, preserving nested list structure,
reusing the in-place list conversion utility.
https://claude.ai/code/session_01BGH191WyuL9SgQyjfJ3YsD
Converting a list to or from a checklist previously cleared all nodes and
re-wrapped them, which flattened any nested list structure. Convert the
list nodes in place instead, recursively mapping list and item types so
nesting is preserved.
https://claude.ai/code/session_01BGH191WyuL9SgQyjfJ3YsD