修復市場情報 writer CLI lazy import
All checks were successful
CD Pipeline / deploy (push) Successful in 1m22s

This commit is contained in:
OoO
2026-05-19 14:01:38 +08:00
parent 934366bdd3
commit d504ddac51
5 changed files with 54 additions and 6 deletions

View File

@@ -1,5 +1,17 @@
"""跨平台市場情報服務模組。"""
from services.market_intel.service import MarketIntelService, MarketIntelRuntimeStatus
__all__ = ["MarketIntelService", "MarketIntelRuntimeStatus"]
def __getattr__(name):
if name in __all__:
from services.market_intel.service import (
MarketIntelRuntimeStatus,
MarketIntelService,
)
return {
"MarketIntelService": MarketIntelService,
"MarketIntelRuntimeStatus": MarketIntelRuntimeStatus,
}[name]
raise AttributeError(f"module {__name__!r} has no attribute {name!r}")

View File

@@ -0,0 +1,3 @@
"""市場情報 rollout phase 單一來源。"""
MARKET_INTEL_PHASE = "phase_69_candidate_queue_review_decision_writer_cli"

View File

@@ -66,6 +66,7 @@ from services.market_intel.opportunity_scoring import (
)
from services.market_intel.platform_seed import build_platform_seed_rows
from services.market_intel.platform_seed_db_diff import build_platform_seed_db_diff_plan
from services.market_intel.phase import MARKET_INTEL_PHASE
from services.market_intel.scheduler_plan import build_scheduler_attach_plan
from services.market_intel.platform_seed_writer import (
build_platform_seed_writer_plan,
@@ -108,7 +109,7 @@ class MarketIntelRuntimeStatus:
class MarketIntelService:
"""市場情報入口服務,先集中 feature gate 與安全狀態。"""
phase = "phase_69_candidate_queue_review_decision_writer_cli"
phase = MARKET_INTEL_PHASE
def get_runtime_status(self) -> MarketIntelRuntimeStatus:
return MarketIntelRuntimeStatus(