mirror of
https://github.com/webstudio-is/webstudio.git
synced 2026-10-23 03:27:27 +09:00
534401c66b30b2bc6a1ec3d0cf0bc2397a8a0552
## Summary - Show the existing validation success toast if validation finishes after the Publish view closes or switches to Export. Keep it quiet while the result is visible in Publish. - Keep publish progress running when the popover closes. Reopening shows a pending state without restarting the countdown and updates when publishing finishes. - Show a completion toast only after the Publish popover closes. Keep errors and diagnostic findings visible across panel remounts. - Continue polling a recovered pending build after the popover closes. Ignore old status responses and superseded manual validation results. - Keep a manual validation report and its “See issues” button available after closing and reopening the Publish popover. ## Checklist - [x] Consolidate publish progress and validation state. The PR's net non-test change is down from +560 to +457 lines. - [x] Cover the close/reopen validation result and suppress duplicate publish-error toasts while Publish is open. - [x] Run focused tests, Builder typecheck, lint, formatting, and required CI after the simplification. - [x] Show the existing validation success toast when validation finishes outside the Publish view; suppress it while the inline result is visible. - [x] Prove the open and closed outcomes with a failing-then-passing regression test. - [x] Clear a persisted status error when a successful refresh finds no build, while preserving request errors. - [x] Prove the no-build case with a failing-then-passing regression test and recheck docs, fixtures, and 55 focused tests, typecheck, lint, formatting, and diff checks. - [x] Show validation completion when the user switches to Export before the result arrives, with a failing-then-passing regression test. - [x] Resolve reviews and pass CI on commit1b532637a7. - [x] Cover countdown, completion, errors, remounts, recovery, navigation, and stale responses with regression tests. - [x] Keep manual validation findings and the report button visible after closing and reopening the Publish popover. - [x] Verify the new regression test fails before the fix and passes after it. - [x] Pass 37 targeted tests, Builder typecheck, lint, formatting, and diff checks. - [x] Review documentation impact and fixture inputs. The publishing guide already covers validation reports; no fixture inputs or generated outputs are affected. - [x] Resolve all existing review threads. - [x] Pass all CI workflows on commit428dee3d35. - [x] Preserve validated domain selection across popover remounts. - [x] Ignore delayed diagnostics from superseded publish attempts. - [x] Guard publish polling across A → B → A navigation. - [x] Show a recovered failed build after a lost publish response. - [x] Recheck reviews and CI on commit51573cd848. - [x] Suppress publish success toasts whenever the Publish popover is open, including stale project completions and the Export view. - [x] Verify both changed regression tests fail before the fix and pass after it. - [x] Recheck documentation impact and pass 38 targeted tests, Builder typecheck, lint, formatting, and diff checks. - [x] Suppress the validation success toast while the Publish popover shows its validated state. - [x] Recheck documentation impact and pass 38 focused tests, typecheck, lint, formatting, and diff checks. - [x] Restore validated domain selections through the visible checkbox state and verify submitted domains match. - [x] Recheck documentation impact and pass 51 focused tests, Builder typecheck, lint, formatting, and diff checks. - [x] Keep the visible checkbox selection in sync when validation finishes after the popover reopens, without resetting a later user change. - [x] Resolve the late-validation review thread and pass CI on commit3de717d993. ## Verification - Commit3d54f6c775passed all four CI workflows, including all 19 main-workflow jobs and six Builder E2E shards. All review threads are resolved. - The close/reopen validation test failed before the fix and passes after it. The adjusted stale-poll test failed when its ownership guard was disabled and passed when restored. All 98 Publish feature tests, Builder typecheck, oxlint, oxfmt, and diff checks pass locally. The source changes do not affect documentation or fixture inputs. - Commit1b532637a7passed Lint PR, Check submodules, Visual regression, and Main workflow. All six Builder E2E shards passed. The fixture size job passed on rerun after its first attempt failed because a React Router fixture build could not find `build/client/.vite`. All review threads are resolved. - The Export regression failed before the fix and passes after it. All 38 focused tests, Builder typecheck, lint, formatting, and diff checks pass locally. No documentation or fixture inputs are affected. - The no-build regression test failed before the fix and passes after it. It verifies that a request error remains visible. All 55 focused tests and static checks pass locally; no documentation or fixture inputs are affected. - The validation toast regression test failed before the fix and passes after it. All 54 focused tests, Builder typecheck, oxlint, oxfmt, and diff checks pass locally. No documentation or fixture inputs are affected. - Commit3de717d993passed Lint PR, Check submodules, Visual regression, and Main workflow. All six Builder E2E shards passed; shard 3 passed on rerun after an unrelated Pages drag test failed its first attempt. Review threads are resolved. - The late-validation regression test failed before the controlled checkbox update and passes after it. It checks visible state, submitted domains, and selection after the report clears. All 51 focused tests, Builder typecheck, lint, formatting, and diff checks passed. - The reopened domain checkboxes and submitted form values now match. The UI regression test failed before the fix and passes after it; it also checks that toggling a restored checkbox changes the submitted domains. - The Validate action already shows “Validated” after success; the redundant toast is removed. The existing action test covers that state. - 38 targeted tests passed locally. Builder typecheck, oxlint, oxfmt, and `git diff --check` passed. - Commit428dee3d35passed all CI workflows, including visual regression and six Builder end-to-end shards. Latest commit51573cd848passed lint, submodule, visual regression, and the main workflow. All six Builder end-to-end shards passed; shard 5 passed on rerun after an unrelated Form feedback test failed, and shard 2 passed on rerun after GitHub cancelled its first attempt.
Learning Resources
Social Media
License
- Webstudio core (all functionality in this repository) is free/open-source under AGPL-3.0-or-later.
- sdk-components-animation package (optional) is proprietary. You must accept the Webstudio, Inc. EULA located in sdk-components-animation/LICENSE before using it.
Languages
TypeScript
98.9%
PLpgSQL
0.5%
CSS
0.3%
Shell
0.2%
JavaScript
0.1%