Conversation
|
bugbot run |
d25f9c9 to
a92f40e
Compare
|
bugbot run |
|
bugbot run |
Coverage Report •
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
bugbot run |
f6dd827 to
1d17d51
Compare
|
bugbot run |
|
bugbot run |
|
bugbot run |
- extend bugbot rules
There was a problem hiding this comment.
Cursor Bugbot has reviewed your changes and found 1 potential issue.
❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.
Reviewed by Cursor Bugbot for commit cb912eb. Configure here.
|
|
||
| def to_checkpoint_state(self) -> LLMCheckpointState: | ||
| """Extract LLM-specific state for checkpointing.""" | ||
| return LLMCheckpointState(is_fallback_run=self._is_fallback_run) |
There was a problem hiding this comment.
BaseLLM.to_checkpoint_state() missing super() call
High Severity
BaseLLM.to_checkpoint_state() creates a LLMCheckpointState directly without calling super().to_checkpoint_state() and merging the result. Every other subclass in this PR (Agent, Orchestrator, SubAgentTool, etc.) correctly calls super().to_checkpoint_state().model_dump(exclude_none=True) and spreads the base fields. Without this, the approval_response and iteration fields from the base Node.to_checkpoint_state() are silently lost whenever an LLM node's checkpoint state is captured.
Triggered by project rule: Bugbot Rules for Dynamiq
Reviewed by Cursor Bugbot for commit cb912eb. Configure here.
There was a problem hiding this comment.
approval_response and iteration not applicable for LLM nodes


Note
High Risk
High risk because it introduces a new persistence/resume layer and modifies core
Flow.run_*andNode/agent/orchestrator execution loops; bugs could cause skipped work, duplicated work, or corrupted state across runs.Overview
Adds a first-class checkpointing system that can persist and resume
Flowexecution, including node outputs/errors, pending human-approval prompts, and mid-loop progress for iterative nodes.Introduces
dynamiq/checkpointswithFlowCheckpointschema,CheckpointConfig/CheckpointContext, backend interface +InMemoryand atomicFileSystemimplementations (with retention/TTL cleanup and APPEND/REPLACE snapshot behavior).Integrates checkpointing into runtime:
Flownow saves checkpoints after node completion / on failure and can resume from a checkpoint ID/object (skipping completed nodes and restoring node internal state),RunnableConfiggains per-run checkpoint overrides, YAML loading can instantiate checkpoint backends fromtype, and core nodes/agents/orchestrators/LLMs/tools implementto_checkpoint_state()/from_checkpoint_state()plusIterativeCheckpointMixinto support loop-level resume and mid-loop checkpoint requests.Reviewed by Cursor Bugbot for commit cb912eb. Bugbot is set up for automated code reviews on this repo. Configure here.