Skip to content

BRep-aware diff & merge ("git for CAD") #68

@ecto

Description

@ecto

Background

vcad-crdt merges the feature DAG at parameter granularity (LWW HLCs) — no geometric awareness. Two branches that are parametrically different but geometrically equal look like conflicts; concurrent adds that geometrically overlap aren't detected. Uniquely aligned with vcad's AI-native identity and already ~70% built.

Deliverables

  • New crates/vcad-kernel-diff/:
    • diff_brep(a, b) -> BRepDiff — added/removed/modified faces with volume + surface-area deltas
    • Topology-aware matching (persistent IDs from the associative-drawings issue, Hausdorff fallback)
  • App: side-by-side compare view with coloured overlay (red=removed, green=added, yellow=changed)
  • Use diff as merge-conflict detector in vcad-crdt
  • Hook into Supabase document_versions — "Compare with v12" button

Use cases

PR reviews on .vcad, Supabase version-history visual compare, AI edit validation.

Reference. NX "compare bodies", Onshape "compare workspaces".

Metadata

Metadata

Assignees

No one assigned

    Labels

    ai-nativeAI / MCP / agent capabilitiesbacklogRecommended for near-term workcollaborationMulti-user / diff / merge

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions