"""Compatibility shim — the compressor lives in `navi.core.compression`.
Existing imports (`from navi.core.compressor import ContextCompressor`) keep
working; new code should import from `navi.core.compression`.
Note for tests: the moved modules each bind their own `settings` object, so a
monkeypatch belongs on the module that reads it
(`navi.core.compression.partition`, `.summarize`, `.compressor`) — patching
this shim would change nothing.
"""
from .compression import (
ContextCompressor,
compress_context,
partition_current_turn_messages,
partition_messages,
should_compress,
)
from .compression.partition import _plan_compression, _turn_importance
from .compression.summarize import (
_MAX_SUMMARY_INPUT_CHARS,
_build_summary_system_prompt,
_format_for_summary,
)
__all__ = [
"_MAX_SUMMARY_INPUT_CHARS",
"ContextCompressor",
"_build_summary_system_prompt",
"_format_for_summary",
"_plan_compression",
"_turn_importance",
"compress_context",
"partition_current_turn_messages",
"partition_messages",
"should_compress",
]