from loguru import logger from ..config import QUERY_PATHS, TABLES, WAREHOUSES from ..db import get_snw from ..db.queries import QueryLoader def run_refresh() -> None: logger.info("Starting Snowflake artist metadata refresh") snw = get_snw(WAREHOUSES["large"]) ql = QueryLoader() rowcount_before = snw.query(f"select count(*) as n from {TABLES['snw']}")["n"][0] logger.info("Appending new artists to Snowflake table") snw.execute(ql.load(QUERY_PATHS.snw_append, incremental=True)) rowcount_after = snw.query(f"select count(*) as n from {TABLES['snw']}")["n"][0] added = rowcount_after - rowcount_before if added: logger.success(f"Refresh completed — {added} new artists added ({rowcount_after} total)") else: logger.info("Refresh completed — no new artists")