v3.0 🚀 - #77
Conversation
…) stat and per-map inspector
Add transaction timeouts (60s) to the three $transaction calls in recomputeAllFsr to handle large datasets (~10k cells). Add prisma.$disconnect() to the bootstrap script so the connection pool drains cleanly on exit.
OpenCV's ~98MB native bundle exceeds the Vercel Python function size limit, so alignment now runs as a local CLI (scripts/map-align) that prints the pixel transform JSON to paste into the admin Replace-render dialog. Removes the serverless function and its vercel.json entry; align.py/tests are unchanged.
Loops reference/final image dirs, aligns each pair (reusing decode_bounded + align_images + rescale_transform), writes transforms.json keyed by map plus an edge-overlay QA image per map, and prints a summary table flagging low-confidence and failed alignments. Adds the edge_overlay helper and tests.
The review stacked a 500px-min canvas and a full-width aspect-ratio compare box with no bound on the dialog, overflowing the screen with no scroll. Cap the dialog at 90vh with overflow-y-auto, cap the canvas at 45vh (overriding the shared MapCanvas min-height), and give the compare box a fixed 40vh height.
The canvas only draws the image and never reads its pixels back, so crossOrigin=anonymous served no purpose but made the load fail whenever the R2 response lacked CORS headers (the image hung on 'Loading…' while the plain compare <img> with no crossOrigin loaded the same URL fine). Also reset the loading state on src change and log load failures instead of hanging silently.
min-w-0 on the grid children lets the dialog shrink instead of being forced wider than its box by the canvas's intrinsic width (the horizontal scrollbar / clipped text). The script hint rendered its raw i18n key because the string held <old-image>/<new-render>, which next-intl's ICU parser reads as malformed tags; switched to square brackets.
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
|
Review the following changes in direct dependencies. Learn more about Socket for GitHub.
|
|
Warning Review the following alerts detected in dependencies. According to your organization's Security Policy, it is recommended to resolve "Warn" alerts. Learn more about Socket for GitHub.
|



![Screenshot of /[team]/compare](https://images.weserv.nl?url=https://sjc.microlink.io/t4LSapKzUMioaWibursAU0Zkjvmd1JitVF1gpTNWzZUPUpUnJwhQDnMCBh-gErLwoGjhhQ3e2t1tXtD_jxtmJA.png&w=600)
![Screenshot of /[team]/map-groups](https://images.weserv.nl?url=https://sjc.microlink.io/vw3lNDFNfg4pHYDOFp-q4kNd1iBdVEroO6KlIs4yUXkGMo_vFoay3nexwp7T9Mte1q4Utot8eMgpRVqvNpsUHg.png&w=600)
![Screenshot of /[team]/ops](https://images.weserv.nl?url=https://sjc.microlink.io/UOg3YnDlW75wDrfbqwfoidD6gU9STmO5qoGs8XUOPEQgqi1xfZERdUQASzUeZ-_DzWBsOWwV5FGCtYBTe1cDtg.png&w=600)
No description provided.