Two variables represent the same semantic concept — "data resolution interval" — but are named differently depending on the component:
prometheus_scrape_interval: used by asap-query-engine (both PromQL and SQL paths) for timestamp alignment and sketch lookup validation
data_ingestion_interval: used by asap-planner-rs in SQL mode for generating streaming windows
The query engine has no notion of data_ingestion_interval; the planner has no notion of prometheus_scrape_interval in SQL mode. Callers (e.g. experiment_run_clickhouse.py) must know to pass data_ingestion_interval as prometheus_scrape_interval to the query engine — a sharp edge that caused the bug in #443.
Pick one name (likely data_ingestion_interval or a neutral resolution_interval) and thread it consistently through both components and their configs.
Two variables represent the same semantic concept — "data resolution interval" — but are named differently depending on the component:
prometheus_scrape_interval: used by asap-query-engine (both PromQL and SQL paths) for timestamp alignment and sketch lookup validationdata_ingestion_interval: used by asap-planner-rs in SQL mode for generating streaming windowsThe query engine has no notion of
data_ingestion_interval; the planner has no notion ofprometheus_scrape_intervalin SQL mode. Callers (e.g.experiment_run_clickhouse.py) must know to passdata_ingestion_intervalasprometheus_scrape_intervalto the query engine — a sharp edge that caused the bug in #443.Pick one name (likely
data_ingestion_intervalor a neutralresolution_interval) and thread it consistently through both components and their configs.