Render task descriptions as markdown (not just epics)

t-187·WorkTask·
·
·
·Omni/Jr.hs
Created3 months ago·Updated3 months ago

Description

Edit

On /tasks/<id> pages, task descriptions are rendered as plain monospaced text (<pre>), while epic designs are rendered as formatted markdown. Both should use markdown rendering.

Current State

In DescriptionViewPartial ToHtml (Web.hs ~1820):

if isEpic
  then Lucid.div_ [Lucid.class_ "markdown-content"] (renderMarkdown desc)
  else Lucid.pre_ [Lucid.class_ "description"] (Lucid.toHtml desc)

Fix

Change to always use markdown:

if Text.null desc
  then Lucid.p_ [Lucid.class_ "empty-msg"] (if isEpic then "No design document yet." else "No description yet.")
  else Lucid.div_ [Lucid.class_ "markdown-content"] (renderMarkdown desc)

The isEpic flag is still useful for:

  • Placeholder text ("No design..." vs "No description...")
  • Edit textarea rows (15 for epics, 10 for tasks)
  • Section header ("Design" vs "Description")

But not for choosing render format.

Also Check

TaskDetailPage initial render (before any HTMX swaps) should also use markdown. Search for other places where description is rendered with <pre>.

Files: Omni/Jr/Web.hs

Testing: 1. Create a task with markdown in description (headers, lists, code blocks) 2. View task detail page 3. Verify markdown renders properly (not as raw text)

Timeline (0)

No activity yet.