Background
When a project contains syntax or type errors, it may fail to run after the user clicks Run.
The problem is not that the error message is too general. A general run-failure message is acceptable for this case.
The real issue is the current UX:
- the preview may end up in a black-screen state
- the UI does not provide a clear, local indication that the project failed to run
This is confusing because users do not get an immediate and stable explanation of what happened.
What this issue is about
Improve the run-failure UX specifically for projects blocked by syntax/type errors.
Expected behavior:
- Running such a project should not leave the preview in a black-screen state
- The UI should clearly indicate near the run/preview area that the project failed to run
- A general failure message is acceptable here as long as the failure is clearly surfaced in the product UI
Out of scope
This issue does not cover runtime/init bugs on our side, such as engine/API issues like FFI.gdspx_on_engine_fixed_update is not a function.
Those cases can be handled separately.
Context
Related to #1516, but this issue focuses specifically on the incorrect run/preview behavior when syntax/type errors already prevent the project from running.
Background
When a project contains syntax or type errors, it may fail to run after the user clicks Run.
The problem is not that the error message is too general. A general run-failure message is acceptable for this case.
The real issue is the current UX:
This is confusing because users do not get an immediate and stable explanation of what happened.
What this issue is about
Improve the run-failure UX specifically for projects blocked by syntax/type errors.
Expected behavior:
Out of scope
This issue does not cover runtime/init bugs on our side, such as engine/API issues like
FFI.gdspx_on_engine_fixed_update is not a function.Those cases can be handled separately.
Context
Related to #1516, but this issue focuses specifically on the incorrect run/preview behavior when syntax/type errors already prevent the project from running.