Skip to content

feat(sandbox): record state transition history and fix stale phases on restart#1167

Open
zhangjaycee wants to merge 2 commits into
alibaba:masterfrom
zhangjaycee:feature/restart_history
Open

feat(sandbox): record state transition history and fix stale phases on restart#1167
zhangjaycee wants to merge 2 commits into
alibaba:masterfrom
zhangjaycee:feature/restart_history

Conversation

@zhangjaycee

Copy link
Copy Markdown
Collaborator

close #1165
close #1166

Add time-series state transition records to sandbox status for audit
and debugging. Each transition captures from_state, to_state, event,
and timestamp via a before_transition callback in SandboxStateMachine.

- Add state_history field to SandboxInfo (persisted in Redis + DB)
- Add before_transition callback to record transitions (skip self-loops)
- Add GET /sandboxes/{sandbox_id}/state_history API endpoint
- Add StateTransitionRecord and StateHistoryResponse models
…er state

Restart reuses existing container without image pull, but the phases
data from the previous run lingered in meta_store causing image_pull
to show an incorrect status. Mark image_pull as SUCCESS immediately
in DockerDeployment.restart() and strip stale phases from the
meta_store entry in on_restart().
@zhangjaycee zhangjaycee force-pushed the feature/restart_history branch from e16ad1e to 3df690f Compare June 25, 2026 11:53
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

1 participant