"""LLM context assembly.
`helpers` holds the pure pieces (truncation, fact freshness, prompt blocks);
`builder` holds `ContextBuilder`, which assembles the system prompt, memory
context and the per-message view the model sees.
"""
from .builder import ContextBuilder
from .helpers import (
_INJECTED_IDS_LIMIT,
_LLM_SYSTEM_SOURCES,
_TRUNCATABLE_ROLES,
_USER_MESSAGE_WINDOW_FRAC,
_fact_age,
_fact_value_is_abs_path_outside,
_recall_query,
_truncate_content,
_truncation_budget,
methodologies_block,
profiles_block,
render_todo_lines,
truncate_oversized,
)
__all__ = [
"_INJECTED_IDS_LIMIT",
"_LLM_SYSTEM_SOURCES",
"_TRUNCATABLE_ROLES",
"_USER_MESSAGE_WINDOW_FRAC",
"ContextBuilder",
"_fact_age",
"_fact_value_is_abs_path_outside",
"_recall_query",
"_truncate_content",
"_truncation_budget",
"methodologies_block",
"profiles_block",
"render_todo_lines",
"truncate_oversized",
]