mirror of
https://github.com/zvx-echo6/meshai.git
synced 2026-08-26 17:31:34 +00:00
chore: remove central.budget re-export shim
The shim's implementation lived at notifications.formatters._budget from the start; central.budget was only a 9-line re-export kept around for import-path compatibility. Point every importer directly at the real module and delete the shim: - notifications/renderers/composer.py: lazy import inside a function - central/wfigs_handler.py, central/satpass_handler.py: import line only - tests/test_fire_refactor.py, test_nws_refactor.py, test_firms_refactor.py: import line only, no behavior change test_budget_shim.py existed solely to assert identity-equality between the shim and the real module; with the shim gone there is nothing left for it to test, so it is deleted too. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
parent
b7fa0aad02
commit
6aec582fcb
8 changed files with 6 additions and 50 deletions
|
|
@ -1,9 +0,0 @@
|
|||
"""Re-export shim — implementation has moved to meshai.notifications.formatters._budget.
|
||||
|
||||
Every existing ``from meshai.central.budget import budget_for, fit_to_budget``
|
||||
import continues to work unchanged. This shim is the sole consumer of the
|
||||
canonical implementation; update the implementation there, not here.
|
||||
"""
|
||||
from meshai.notifications.formatters._budget import budget_for, fit_to_budget
|
||||
|
||||
__all__ = ["budget_for", "fit_to_budget"]
|
||||
|
|
@ -43,7 +43,7 @@ from typing import Any, Optional
|
|||
from zoneinfo import ZoneInfo
|
||||
|
||||
from meshai.adapter_config import adapter_config
|
||||
from meshai.central.budget import budget_for, fit_to_budget
|
||||
from meshai.notifications.formatters._budget import budget_for, fit_to_budget
|
||||
from meshai.persistence import get_db
|
||||
|
||||
logger = logging.getLogger(__name__)
|
||||
|
|
|
|||
|
|
@ -29,7 +29,7 @@ inside that connection's autocommit mode.
|
|||
|
||||
from __future__ import annotations
|
||||
from meshai.adapter_config import adapter_config
|
||||
from meshai.central.budget import budget_for, fit_to_budget
|
||||
from meshai.notifications.formatters._budget import budget_for, fit_to_budget
|
||||
|
||||
import logging
|
||||
import time
|
||||
|
|
|
|||
|
|
@ -309,7 +309,7 @@ def _resolve_budget(event: Event) -> int:
|
|||
src = (getattr(event, "source", "") or "").strip()
|
||||
if src:
|
||||
try:
|
||||
from meshai.central.budget import budget_for
|
||||
from meshai.notifications.formatters._budget import budget_for
|
||||
return budget_for(src)
|
||||
except Exception:
|
||||
pass
|
||||
|
|
|
|||
|
|
@ -1,35 +0,0 @@
|
|||
"""Phase-0: verify the budget.py re-export shim is identity-equal to the impl.
|
||||
|
||||
Both import paths must resolve to the SAME function objects so any runtime
|
||||
patching (e.g. in existing tests) affects both paths simultaneously.
|
||||
"""
|
||||
|
||||
import meshai.central.budget as _shim
|
||||
import meshai.notifications.formatters._budget as _impl
|
||||
|
||||
|
||||
def test_budget_for_is_same_object():
|
||||
assert _shim.budget_for is _impl.budget_for, (
|
||||
"meshai.central.budget.budget_for must be the same object as "
|
||||
"meshai.notifications.formatters._budget.budget_for"
|
||||
)
|
||||
|
||||
|
||||
def test_fit_to_budget_is_same_object():
|
||||
assert _shim.fit_to_budget is _impl.fit_to_budget, (
|
||||
"meshai.central.budget.fit_to_budget must be the same object as "
|
||||
"meshai.notifications.formatters._budget.fit_to_budget"
|
||||
)
|
||||
|
||||
|
||||
def test_shim_imports_work():
|
||||
"""Smoke: the public names are importable from the legacy path."""
|
||||
from meshai.central.budget import budget_for, fit_to_budget # noqa: F401
|
||||
assert callable(budget_for)
|
||||
assert callable(fit_to_budget)
|
||||
|
||||
|
||||
def test_budget_for_returns_default_without_adapter_config(monkeypatch):
|
||||
"""budget_for falls back to 140 when the adapter key is absent."""
|
||||
val = _shim.budget_for("__no_such_adapter__")
|
||||
assert val == 140
|
||||
|
|
@ -22,7 +22,7 @@ from __future__ import annotations
|
|||
import pytest
|
||||
|
||||
from meshai import central_normalizer as cn
|
||||
from meshai.central.budget import budget_for
|
||||
from meshai.notifications.formatters._budget import budget_for
|
||||
from meshai.central.wfigs_handler import (
|
||||
_build_canonical,
|
||||
_render as _wfigs_render,
|
||||
|
|
|
|||
|
|
@ -31,7 +31,7 @@ import uuid
|
|||
|
||||
import pytest
|
||||
|
||||
from meshai.central.budget import budget_for
|
||||
from meshai.notifications.formatters._budget import budget_for
|
||||
from meshai.notifications.formatters.fire import format as fire_format
|
||||
from meshai.notifications.formatters.firms import format as firms_format
|
||||
from meshai.notifications.gating.firms import decide as firms_decide
|
||||
|
|
|
|||
|
|
@ -38,7 +38,7 @@ from datetime import datetime
|
|||
|
||||
import pytest
|
||||
|
||||
from meshai.central.budget import budget_for
|
||||
from meshai.notifications.formatters._budget import budget_for
|
||||
from meshai.notifications.formatters.nws import format as nws_format
|
||||
from meshai.notifications.gating.nws import decide as nws_decide
|
||||
from meshai.persistence import close_thread_connection, init_db
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue