GitHub
03/01/2026, 2:49 AMmeltano elt or meltano el is run without --state-id, an ephemeral timestamp-based state ID is generated silently. This means incremental replication state is not persisted between runs, which can be surprising — especially for users who expect state to "just work" across pipeline executions.
This PR adds a warning log message when no --state-id is provided, informing the user that:
• An ephemeral state ID is being used
• Incremental replication state will not be reused
• They should pass --state-id=<your_id> to persist state
The warning is emitted in _run_el_command() before the Job is created, covering both the el and elt commands.
Checklist
• I have read the contribution guide
Was generative AI tooling used to co-author this PR?
• Yes (please specify the tool below)
Related Issues
• Closes #2683
Summary by Sourcery
Warn when el/elt commands fall back to ephemeral state IDs to avoid unintended non-persistent incremental state.
New Features:
• Log a warning when el/elt commands run without an explicit --state-id, indicating that an ephemeral state ID is being used and incremental state will not be persisted.
Tests:
• Add CLI tests for el and elt commands to assert that the ephemeral state ID warning is emitted when no --state-id is provided.
meltano/meltanoGitHub
03/10/2026, 3:55 AM