navi-3d: keep OpenSCAD diagnostics, stop flagging valid builtins
model_compile threw OpenSCAD's stderr away, so a valid model and one that
silently produced an empty or broken mesh looked identical to the caller. The
actionable part — ECHO values, the Top level object/Facets block, CGAL
warnings — is now kept (cache and timing noise filtered, capped at 4000 chars)
and returned in both `output` and `metadata.diagnostics`.

scad_analyze flagged real OpenSCAD builtins (assert, children, each,
linear_extrude, minkowski, text, render, …) as undefined identifiers, and its
for-loop regex only matched `for` at a word boundary so `intersection_for`
tripped it. Both fixed; render_stl.md spells out what a PNG does and does not
confirm now that the frame is autocenter/viewall normalized.
1 parent 36dff7a commit 3ace99d7b37dc323bf2c9db134b470eb98ba5a04
@Eugene Sukhodolskiy Eugene Sukhodolskiy authored 15 hours ago
Showing 5 changed files
View
manuals/render_stl.md
View
mcp-servers/navi-3d/app/model_compile.py
View
mcp-servers/navi-3d/app/scad_analyze.py
View
mcp-servers/navi-3d/tests/unit/test_model_compile.py 0 → 100644
View
mcp-servers/navi-3d/tests/unit/test_scad_analyze.py