select any#674
Conversation
There was a problem hiding this comment.
Code Review
This pull request introduces multi-dimensional slicing and custom axis mapping to the Zarr store and visualization components, allowing users to map arbitrary dimensions to the X, Y, and Z axes. It adds a comprehensive set of DimSlicer UI components, updates data fetching and chunk copying logic to support arbitrary slicing, and updates shaders to GLSL 3.0 syntax. The review feedback highlights a critical issue where zDimIndex defaults to -1 when unmapped, breaking 3D rendering, as well as several bugs in MetaDimSelector.tsx where parsing inclusive slice stop indices (especially when the index is 0) fails to handle the exclusive nature of Zarr slices correctly.
Important
The consumer version of Gemini Code Assist on GitHub is being sunset. Starting June 18, 2026, new organization installations will be blocked, and all code review activity will officially cease on July 17, 2026.
For more details on the timeline and next steps, please review the Help Documentation.
|
/gemini summary |
|
Warning Gemini encountered an error creating the summary. You can try again by commenting |
|
WebGPU still broken. I had assumed it was the slicing because I didn't realize you changed the webGPU stuff. So whatever changed there is the issue. Replacing the webGPU code in this branch with the old code works just fine on both Chrome and Firefox so please explain to me why it was changed? What was the problem that was being solved? |
|
indeed. Initially I was monkeying around that bit for the Firefox issue. Is back now. |









I'm satisfied with the current status. And it does the job. I tried to tackle all corner cases, and see that everything works, but for sure there must be some hidden bug or use case I didn't catch. I used Gemini to find solutions and possible bugs in this transition.
Pull Request Summary (by Gemini, but is accurate)
This pull request introduces a significant round of updates focusing on a major new workflow for multidimensional variable selection, layout responsiveness, rendering performance with WebGPU/WebGL, data handling for Zarr stores, and general UI/UX improvements across the core components.
Major Highlight: Multidimensional Variable Selection
DimSlidercomponents workflow. This new system allows users to intuitively slice, filter, and select variables at will from complex, multidimensional datasets. It fundamentally improves how users navigate and visualize multi-variable Zarr data.Key Features & Performance
TimeComboboxandMetaDimSelectorwith windowing and scrolling improvements. This dramatically increases performance when handling datasets with a massive number of input dates.GetArray,dataFetchers, andutilsto handle packed chunks, flat datasets (isFlat), and 2D variables.NaNandInfinityvalues were propagating incorrectly during 1-variable and 2-variable statistics computation.UI & Layout Refinements
Attributes,Variables, andColorbardetails to useDialogcomponents (especially on mobile) while retainingPopoveron desktop when appropriate.Plotbutton to the right for a better layout flow.Rendering & Plotting (WebGL/WebGPU)
glsl3and specialized vertex shaders for specific rendering use cases (vertex.glsl,LandingVertex.glsl, etc).AxisLines,FlatMap, andSpheremapping to correctly pass the right indices and coordinate rules.Changed Files Breakdown
MetaDimSelector.tsx,TimeCombobox.tsx,Variables.tsx,MetaData.tsx,Colorbar.tsx,PlayButton.tsxPlot.tsx,FlatMap.tsx,AxisLines.tsx,WGSLShaders.ts,webGPU.ts, multiple*.glslfiles.GetArray.ts,dataFetchers.ts,utils.ts,GlobalStore.ts