feat: competitive intelligence & historical pattern matching layer
This commit is contained in:
@@ -124,6 +124,27 @@ TABLE_SCHEMAS: dict[str, pa.Schema] = {
|
||||
"model_performance": MODEL_PERFORMANCE_SCHEMA,
|
||||
}
|
||||
|
||||
# Lazily register schemas defined in worker.py to avoid circular imports.
|
||||
# These are added after the initial dict definition.
|
||||
def _register_worker_schemas() -> None:
|
||||
from services.lake_publisher.worker import (
|
||||
COMPETITOR_RELATIONSHIPS_SCHEMA,
|
||||
COMPETITIVE_SIGNALS_SCHEMA,
|
||||
GLOBAL_EVENTS_SCHEMA,
|
||||
MACRO_IMPACTS_SCHEMA,
|
||||
TREND_PROJECTIONS_SCHEMA,
|
||||
)
|
||||
TABLE_SCHEMAS["competitor_relationships"] = COMPETITOR_RELATIONSHIPS_SCHEMA
|
||||
TABLE_SCHEMAS["competitive_signals"] = COMPETITIVE_SIGNALS_SCHEMA
|
||||
TABLE_SCHEMAS["global_events"] = GLOBAL_EVENTS_SCHEMA
|
||||
TABLE_SCHEMAS["macro_impacts"] = MACRO_IMPACTS_SCHEMA
|
||||
TABLE_SCHEMAS["trend_projections"] = TREND_PROJECTIONS_SCHEMA
|
||||
|
||||
try:
|
||||
_register_worker_schemas()
|
||||
except ImportError:
|
||||
pass # worker.py not available in minimal test environments
|
||||
|
||||
|
||||
@dataclass(frozen=True)
|
||||
class IcebergTableDef:
|
||||
|
||||
Reference in New Issue
Block a user