gulliver_incremental
Classifies a scheduled model as append, partition overwrite, merge recompute, or not safe, then generates incremental SQL and dbt config and estimates rows skipped per run without writing data.
Instructions
Incremental advisor for a model that rebuilds everything each run. Classifies it (append, partition_overwrite, merge_recompute, not_safe), generates the incremental SQL and dbt config as text, and, with a connection, measures how many rows a run would skip (one budget-checked count query). not_safe means the result would change, so keep the full rebuild. It never writes data. Use it for models that run on a schedule; use gulliver_fix for a single slow query.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| sql | Yes | The model's SELECT (dbt Jinja allowed). | |
| period | No | How often it runs / the recompute window, e.g. '1d', '1h'. | 1d |
| lookback | No | Extra periods to recompute for late data. | |
| connection | No | Connection name as listed by gulliver_status (from gulliver.toml or GULLIVER_DSN). Omit for the default connection. | |
| unique_key | No | Columns that identify a row, for merge strategies. Omit for append-only models. | |
| time_column | No | Column that tells which rows are new, e.g. 'ts'. Omit to let Gulliver guess. |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| status | Yes | ||
| next_step | Yes |