v104.0.3lumaweave2026-06-03

Minimap viewport rect — match snapshot projection, fix inverted Y, zoom-scaling, centering

All 3 viewport rect bugs (inverted Y, off-center, zoom-doesn't-resize) traced to one root cause: cam.ratio was in Sigma's normalized space, not attribute space. Rewritten to use sigma.viewportToGraph on viewport corners.

v104.0.32026-06-03
  • ·sigma.viewportToGraph({x:0,y:0}) + ({x:vpW,y:vpH}) gives the exact visible graph rectangle in raw attribute space — no ratio math, no coordinate mismatch
  • ·Projects through the SAME uniform-centered projection as MinimapSnapshotCanvas (scale = min((w-20)/gW, (h-20)/gH), offsetX/Y centered). Rect now aligns with drawn nodes.
  • ·areaSize passed from Minimap.tsx so scale uses the same pixel dimensions the snapshot renders at
  • ·No Y flip needed: graph Y increases downward (confirmed via navigation hook working correctly + viewport corner analysis)