Add write-incremental-only checkpoint feature flag

What does this MR do?

Introduces the duo_workflow_write_incremental_only feature flag (wip, default off).

When it is enabled for a workflow that already writes incremental checkpoints (incremental_checkpoints_enabled), CreateCheckpointService stops shadow-writing the legacy full checkpoint row (p_duo_workflows_checkpoints) and persists only the slim header (p_duo_workflows_checkpoint_headers) and blobs (p_duo_workflows_checkpoint_blobs). This removes the duplicate write once the incremental read path is live, so the database size stops growing and begins to decrease via the 30-day TTL.

The flag is evaluated live (not snapshotted like incremental_checkpoints_enabled): blobs are always written when incremental checkpoints are enabled and the full row is self-contained, so toggling it mid-flight is safe — no delta chain depends on the full row.

Rollout ordering (read path must be live first) is handled operationally through the feature flag, not in code.

Changelog

Not required: the change is behind a default-off feature flag and has no user-facing effect until the flag is enabled.

References

Merge request reports

Loading