Checkpointing APIs - #159
Conversation
|
Internal regression failed: Build ID #857 |
|
Internal regression failed: Build ID #858 |
58b840e to
c9c4248
Compare
|
Internal regression failed: Build ID #859 |
|
Internal regression failed: Build ID #860 |
|
Internal regression failed: Build ID #861 |
|
Internal regression failed: Build ID #862 |
|
Internal regression failed: Build ID #863 |
|
Internal regression succeeded 🍏: Build ID #864 |
|
Internal regression failed: Build ID #865 |
|
Internal regression failed: Build ID #867 |
|
Internal regression failed: Build ID #868 |
|
Internal regression succeeded 🍏: Build ID #871 |
|
Internal regression succeeded 🍏: Build ID #872 |
|
Internal regression succeeded 🍏: Build ID #873 |
|
Internal regression failed: Build ID #875 |
|
Internal regression succeeded 🍏: Build ID #877 |
|
Internal regression failed: Build ID #884 |
|
Internal regression failed: Build ID #886 |
ce95f95 to
c2f878e
Compare
|
Internal regression failed: Build ID #889 |
|
Internal regression failed: Build ID #890 |
c2f878e to
8d2d5cc
Compare
|
Internal regression failed: Build ID #923 |
ee8de97 to
870abd5
Compare
de213d7 to
ae5e838
Compare
| previous_checkpoint = checkpoints[-2] | ||
| rewound_conversation = agent.start_conversation( | ||
| conversation_id=conversation_id, | ||
| checkpoint_id=previous_checkpoint.checkpoint_id, |
There was a problem hiding this comment.
Would it be better for start_conversation to take a checkpoint object rather than a checkpoint_id ?
934f6d6 to
e355c9c
Compare
|
Internal regression failed: Build ID #972 |
e355c9c to
5f7f208
Compare
…rm to use agent ids instead of names for routing/keying subagents, etc
- Move live conversation checkpoint creation into Checkpointer.save().
- Support saving either live conversations or materialized checkpoints,
including custom checkpoint IDs, component IDs, and metadata.
- Move checkpoint restoration and compatibility validation into
ConversationalComponent.
- Add explicit checkpoint support detection across conversational components,
while marking OCI agents as unsupported.
- Preserve root component references during serialization and deserialization
for nested graph restoration.
- Rename nested flow conversation startup to clarify state preservation.
- Update checkpoint listeners and OpenAI Responses persistence to use the
unified Checkpointer API.
- Remove the legacy checkpoint_state module.
- Add unit coverage for saving live conversations with custom metadata.
5f7f208 to
e829e44
Compare
|
Internal regression failed: Build ID #973 |
|
Internal regression failed: Build ID #974 |
11f33b1 to
9b6f872
Compare
|
Internal regression succeeded 🍏: Build ID #975 |
|
Internal regression succeeded 🍏: Build ID #981 |
|
Internal regression failed: Build ID #982 |
Summary
This PR adds conversation checkpointing to WayFlowCore.
Checkpointing is integrated into normal conversation execution: conversations can be started with a
Checkpointer, execution can save checkpoints at configured boundaries, and later runs can restore and resume from a saved checkpoint.What Changed
Added the
wayflowcore.checkpointingmodule with:ConversationCheckpointCheckpointingIntervalCheckpointerInMemoryCheckpointerPostgresCheckpointerOracleDatabaseCheckpointerAdded checkpoint-aware
start_conversation(...)support for conversations, flows, agents, swarms, manager workers, A2A agents, and OpenAI Responses service flows.Added a checkpoint execution listener that saves checkpoints after:
Example