Repository source: docs/concepts/post_body_formatting.md
Post body formatting
Purpose: Let each post say whether its body is Markdown or plain text, so structured posts read well while text written without Markdown in mind is never reinterpreted.
Scenario: An author writes a changelog with headings and lists and posts it; the thread page shows it formatted and the Board preview shows its words without markup. The composer's Markdown box ticked itself as they typed; another author writing a log with stray asterisks sees it stay unticked (or unticks it) and the post shows exactly as typed. Posts written before the choice existed stay plain until their author, or an operator, picks "Show as Markdown" in the post's ··· menu, which signs a separate post format record; the latest such record decides. An operator can switch Markdown display off for the whole site with FORUM_POST_MARKDOWN_ENABLED; stored records do not change.
Sources: record header (Body-Format), post-safe renderer (source unavailable) (renderPost), preview text (source unavailable), body helper (source unavailable) ($renderPostBody, $plainText), syntax reference, renderer tests (source unavailable).
Boundary: Formatting is display only: signatures, record bytes, search and retraction are unchanged. Raw HTML never renders and post links are http(s) only. The public offline snapshot and scripts/publish_text.* do not yet carry the format, so their posts stay plain.