Spaces:
Sleeping
Sleeping
| from __future__ import annotations | |
| from dataclasses import fields | |
| from lilith_agent.config import Config | |
| def test_config_has_no_dead_max_json_repairs_field(): | |
| """Guard: max_json_repairs was unused anywhere in src/ and was removed.""" | |
| field_names = {f.name for f in fields(Config)} | |
| assert "max_json_repairs" not in field_names | |
| def test_config_from_env_loads_without_errors(): | |
| cfg = Config.from_env() | |
| assert cfg.recursion_limit > 0 | |
| assert cfg.cheap_provider | |
| assert cfg.strong_provider | |
| def test_budget_knobs_have_sensible_defaults(): | |
| cfg = Config.from_env() | |
| assert cfg.budget_hard_cap >= cfg.budget_warn_at > 0 | |
| assert 0.0 < cfg.semantic_dedup_threshold <= 1.0 | |
| def test_budget_knobs_are_env_overridable(monkeypatch): | |
| monkeypatch.setenv("GAIA_BUDGET_HARD_CAP", "7") | |
| monkeypatch.setenv("GAIA_BUDGET_WARN_AT", "3") | |
| monkeypatch.setenv("GAIA_SEMANTIC_DEDUP_THRESHOLD", "0.8") | |
| cfg = Config.from_env() | |
| assert cfg.budget_hard_cap == 7 | |
| assert cfg.budget_warn_at == 3 | |
| assert abs(cfg.semantic_dedup_threshold - 0.8) < 1e-9 | |
| def test_compact_summarize_defaults_on_and_is_env_overridable(monkeypatch): | |
| monkeypatch.delenv("GAIA_COMPACT_SUMMARIZE", raising=False) | |
| assert Config.from_env().compact_summarize is True | |
| monkeypatch.setenv("GAIA_COMPACT_SUMMARIZE", "false") | |
| assert Config.from_env().compact_summarize is False | |
| def test_answer_contract_defaults_on_and_is_env_overridable(monkeypatch): | |
| monkeypatch.delenv("GAIA_ANSWER_CONTRACT_ENABLED", raising=False) | |
| assert Config.from_env().answer_contract_enabled is True | |
| monkeypatch.setenv("GAIA_ANSWER_CONTRACT_ENABLED", "false") | |
| assert Config.from_env().answer_contract_enabled is False | |
| def test_give_up_recovery_defaults_on_and_is_env_overridable(monkeypatch): | |
| monkeypatch.delenv("GAIA_GIVE_UP_RECOVERY_ENABLED", raising=False) | |
| assert Config.from_env().give_up_recovery_enabled is True | |
| monkeypatch.setenv("GAIA_GIVE_UP_RECOVERY_ENABLED", "false") | |
| assert Config.from_env().give_up_recovery_enabled is False | |