fix(canvas): pass ?cascade=true to Pause/Resume endpoints #2264
@@ -172,7 +172,7 @@ export function ContextMenu() {
|
||||
const nodeId = contextMenu.nodeId;
|
||||
closeContextMenu();
|
||||
try {
|
||||
await api.post(`/workspaces/${nodeId}/pause`, {});
|
||||
await api.post(`/workspaces/${nodeId}/pause?cascade=true`, {});
|
||||
updateNodeData(nodeId, { status: "paused" });
|
||||
} catch (e) {
|
||||
showToast("Pause failed", "error");
|
||||
@@ -184,7 +184,7 @@ export function ContextMenu() {
|
||||
const nodeId = contextMenu.nodeId;
|
||||
closeContextMenu();
|
||||
try {
|
||||
await api.post(`/workspaces/${nodeId}/resume`, {});
|
||||
await api.post(`/workspaces/${nodeId}/resume?cascade=true`, {});
|
||||
updateNodeData(nodeId, { status: "provisioning" });
|
||||
} catch (e) {
|
||||
showToast("Resume failed", "error");
|
||||
|
||||
@@ -385,7 +385,7 @@ describe("ContextMenu — item actions", () => {
|
||||
render(<ContextMenu />);
|
||||
fireEvent.click(screen.getByRole("menuitem", { name: /pause/i }));
|
||||
await act(async () => { /* flush */ });
|
||||
expect(mockPost).toHaveBeenCalledWith("/workspaces/n1/pause", {});
|
||||
expect(mockPost).toHaveBeenCalledWith("/workspaces/n1/pause?cascade=true", {});
|
||||
expect(mockStoreState.updateNodeData).toHaveBeenCalledWith("n1", { status: "paused" });
|
||||
});
|
||||
|
||||
@@ -395,7 +395,7 @@ describe("ContextMenu — item actions", () => {
|
||||
render(<ContextMenu />);
|
||||
fireEvent.click(screen.getByRole("menuitem", { name: /resume/i }));
|
||||
await act(async () => { /* flush */ });
|
||||
expect(mockPost).toHaveBeenCalledWith("/workspaces/n1/resume", {});
|
||||
expect(mockPost).toHaveBeenCalledWith("/workspaces/n1/resume?cascade=true", {});
|
||||
});
|
||||
});
|
||||
|
||||
|
||||
@@ -324,7 +324,7 @@ export const useCanvasStore = create<CanvasState>((set, get) => ({
|
||||
batchPause: async () => {
|
||||
const ids = Array.from(get().selectedNodeIds);
|
||||
const results = await Promise.allSettled(
|
||||
ids.map((id) => api.post(`/workspaces/${id}/pause`))
|
||||
ids.map((id) => api.post(`/workspaces/${id}/pause?cascade=true`))
|
||||
);
|
||||
const failed: string[] = [];
|
||||
results.forEach((r, i) => {
|
||||
|
||||
Reference in New Issue
Block a user