diff --git a/claude-notes/plans/2026-09-10-q2-preview-task-checkbox-layout.md b/claude-notes/plans/2026-09-10-q2-preview-task-checkbox-layout.md new file mode 100644 index 000000000..03cc5ff2c --- /dev/null +++ b/claude-notes/plans/2026-09-10-q2-preview-task-checkbox-layout.md @@ -0,0 +1,280 @@ +# q2-preview: task-list checkbox renders on its own line above the item text + +**Strand:** bd-qif9l4cx +**Related:** bd-q2wqj24c (CommentBlock wrapper `
` breaks parent > child +parity in general), bd-tvtknbhx (interactive checkboxes; its open polish item +(2) — loose/Para-leading task items — is fixed by this plan as a by-product). +**Status:** done 2026-09-10 (all phases; see evidence under Phase 3). PR: https://github.com/quarto-dev/q2/pull/673 + +## Overview + +Reported 2026-09-10 on quarto-hub.com: in the `q2-preview` format a task item +such as + +```markdown +* \[Elliot\] + * looking into QH file sync bug a bit + * [x] working with Julia on getting her work on replacing vdocs in Positron merged +``` + +renders the checkbox on an empty line by itself, with the item text (and the +list bullet) on the line below. + +### Reproduction (done, 2026-09-10) + +Fixture: the snippet above as `tasklist.qmd`, served with +`target/debug/q2 preview tasklist.qmd --no-browser`, inspected with a headless +Playwright script (`inspect.mjs`, scratchpad) that finds the checkbox in the +preview frame and dumps its `
  • `'s outerHTML plus bounding rects. Live DOM of +the item: + +```html +
  • + +
  • +``` + +The checkbox's rect is at y=180.8 (13px tall) and the label's at y=175.8 with +height 51px: two line boxes. A second fixture with only task items +(`- [x] done item` / `- [ ] todo item`) shows the same DOM under +`