Skip to content

Native app: a document painted from the mesh cache has no solids (ray-traced preview, quoting, face picking unavailable) #900

Description

@ecto

The native app opens documents through the background job (vcad_eval_begin), which consults the on-disk root-mesh cache so a previously solved document paints instantly. A cache hit is a mesh with no B-rep behind it, so on a cached open every feature that needs the solid silently has nothing to work with: vcad_scene_raytrace / _gpu (no frame), manufacturing quotes (0), face ids / face picking.

#890 briefly put the cache on the synchronous vcad_scene_open* and interactive paths too, which broke two vcad-ffi tests on a warm cache; #899 takes it back off those. The job path keeps it — that is the instant open — so the gap above is real in the app today.

Proposal: treat the cached mesh as a placeholder. After painting it, keep solving the document uncached in the background and swap the solids in when they land (the progressive on_root plumbing already exists), or solve lazily the first time a solid-only feature is asked for, with the UI showing that state rather than doing nothing. Related: friction item 30 in #898 (a degraded solid looks exactly like a good one).

🤖 Filed by Claude Code

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    appWeb app / TypeScriptbugSomething isn't working

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions