* feat: migrate tooling and runtimes to bun
* fix: serialize act installs and adapt backup checks
* fix: finish bun scripts and rootless act setup
* fix: support bun images in runtime benchmarks
* fix: keep a single bun toolchain configuration
* fix: include docs mascot sources in workshop build
* docs: use bun in remaining tool commands
* fix: complete bun sqlite development tooling
* docs: explain sqlite development adapter
* fix: align remaining commands and local ci validation
* fix: use renovate regex fallback with bun
* fix: finalize bun sqlite connections during cleanup
* fix: preserve sqlite foreign key enforcement
* fix: align docker build frontends
* fix: prepare release versions with bun
* Add Bun benchmarks and preserve SQLite connection defaults
* Benchmark Bun installs, conflicts and production workloads
* Force Bun workspace tools and HTTP/1.1 upstream streaming
* Exclude benchmark evidence from Docker contexts
* Expose branch benchmarks through CI
* Verify hydrated widget data in production benchmarks
* Measure image archives and document benchmark protocol
* Audit dependency sharing across every workspace
* Pin pnpm for nested baseline benchmark scripts
* Preserve nested manager pinning on benchmark resume
* Include application and runtime image footprints
* Fail benchmark gates on candidate command errors
* Report complete build overhead and sampled memory bounds
* Validate migration comparisons across pinned revisions
* Record configurable runtime memory budgets
* Retain out-of-memory kills in runtime budget probes
* Reject OOM events consistently across runtime metrics
* Record complete Bun migration benchmarks
* Record memory diagnosis and correct Turbo caching
* Use Bun package management while preserving Node runtimes
* Keep native build fallbacks and exclude development artifacts
* Fix Node ESM metadata and isolate local CI configuration
* Measure development performance and isolate act environment
* Support isolated environment files in rootless act
* Validate the full migration range with act
* Preserve native SQLite binding for bundled migrations
* Use documented dev defaults and report benchmark scope
* Validate dev defaults and isolate restart measurements
* Record package-manager and development benchmarks
* Keep benchmark measurements and link full command artifacts
* Clean up temporary act environment files
* Validate Node runtimes in package-manager comparisons
* Validate every workspace in manual CI runs
* Retain patched nested brace expansion versions
* Complete package-manager and Node performance report
* Normalize archived benchmark logs
* Record final hosted validation
* Cache both Next builds with platform isolation
* Prime cache with write-only mode
* Split Next artifacts below Cloudflare upload limit
* Assemble coherent standalone cache outputs
* Preserve traced middleware entrypoints
* Assemble traced directory links before files
* Separate cached dependencies from assembled output
* Record signed Turbo cache benchmarks
* Remove archived benchmark captures
Full benchmark evidence is preserved at 8f7d3bcd14109bfb13fa664d31710b88d820ad66.
* Remove migration benchmark harness
* fix: correct migration launch and local Act prerequisites
* Consolidate Turbo caches and production artifacts
* Exclude generated files from Docker cache inputs
* fix: address Bun migration review findings
* fix: check restored compiler bundle manifests
Fix Unraid logical CPU averaging, preserve native context menus for app and bookmark widgets in view mode, and prevent scrollbar-width GridStack resize oscillation.
Remove incompatible persisted widget query data before resetting a crashed widget so it can fetch fresh data instead of re-rendering the same stale payload.
* fix(immich): use thumbnail endpoint instead of original for album carousel
Switches from /api/assets/:id/original to /api/assets/:id/thumbnail to fix
HEIC image incompatibility (thumbnails are always JPEG), reduce bandwidth,
and improve loading speed.
Closes#6388
* working on immich
* Improve image proxy error handling
* fix(image-proxy): use trusted fetch response type
* docs(immich): require Asset View permission
* fix: context menu refresh stays open with loading spinner, cache age reacts to refetch
* style: auto-fix lint and format
* refactor: pass isFetching as prop to WidgetCacheAge to avoid duplicate useIsFetching
---------
Co-authored-by: ajnart <ajnart@users.noreply.github.com>
* docs(helm): Update Helm chart documentation
* feat(widgets): add right-click context menu with auto-generated toggle actions
- Add WidgetContextMenu component using Mantine 9.3 Menu.ContextMenu
- Extend WidgetDefinition with contextActions API for widget-specific actions
- Auto-generate context menu toggle items for switch-type widget options
- Add 'Search' context action to media-requests widgets (list + stats)
- Keep existing dots-button menu for discoverability in edit mode
- Add widgetStateRef to WidgetComponentProps for client-side-only state
- Add skipContextMenu opt-out on switch option definitions
* style: auto-fix lint and format
* fix(widgets): address CodeRabbit review — badge in context menu target, edit-only pending gate
- Move title badge inside WidgetContextMenu wrapper so right-clicking the title overlay also triggers the context menu
- Remove full-menu hide during integration loading; only disable 'Edit' action while isPending
- Add isPending to allActions useMemo dependency array
* style: auto-fix lint and format
* fix(widgets): gate context menu behind authenticated session
- Only show right-click context menu for logged-in users
- Unauthenticated users see plain children without menu wrapper
- Matches existing BoardItemMenu session gating pattern
* style: auto-fix lint and format
* chore: revert unrelated sitemap change from auto-fix
* style: auto-fix lint and format
* fix(context-menu): persist widget option changes to server
Toggle switches and edit modal changes from the context menu now call
saveBoard mutation to persist to DB. Previously only the client cache
was updated, losing changes on reload. Removes unnecessary invalidation
that caused cascading refetch loops.
* style: auto-fix lint and format
* fix: use explicit React type imports instead of global namespace
---------
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
Adds a Docker button to the user avatar dropdown menu (admin-only)
that opens a 1400px modal containing the same Docker container table
as /manage/tools/docker.
Closes#2165