Review: Port note detail (pal-e-app#71)
Verdict: NEEDS_REFINEMENT
Template Completeness
- [x] All 11 required sections present.
Traceability
- [x] story:reader-browse — [x] arch:frontend — [x] Forgejo issue pal-e-app#71, open
File Targets
- [x]
src/routes/notes/[slug]/+page.svelte— EXISTS. Renders via NoteLayout with blocks, TOC, child notes, parent breadcrumb. - [ ]
src/routes/notes/[slug]/+page.ts— DOES NOT EXIST. Wrong file target.
Dependencies
- #68 resolved.
- Ticket says "Reuse existing BlockRenderer" — component is actually
NoteLayout.svelteatsrc/lib/components/NoteLayout.svelte. Block rendering insrc/lib/components/blocks/. Name "BlockRenderer" does not exist as a component.
Acceptance Criteria
4 criteria, testable. "All block types render via existing BlockRenderer" — wrong component name.
Blast Radius
- Note detail has board redirect: note_type === 'board' sends to /boards/{slug}. Must preserve.
- /notes/[slug]/edit links back to detail. Must not break edit flow.
Recommendation
- Remove +page.ts from file targets.
- Fix component name: "BlockRenderer" should be "NoteLayout" (
$lib/components/NoteLayout.svelte) + block components from$lib/components/blocks/. - Add constraint: preserve note_type === 'board' redirect.