Paused: 2026-02-18T17:13:43Z Status: COMPLETE & DEPLOYED — just needs git commit
Implemented the 3-tier document hierarchy UI (documents → extracted_documents → document_sections). All changes are deployed to Cloudflare Workers at viewroyal.ai.
apps/web/app/lib/types.ts— AddedExtractedDocumentinterface,extracted_document_idtoDocumentSectionapps/web/app/lib/document-types.ts— NEW — Type normalization (53 raw types → 10 canonical), label/color utilitiesapps/web/app/components/markdown-content.tsx— NEW — Markdown renderer usingmarked(not react-markdown, which caused hydration issues)apps/web/app/services/meetings.ts— AddedgetExtractedDocumentsForDocument,getExtractedDocumentsForMeetingapps/web/app/routes/document-viewer.tsx— Major rewrite: collapsible extracted doc cards, TOC sidebar, grouped sectionsapps/web/app/routes/meeting-detail.tsx— Loader fetches extractedDocuments, documents tab shows grouped view, passes to AgendaOverviewapps/web/app/components/meeting/DocumentSections.tsx— Grouped view with extracted doc headers, markdown renderingapps/web/app/components/meeting/AgendaOverview.tsx— Passes extractedDocuments through to DocumentSectionsapps/web/package.json+pnpm-lock.yaml— Addedmarkeddependency
- Used
markedinstead ofreact-markdownto avoid SSR hydration mismatches on Cloudflare Workers - Document viewer starts collapsed — users click to expand individual extracted documents
- Summary preview (2-line clamp) visible in collapsed state
- Orphan sections (no extracted_document_id) shown at bottom of document viewer
- Commit the changes (all web app files listed above)
- No further implementation needed — work is complete
- Next project work: Phase 7.1 re-extraction (blocked on Gemini API quota) or Phase 9 planning