ecto/vcad
BRep CAD kernel in Rust/WASM
First Claude commit: Mar 27, 2026Last Claude commit: 3mo agoDiscovered: Apr 24, 2026
Recent Claude Commits
viewport: auto-fit camera to populated sketches on open
69a50dd3mo agoauthor_emailfix: make legal pages scrollable
35103583mo agoauthor_emailfeat(chat): add document name get/set tools for AI chat
09290bf3mo agoauthor_emailfeat(app): gate web updater banner on tagged desktop releases
73abc893mo agoauthor_emailfix(legal): copyright year is 2026 only
0e9c1bb3mo agoauthor_emailfix(legal): legal entity is Municipal Robotics Corporation
c769a703mo agoauthor_emailfix(legal): use info@muni.works as contact email
c9d01633mo agoauthor_emailfeat: launch prep — Apache 2.0 license, legal pages, ToS gate
910c0313mo agoauthor_emailMerge remote-tracking branch 'origin/main' into claude/fix-feature-deserialization-7mydp
c6c818c3mo agoauthor_emailrefactor: make CRDT bytes the canonical .vcad persistence format
a8d2b7e3mo agoauthor_emailci: add @claude mention workflow for issue/PR comments
4ae57d53mo agoauthor_emailchat: enrich 'New chat thread' Discord notification
cf46d5d3mo agoauthor_emailcamera: make Follow aim at AI frustum, Lock sync realtime
9500b5e3mo agoauthor_emailfix: preserve feature names on reload by reading name from leaf node
7e59dbe3mo agoauthor_emailchat: stop showing 'Free chat limit reached' to signed-in users
a2b4b803mo agoauthor_emailauth: notify on login and login attempts
2b5f43b3mo agoauthor_emailviewport: fit selection to frustum instead of fixed zoom
a6d76323mo agoauthor_emailchat: higher-level AI tools for common geometry patterns
44d70893mo agoauthor_emailfix(viewport): prevent green-tinted AI screenshots
6e0f8ab3mo agoauthor_emailfeat(notifications): discord activity webhooks for signups, docs, chats, billing
0d2f08b3mo agoauthor_emailfix(supabase): rename colliding 015_named_versions to 020
223583f3mo agoauthor_emailci(supabase): use `supabase start` to apply migrations
3c5c65a3mo agoauthor_emailci: add Supabase migrations workflow
9cc83283mo agoauthor_emailfeat(app): remember chat sidebar open/closed state across reloads
b4248583mo agoauthor_emailfix: avoid DOM Crypto type conflict in crypto-polyfill
5771d953mo agoauthor_emailfix: unblock CI — clippy io_other_error + manual_slice_size + TS narrowing
954294b3mo agoauthor_emailci: swallow audit exit codes so advisory checks don't show red
90d92fe3mo agoauthor_emailstyle: inline contains_doctype DOCTYPE check to satisfy rustfmt
95ea6df3mo agoauthor_emailsecurity: add cargo audit + npm audit jobs to CI
e7146053mo agoauthor_emailsecurity: set default permissions: contents: read on ci.yml
d63ef6c3mo agoauthor_emailsecurity: validate VCAD_APP_URL against an allowlist in open_in_browser
62b07e43mo agoauthor_emailsecurity: route external links through protocol-checked openExternal()
778ddd83mo agoauthor_emailsecurity: default-deny npm lifecycle scripts via .npmrc
38ede543mo agoauthor_emailsecurity: fail WASM GPU context compile if wasm32 threads are enabled
1ec1e133mo agoauthor_emailsecurity: reject invalid fds from libc::pipe in log_capture
867158b3mo agoauthor_emailsecurity: only expose signing secrets on release tag refs
5be42d83mo agoauthor_emailsecurity: add optional expiry to document_shares
9cd80893mo agoauthor_emailsecurity: tighten desktop CSP — scope connect-src, add anti-clickjack dirs
8783a713mo agoauthor_emailsecurity: pin MCP viewer postMessage target to the first known host origin
d294eb53mo agoauthor_emailsecurity: require .vcad extension and 64 MiB cap for onboarding file input
bf60a273mo agoauthor_emailsecurity: convert atob failures in URL-document decoder to a typed Error
196edbb3mo agoauthor_emailsecurity: cap JSON input size at the WASM plan_chat_tool boundary
fd2ee523mo agoauthor_emailsecurity: validate .vcad JSON structure and caps
7f26cc13mo agoauthor_emailsecurity: validate Tauri IPC input for local_ai + bambu commands
5736fc23mo agoauthor_emailsecurity: route issue body through env+file instead of YAML interpolation
b9fdfa53mo agoauthor_emailsecurity: flip fix-ci from opt-out to opt-in
6baab033mo agoauthor_emailsecurity: add dependabot config for actions, npm, cargo
edf99af3mo agoauthor_emailsecurity: scope SECURITY DEFINER chat RPCs to the caller
39b7b773mo agoauthor_emailsecurity: encrypt CLI auth tokens at rest + rate limit POSTs
e17a7bf3mo agoauthor_emailsecurity: install wasm-pack via cargo instead of curl | sh
f42b8cb3mo agoauthor_email