fix: harden presentation replay state

This commit is contained in:
lda
2026-07-11 23:50:31 +07:00 Verified
parent 1dcc5b5f58
commit bd67f260dc
10 changed files with 77 additions and 27 deletions
@@ -405,7 +405,9 @@ describe("useDemoTimeline", () => {
it("replay revision request resumes through the negative branch", async () => {
vi.useFakeTimers();
const { result } = renderHook(() => useDemoTimeline(null, vi.fn()));
const { result } = renderHook(() =>
useDemoTimeline("http://127.0.0.1:8765/rpc", vi.fn()),
);
act(() => result.current.setMode("replay"));
act(() => result.current.start());
for (let i = 0; i < 3; i++) {
+2 -2
View File
@@ -294,7 +294,7 @@ export const useDemoTimeline = (
comment,
outcome: "cancelled",
};
if (target === null) {
if (state.mode === "replay") {
const recording = activeRecording.current;
if (recording) {
const revisionRecording = revisionReplayRecording(recording);
@@ -312,7 +312,7 @@ export const useDemoTimeline = (
return;
}
dispatch({ type: "continue_review" });
}, [projectTransientState, resetRuntime, target]);
}, [projectTransientState, resetRuntime, state.mode]);
const restart = useCallback(() => {
resetRuntime();