ecto/vcad
BRep CAD kernel in Rust/WASM
First Claude commit: Mar 27, 2026Last Claude commit: 6d agoDiscovered: Apr 24, 2026
Recent Claude Commits
viewport: auto-fit camera to populated sketches on open
69a50dd6d agoauthor_emailfix: make legal pages scrollable
35103586d agoauthor_emailfeat(chat): add document name get/set tools for AI chat
09290bf6d agoauthor_emailfeat(app): gate web updater banner on tagged desktop releases
73abc897d agoauthor_emailfix(legal): copyright year is 2026 only
0e9c1bb7d agoauthor_emailfix(legal): legal entity is Municipal Robotics Corporation
c769a707d agoauthor_emailfix(legal): use info@muni.works as contact email
c9d01637d agoauthor_emailfeat: launch prep — Apache 2.0 license, legal pages, ToS gate
910c0317d agoauthor_emailMerge remote-tracking branch 'origin/main' into claude/fix-feature-deserialization-7mydp
c6c818c7d agoauthor_emailrefactor: make CRDT bytes the canonical .vcad persistence format
a8d2b7e7d agoauthor_emailci: add @claude mention workflow for issue/PR comments
4ae57d57d agoauthor_emailchat: enrich 'New chat thread' Discord notification
cf46d5d7d agoauthor_emailcamera: make Follow aim at AI frustum, Lock sync realtime
9500b5e7d agoauthor_emailfix: preserve feature names on reload by reading name from leaf node
7e59dbe7d agoauthor_emailchat: stop showing 'Free chat limit reached' to signed-in users
a2b4b807d agoauthor_emailauth: notify on login and login attempts
2b5f43b7d agoauthor_emailviewport: fit selection to frustum instead of fixed zoom
a6d76327d agoauthor_emailchat: higher-level AI tools for common geometry patterns
44d70897d agoauthor_emailfix(viewport): prevent green-tinted AI screenshots
6e0f8ab7d agoauthor_emailfeat(notifications): discord activity webhooks for signups, docs, chats, billing
0d2f08b7d agoauthor_emailfix(supabase): rename colliding 015_named_versions to 020
223583f7d agoauthor_emailci(supabase): use `supabase start` to apply migrations
3c5c65a7d agoauthor_emailci: add Supabase migrations workflow
9cc83287d agoauthor_emailfeat(app): remember chat sidebar open/closed state across reloads
b4248587d agoauthor_emailfix: avoid DOM Crypto type conflict in crypto-polyfill
5771d957d agoauthor_emailfix: unblock CI — clippy io_other_error + manual_slice_size + TS narrowing
954294b8d agoauthor_emailci: swallow audit exit codes so advisory checks don't show red
90d92fe8d agoauthor_emailstyle: inline contains_doctype DOCTYPE check to satisfy rustfmt
95ea6df8d agoauthor_emailsecurity: add cargo audit + npm audit jobs to CI
e7146058d agoauthor_emailsecurity: set default permissions: contents: read on ci.yml
d63ef6c8d agoauthor_emailsecurity: validate VCAD_APP_URL against an allowlist in open_in_browser
62b07e48d agoauthor_emailsecurity: route external links through protocol-checked openExternal()
778ddd88d agoauthor_emailsecurity: default-deny npm lifecycle scripts via .npmrc
38ede548d agoauthor_emailsecurity: fail WASM GPU context compile if wasm32 threads are enabled
1ec1e138d agoauthor_emailsecurity: reject invalid fds from libc::pipe in log_capture
867158b8d agoauthor_emailsecurity: only expose signing secrets on release tag refs
5be42d88d agoauthor_emailsecurity: add optional expiry to document_shares
9cd80898d agoauthor_emailsecurity: tighten desktop CSP — scope connect-src, add anti-clickjack dirs
8783a718d agoauthor_emailsecurity: pin MCP viewer postMessage target to the first known host origin
d294eb58d agoauthor_emailsecurity: require .vcad extension and 64 MiB cap for onboarding file input
bf60a278d agoauthor_emailsecurity: convert atob failures in URL-document decoder to a typed Error
196edbb8d agoauthor_emailsecurity: cap JSON input size at the WASM plan_chat_tool boundary
fd2ee528d agoauthor_emailsecurity: validate .vcad JSON structure and caps
7f26cc18d agoauthor_emailsecurity: validate Tauri IPC input for local_ai + bambu commands
5736fc28d agoauthor_emailsecurity: route issue body through env+file instead of YAML interpolation
b9fdfa58d agoauthor_emailsecurity: flip fix-ci from opt-out to opt-in
6baab038d agoauthor_emailsecurity: add dependabot config for actions, npm, cargo
edf99af8d agoauthor_emailsecurity: scope SECURITY DEFINER chat RPCs to the caller
39b7b778d agoauthor_emailsecurity: encrypt CLI auth tokens at rest + rate limit POSTs
e17a7bf8d agoauthor_emailsecurity: install wasm-pack via cargo instead of curl | sh
f42b8cb8d agoauthor_email