* rechunk script
* consolidate isoview arrays - expose public api
* add background imgs and orig xml's
* consolidate corrected/fused
* Add GPU selector and persisted Options popup
- mbo view --list-gpus / --gpu N CLI flags (cli.py)
- ~/.mbo/settings/preferences.json "options" block with gpu_index and
debug_logging keys, plus get/set helpers (preferences.py)
- "Options" button + popup in the launch dialog with GPU adapter dropdown
and Debug logging checkbox, both persisted on change (file_dialog.py)
- Persisted choices applied at every launch in _run_gui_impl, including
direct-path launches that skip the dialog (run_gui.py)
* Wrap dialog tooltips and overflow text to fit dialog width
- Add wrapped_tooltip() helper using begin_tooltip + push_text_wrap_pos
so long tooltips wrap to ~24em instead of running off the right edge.
- Add text_wrapped_colored() for inline status / hint lines.
- Replace every imgui.set_tooltip() in FileDialog with wrapped_tooltip().
- Wrap the cupy `uv pip install ...` hint onto its own line with a
proper Copy button (was running off the dialog on `same_line`).
- Wrap dependency / Rastermap status lines so they don't overflow when
GPU/CPU labels stack up.
* move isoview code into arrays/isoview/ package
* update arrays
* add popup autosize helper and adopt across popups
* extract shared options popup for file dialog and preview widget
* add --gpu cli flag to set and persist gpu adapter
* add isoview pipeline widget and worker tasks
* add parallel plane processing to suite2p pipeline
* fix zstats numpy truthiness and tidy summary image helpers
* add gpu / sys info to process console
* remove zstats channel selector, always sync to c slider
* drop h5 dataset_name kwarg tests
* recurse into directory containers when sizing dataset files
* use tolist on numpy plane groups so json.dump accepts them
* cache gpu adapters at startup to avoid wgpu init flicker
* clamp default figure size to screen work area
* rework isoview fused output: .fused/<method> path and zarr layout reorg
* add bigstitcher v2 mirror and generate_bigstitcher_xml task
* add isoview crop widget
* rework isoview run tab: dataset summary, output options, slicing, crop, bigstitcher mode
* bump lbm-suite2p-python pin to 3.0.6
* replace parallel processing toggle with workers and threads_per_worker controls
* add parallel processing controls and split lbm-suite2p-python into its own settings column
* forward parallel kwargs from gui to lsp pipeline and add bigstitcher register task
* add isoview segment widget
* set isoview-aware vmin and vmax presets in image widget
* update isoview crop widget
* update isoview pipeline widget
* isoview dead pixel correction
* bump 3.0.5
* arrays/isoview: accept .corrected* suffix variants and probe per-view shapes
* gui/tasks: fall back to '.' when output_dir is none
* gui/isoview_crop: replace drags with sliders, add apply-to-all, re-seed state on open
* gui/isoview seg+deadpixel: show per-camera previews on raw datasets
* gui/isoview pipelines: resolve correct-mode output path, move crop into parameters popup
* update front flag, sync default params
* bump v3.0.6