Query LLM with retries, caching, and parsing

query_api_robust(
  domain,
  idps,
  config,
  system_prompt,
  user_prompt_template,
  user_input_prompt,
  required_fields,
  collapse_fn,
  cache_dir = NULL,
  max_retries = 5,
  retry_delay_base = 2,
  jitter = TRUE,
  temperature = 0.1,
  verbose = TRUE
)