from types import SimpleNamespace from agent.native_compaction import ( native_compaction_context_management, resolve_native_compaction_capabilities, ) def _agent(capabilities): return SimpleNamespace( model="gpt-5.6", base_url="https://proxy.example/v1", codex_responses_native_compaction=True, compression_enabled=True, codex_responses_compact_threshold=200_000, context_compressor=None, capabilities=capabilities, ) def test_trusted_destination_capabilities_are_explicitly_enabled(): capabilities = resolve_native_compaction_capabilities( model="gpt-5.6", base_url="https://api.openai.com/v1", ) assert capabilities == {"native_compaction": True} def test_untrusted_destination_capabilities_are_explicitly_denied(): capabilities = resolve_native_compaction_capabilities( model="gpt-5.6", base_url="https://openrouter.ai/api/v1", ) assert capabilities == {"native_compaction": False} def test_default_openai_destination_is_enabled_without_explicit_base_url(): capabilities = resolve_native_compaction_capabilities( model="gpt-5.6", base_url="", provider="openai", ) assert capabilities == {"native_compaction": True} def test_explicit_false_capability_denies_native_payload(): agent = _agent({"native_compaction": False}) assert native_compaction_context_management(agent, is_codex_backend=False) is None def test_missing_capability_keeps_default_deny(): agent = _agent({}) assert native_compaction_context_management(agent, is_codex_backend=False) is None