QA Session Recordings

ComfyUI Frontend · Automated QA · PR #10834 · main @ 17d2870 · #10834 @ 863c208 · QA @ 04bf4cb · CI Job · 2026-04-01T13:45:21Z → 2026-04-03 06:33 UTC
QA Badge
PR #10834 aims to
fix: prevent re-opening same workflow from silently discarding unsaved edits
## Summary When a user loads a workflow file that is already open in a tab and has unsaved modifications, the second load silently overwrites all changes via `changeTracker.reset()` without any save/discard prompt or new tab creation. **Root cause**: `isSameActiveWorkflowLoad` in `workflowService.ts` matched the active workflow by path/id but did not check `isModified`, so modified workflows wer
Test focus: Verify that loading the same workflow twice after modifying it opens a new tab instead of overwriting the existing one.
Prerequisites: Clear the workspace
Steps: Open the main menu to load the default workflow → Load the default workflow → Wait for the workflow to render → Click the seed widget on the KSampler node to focus it → Modify the seed value to mark the workflow as modified → Open the main menu again → ...
🐧LinuxReport
Before main
After PR
AI Comparative Review
# linux QA Video Report - Generated at: 2026-04-03T06:28:59.668Z - Model: `gemini-3-flash-preview` - Target: https://github.com/Comfy-Org/ComfyUI_frontend/pull/10834 - Before video: `./qa-artifacts/qa-report-Linux-23936435159/qa-before-session.mp4` (3.6 MB) - After video: `./qa-artifacts/qa-report-Linux-23936435159/qa-session.mp4` (3.1 MB) - Mode: **Comparative (before/after)** ## AI Review ## Summary The PR fixes a bug where re-loading a workflow file that is already open and has unsaved changes would silently overwrite those changes without warning. The fix adds a check to ensure that a workflow is only reused if it has not been modified; otherwise, it opens a new tab. - **BEFORE** video confirms the issue: an automated QA annotation explicitly identifies that "Unsaved changes [were] silently overwritten in the same tab". - **AFTER** video demonstrates that the same test sequence no longer triggers this bug condition, as the error label is absent, indicating the regression test passed. ## Behavior Changes | Behavior | Before (main) | After (PR) | Verdict | | :--- | :--- | :--- | :--- | | Re-loading a modified workflow | Silently overwrites the active tab's changes with the file's original content. | Prevents overwrite. The test asserts that either changes are preserved or a new tab is opened. | Fixed | | Modification guard in `workflowService` | Only checked path/ID; allowed overwriting modified tabs. | Now checks `!existingWorkflow.isModified`, preventing accidental data loss. | Fixed | | Tab state preservation | Unsaved edits (e.g., widget values) are lost on reload. | Unsaved edits are preserved in the original tab. | Fixed | ## Timeline Comparison | Time | Type | Severity | Before (main) | After (PR) | | :--- | :--- | :--- | :--- | :--- | | 0:05-0:09 | State | None | Templates modal is opened and closed during test setup. | Templates modal is opened and closed during test setup. | | 0:12-0:13 | Menu | None | Automated script navigates the "File" menu to initiate a reload. | Automated script navigates the "File" menu to initiate a reload. | | 0:16 | Behavior | Fixed | **QA Label appears**: "QA: Bug: Unsaved changes silently overwritten in the same tab". | No bug label appears; the test condition for failure is not met. | ## Confirmed Issues ### [Unsaved changes silently overwritten] `MAJOR` `0:16` `Confidence: HIGH` In the **BEFORE** video, re-loading the same workflow file causes the application to discard unsaved modifications without prompting the user. This is explicitly flagged by the test suite's diagnostic label. This issue is resolved in the **AFTER** video. **Evidence:** Purple/cyan annotation "QA: Bug: Unsaved changes silently overwritten in the same tab" appears at 0:16 in Video 1. **Suggested Fix:** (Already implemented in PR) Guard the `isSameActiveWorkflowLoad` check with an `isModified` check. --- ## Overall Risk The risk is **low**. The change is a targeted logical guard in the workflow loading service that specifically protects against data loss when a user drags-and-drops or re-opens a file they are currently editing. The provided regression test ensures this specific scenario is covered. ## Verdict {"verdict": "REPRODUCED", "risk": "low", "confidence": "high"}