diff --git a/src/lib/components/common/RichTextInput.svelte b/src/lib/components/common/RichTextInput.svelte
index b9dd058553..0724b3279b 100644
--- a/src/lib/components/common/RichTextInput.svelte
+++ b/src/lib/components/common/RichTextInput.svelte
@@ -1217,11 +1217,9 @@
} else {
if (value !== mdValue) {
editor.commands.setContent(
- preserveBreaks
- ? value
- : marked.parse(value.replaceAll(`\n
`, `
`), {
- breaks: false
- })
+ marked.parse(value.replaceAll(`\n
`, `
`), {
+ breaks: false
+ })
);
selectTemplate();
diff --git a/src/lib/components/workspace/Knowledge/KnowledgeBase.svelte b/src/lib/components/workspace/Knowledge/KnowledgeBase.svelte
index 999808690d..e7c3c40070 100644
--- a/src/lib/components/workspace/Knowledge/KnowledgeBase.svelte
+++ b/src/lib/components/workspace/Knowledge/KnowledgeBase.svelte
@@ -171,14 +171,18 @@
const fileSelectHandler = async (file) => {
try {
- selectedFile = file;
- const rawContent = selectedFile?.data?.content || '';
+ const rawContent = file?.data?.content || '';
- // Normalize single newlines to paragraph breaks (double newlines) so the
- // rich text editor's markdown parser preserves them. Without this, single
- // newlines get collapsed into spaces during markdown parsing (breaks: false).
- // Existing double+ newlines (paragraph breaks) are left unchanged.
- selectedFileContent = rawContent.replace(/(?