> ## Documentation Index
> Fetch the complete documentation index at: https://docs.bricks.tools/llms.txt
> Use this file to discover all available pages before exploring further.

# Changelog

> Product updates and announcements for BRICKS Controller

<Update label="July 8, 2026" description="v2.24.11" tags={["Release"]}>
  ### Editor

  * **Data Calculation editor** — editor and config edits now tolerate stale or unknown commands, missing ports, and renamed ports instead of crashing while removing commands or connecting links.
  * **Event Inspector** — now reports state-group next-canvas routes from the state group itself.
  * Other editor stability fixes.

  ### Web Preview

  * Video Brick subtitle support, Generator HTTP response events, WebView query-selector error reporting, DevTools BigInt call arguments, and the runtime fixes listed under [BRICKS Foundation](/foundation/changelog) also apply to Web Preview.

  ### Media Flow

  * **Box authorization** — [Media Flow](/controller/media) generator now reports missing box authorization with an actionable accessToken / passcode error.
  * **Copied previews** — keep JPEG content type even when generated from PNG versions.
  * **AI image analysis** — chooses the largest bounded image version reliably for very large images.
  * **User tags** — single-file Media Flow updates can set `userTags`.
  * Other Media Flow stability fixes.
</Update>

<Update label="July 1, 2026" description="v2.24.10" tags={["Release"]}>
  ### Editor

  * **Cross-application copy / paste** — restored, and copied canvases now keep Brick-referenced animations linked correctly.
  * **Schedules** — the schedule editor no longer crashes when a schedule or its backing test disappears mid-edit, and multiple-test playback rows keep stable identities through duplicate / delete / re-add.
  * **Canvas & Subspace order** — reordering canvases and Subspaces skips stale ids instead of corrupting item lists, and deleting Property Bank items from linked-module or sparse configs no longer crashes.
  * **Brick Sketch** — drawings recorded in Simulator / Preview are captured as importable state, so replay preserves the drawn result without noisy per-stroke steps.
  * **Passcodes** — workspace one-time passcodes now include Activity Log access.
  * Other editor crash and stability fixes.

  ### Web Preview

  * **Brick Sketch** — drawing recording / replay improvements also apply to Web Preview.
  * The Generator, Data Bank, Property Bank, Dynamic Animation, and runtime fixes listed under [BRICKS Foundation](/foundation/changelog) also apply to Web Preview.

  ### Media Flow

  * **Large prefixes** — [Media Flow](/controller/media) copy / share operations now copy prefixes with more than 1000 files completely.
  * **CROP regions** — out-of-bounds CROP regions are clamped or skipped, so one bad version no longer drops the whole resize batch.
  * **AI image analysis** — empty or refusal responses are now reported as failures so they can retry, instead of saving a null success.
  * Other Media Flow stability fixes.
</Update>

<Update label="June 24, 2026" description="v2.24.9" tags={["Release"]}>
  ### Editor

  * **Sketch backgrounds** — Sketch bricks now render their background in the editor preview, including dot and grid patterns, background images, colors, and light / dark themes.
  * **Falsy module properties** — editing a module property to a falsy value (`0`, empty string, or `false`) now persists instead of reverting to the module default when the module is re-synced.
  * **Quick-edit** — no longer loses a pending change when the same property is edited on two different bricks before submitting.
  * **Subspace Actions** — removing a Subspace Action now cleanly drops every receiver that references it, instead of removing an unrelated receiver and leaving a dangling reference.
  * **Schedules** — editing the date range on a schedule that uses a custom cron expression no longer wipes out the saved cron.
  * **Linked modules** — deleting a subspace or canvas in a config with a linked module no longer crashes; removing a Brick from its last canvas respects `keep_unused_bricks`; and updating a Brick on a specific canvas writes to that canvas instead of the current one.
  * **Event Inspector** — now lists entities that reach a canvas via a Change Canvas action as that canvas's parents.
  * Other editor crash and stability fixes.

  ### Web Preview

  * The Data Calculation, generator, canvas, event, automation, and runtime fixes listed under [BRICKS Foundation](/foundation/changelog) also apply to Web Preview.

  ### Web Preview DevTools

  * **Application panel** — DevTools Application panel now shows Local Storage, Session Storage, and IndexedDB in Web Preview.
</Update>

<Update label="June 17, 2026" description="v2.24.8" tags={["Release"]}>
  ### Web Preview

  * **Video screenshots** — Video bricks on Web can now be captured in screenshots when loaded from CORS-enabled CDNs, while non-CORS videos still fall back to normal playback.
  * **Generator LLM / Speech Inference (GGML)** — local web models fall back to CPU more reliably when GPU acceleration is unavailable, and unsupported Safari loads now show a clear browser compatibility error.

  ### Web Preview DevTools

  * **Screenshot automation** — Web Preview automation can now save, compare, and preview screenshots in the browser, including local screenshot updates through IndexedDB.
  * **Storage inspection** — DevTools Storage inspection now covers System storage, Data Bank stores, Generator cache, and Generative Media cache with readable values for CLI clients.
  * **Network panel** — DevTools Network panel now captures HTTP and WebSocket requests, including local preview requests.
</Update>

<Update label="June 10, 2026" description="v2.24.7" tags={["Release"]}>
  ### Web Preview

  * **Local GGML models** — Web Preview can run local GGML models (LLM / Reranker / Speech Inference / VAD) in the browser with WASM / WebGPU, including Reranker support and native logs in DevTools.
  * **In-browser storage** — Web Preview supports SQLite and Vector Store workflows, including memory-only SQLite and web-fetchable model / file URLs.
</Update>

<Update label="June 3, 2026" description="v2.24.6" tags={["Release"]}>
  ### Editor

  * Event Editor no longer crashes when saved Events reference Actions that no longer exist on a template.
  * Reordering linked-module or sparse Subspace item-list groups no longer crashes when optional animation, property bank, or Generator maps are absent.
</Update>

<Update label="May 20, 2026" description="v2.24.4" tags={["Release"]}>
  ### Media

  * [Media Flow](/controller/media) file picker shows file modified times in the viewer's local timezone (was rendered as UTC).

  ### Editor

  * [Config Editor](/controller/config-editor) save indicator now reflects the actual unsaved-changes state when collaborative-edit mutations arrive.
  * **AI Filter** — cloud model lineup refreshed (Claude Sonnet 4.6 + Haiku 4.5, Gemini 3.1 Pro + 3 Flash preview, GPT-5.5 + 5.4 Mini/Nano).
  * The **Changelog** button in the top tab bar opens the language-aware [changelog](/controller/changelog); new-version and update-available toasts honor the release date.
</Update>

<Update label="May 13, 2026" description="v2.24.3" tags={["Release"]}>
  ### Editor

  * Help toolbar button now toggles the [Config Editor](/controller/config-editor) help panel (previously open-only).
  * Cmd+A inside text inputs and rich-text fields no longer triggers Select All Bricks.
  * Brick Quick Edit popover flips below the brick when it would overflow the canvas above.

  ### Fixes

  * Title edits for Subspace, `test`, `test_case`, `test_map`, and `property_bank_calc_node` mutations now propagate to the related short-edit refs.
  * Don't crash creating short-edit refs when `brickList` items are missing `brickId`.
</Update>

<Update label="May 4, 2026" description="v2.24.2" tags={["Release"]}>
  ### Editor

  * "Config invalid" error reports show the actual schema error path (was always logged as `undefined:`).

  ### Media

  * [Media Flow](/controller/media) file picker supports SVG previews.
</Update>

<Update label="April 29, 2026" description="v2.24.1" tags={["Release"]}>
  ### Improvements

  * Replace remaining browser confirmation dialogs with in-app modal dialogs across [Application](/controller/applications), [Data Bank](/controller/data-bank), [Device](/controller/devices), Device Group, [Module](/controller/modules), share-app, and token manager flows.
  * Show device screenshot timestamps in local time.

  ### Fixes

  * Fix Editor crash when bank properties failed to load.
</Update>

<Update label="April 22, 2026" description="v2.24.0" tags={["Release", "Breaking"]}>
  ### Highlights

  * **Real-time collaborative [Config Editor](/controller/config-editor)** — native support for simultaneous editing of the same application config with automatic conflict resolution. Collaborator avatars and connection status are shown in the editor, and collaborative undo/redo only reverts the local client's edits while preserving other users' changes. Now opt-in with a first-visit intro dialog.
  * **Generator LLM (MLX) model picker** — HuggingFace model picker and recommended MLX models in the Editor, matching the new native MLX support in [BRICKS Foundation](/foundation/changelog).
  * **In-app modal dialogs** — non-blocking in-app modals replace browser `confirm` dialogs for Force Unbind and Move Workspace. Move Workspace also adds a workspace filter input.
  * **[Activity Log](/foundation/activity-log) screenshot capture** — configure periodic screenshot capture per Device and [Device Group](/controller/devices) in settings.

  ### Breaking changes

  * **Short-Edit Assistant removed** — the experimental Short-Edit Assistant has been removed. Use Generator Assistant / MCP instead.
</Update>
