holder: explicit Render button + progress UI + longer render timeout
- Replace debounced auto-render-on-param-change with an explicit Render button. Param changes mark the button "dirty" (accent ring); user clicks Render to drive a render. A Cancel button (AbortController) appears while a render is in flight. - Add indeterminate progress bar with elapsed-time counter in the status panel. Real OpenSCAD --progress streaming can come later. - Bump OPENSCAD_TIMEOUT default 60s -> 300s and gunicorn --timeout 120s -> 300s. The 60s cap was misclassified by the frontend as "OpenSCAD not installed" because the error string contained the word "openscad" -- which the JS matched too greedily. - Frontend error classifier now distinguishes "binary not found", "timed out", and "geometry empty" cases and only shows the install-OpenSCAD hint for the real not-found case.
This commit is contained in:
@@ -28,7 +28,7 @@ from typing import Any
|
||||
APP_DIR = Path(__file__).resolve().parent
|
||||
SCAD_FILE = APP_DIR / "scad" / "hex_cell.scad"
|
||||
OPENSCAD_BIN = os.environ.get("OPENSCAD_BIN", "openscad")
|
||||
RENDER_TIMEOUT = int(os.environ.get("OPENSCAD_TIMEOUT", "60"))
|
||||
RENDER_TIMEOUT = int(os.environ.get("OPENSCAD_TIMEOUT", "300"))
|
||||
|
||||
|
||||
def openscad_available() -> bool:
|
||||
|
||||
Reference in New Issue
Block a user