diff --git a/src/fabledassistant/services/llm.py b/src/fabledassistant/services/llm.py index 55716a2..6f6929e 100644 --- a/src/fabledassistant/services/llm.py +++ b/src/fabledassistant/services/llm.py @@ -289,20 +289,16 @@ async def build_context( "auto_notes": [], } - # Include current note context if provided (cap at 4000 chars — explicitly selected - # so more generous, but very long notes would blow up the prefill phase) + # Include current note context if provided — full body, no truncation if current_note_id: note = await get_note(user_id, current_note_id) if note: context_meta["context_note_id"] = note.id context_meta["context_note_title"] = note.title - body = note.body or "" - truncated = body[:4000] - suffix = "\n[...truncated]" if len(body) > 4000 else "" system_parts.append( f"\n\n--- Current Note ---\n" f"Title: {note.title}\n" - f"Content:\n{truncated}{suffix}\n" + f"Content:\n{note.body}\n" f"--- End Note ---" ) @@ -318,9 +314,7 @@ async def build_context( ) snippets: list[str] = [] for n in notes: - # 800 chars keeps context meaningful without bloating the prefill phase. - # The user can ask follow-up questions for more detail. - body_preview = n.body[:800] if n.body else "" + body_preview = n.body[:2000] if n.body else "" snippets.append(f"- {n.title}: {body_preview}") context_meta["auto_notes"].append({"id": n.id, "title": n.title}) if snippets: