The block editor assumed cards-as-objects leaves (ref/alt-with-refs/each-with-ref), so a hand-authored composition (the compose-demo: text/row/alt-with-text/each-with-inline) fell through to "(unknown block)" for every text/row node. Now every node kind gets a labelled row + preview + move/remove controls: card (✎ chip), text (its content), layout (row/grid + item count), field, group, and a graceful "other". Conditionals/repeaters display each branch via host/blog--node-display (a ref → ✎ chip, else the inline text/summary) instead of assuming a ref. host/blog--node-kind extended (text/layout/field/group); +node-display/+branch-display. TEST-FIRST: a mixed body (text + alt-with-text + row + each-with-inline) asserts the editor has NO "unknown block" and labels text/layout/for-each. RED before, GREEN after. blog 171/171. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
125 KiB
125 KiB