[#382] Redesigned the pivot table with a built-in pivot engine — arrange fields in Rows, Columns, Values, and Filter zones; aggregate by sum, count, distinct count, average, median, min, max, or standard deviation; choose a compact or tabular layout with subtotals, column subtotals, and grand totals; color cells with a heatmap (positive/negative colors, applied to values, totals, or both); set decimals and sorting by name or value; and optionally let viewers sort and filter in the player. Large pivots render with virtualization, and existing pivots are converted automatically
[#382] Pivot tables are now available in the User Editor (New Pivot)
[#378] Added API sources to the User Editor — call an external API (GET or POST with headers, parameters, body, timeout, and refresh interval), pick fields from the response with a root path and field paths, preview the response before saving, and use the result in charts, tables, pivots, and unions. Every User Editor user can add up to 20 API sources per site; only public API addresses are allowed
[#378] Added data files to the User Editor — upload CSV files (up to 20 per site) and use them in charts, tables, pivots, and unions
[#386] AI chat and AI Agent requests are now built to reuse the model provider's prompt cache, which lowers cost and speeds up responses on long conversations
[#384] Improved map tile server stability — the tile cache no longer shares the node's system disk and the renderer has more memory, so maps no longer fall back to the watermarked CARTO tiles when the cache fills up
[#368] Renamed the DeepSeek model entry to DeepSeek Flash (deepseek-flash) and updated its usage cost calculation
[#386] Fixed AI chat losing attached documents, images, and dashboard context in follow-up turns after tool calls, and the tool bank offering every candidate tool on those turns
[#383] Fixed the 3D Editor element tree freezing for tens of seconds when a scene had hundreds of elements
[#383] Fixed multi-select rotate and scale in the 3D Editor applying only to the primary element
[#68] Fixed thresholds not appearing on User Editor pages and threshold display in tables
[#68] Fixed the data view header in the User Editor data list always showing "API"
[#378] Fixed User Editor API sources converting XML responses to JSON incorrectly, the Add API button not appearing, and the sidebar item hover area
[#383] Added the 3D Editor — build 3D scenes next to the Map Editor with basic shapes, GLB models, lights, environment presets/HDR, floor images, text, paths, and saved camera views; edit with move/rotate/scale gizmos, multi-select, grouping, snapping, orthographic views, and full undo/redo, in either a local XYZ or a GEO (longitude/latitude) coordinate system
[#383] Added data binding to 3D elements — connect CSV, API, Union, IoT, and Kafka data to labels, position, rotation, and scale, and attach click/hover actions that receive the row values
[#383] Added state flows and effects to 3D elements — threshold rules can trigger color changes, glow, blink, pulse, spin, bob, animation clips, path following, hide, and label emphasis, and alarms/actions work the same way as maps and charts
[#383] Added Data Rows elements — spawn one 3D instance per key in a dataset with per-key labels, states, and effects, including a high-performance instanced render mode for large counts
[#383] Added the 3D player for dashboards — embed scenes as a layout item with camera view buttons, auto-rotate, labels, hover popups, and a CAMERA_VIEW action; scenes are included in publishing and site backup/restore
[#383] Added a 3D Editor item to the license feature list so administrators can enable or disable it per license
[#384] Map widgets now load their basemap (Positron, Dark Matter, Voyager) from SCLAB's own tile server, removing the "API KEY REQUIRED" watermark that CARTO started adding; existing maps keep their basemap settings without any change
[#384] Added the Tile Server page to the admin menu — register external customer domains that are allowed to load map tiles (SCLAB sites and custom domains of published sites are allowed automatically)
[#367] Added an input context limit option to AI settings — turn it on to cap the tokens sent to the model, seeded from the model's configured limit
[#367] Added version history to AI Dashboards — every save is kept as a version with a (v2), (v3) label and creation time in the history dropdown
[#367] AI Dashboard scripts are now validated before saving (syntax errors and definite runtime defects), the model receives line-level fix guidance, and missing data renders an empty chart instead of a blank screen
[#367] Improved AI chat and report reliability on long conversations by counting tool definitions and attached images in the input budget and trimming in one place
[#378] Removed the Pivot option from the User Editor block list
[#378] Added User Editor — users can build their own pages from site data such as charts and tables, with layout and theme editing, undo/redo, and new-window editing
[#378] Added user page sharing — share pages through per-user share URLs, and let link viewers access data, files, and real-time updates with owner-level access
[#378] Added user page download to PNG or PDF, including full capture of long pages
[#378] Added union data creation in the User Editor
[#378] Added User Editor permissions — control User Editor availability from the permission page, and configure site page, AI Dashboard, and AI Agent visibility individually
[#247] Added maintenance mode — administrators can turn on maintenance with a custom message; regular users are redirected to a maintenance page and automatically return to their original page when maintenance ends
[#247] Added SCLAB GPT prompt history — review previously used prompts in data and union settings and apply them again
[#247] Added fullscreen support to the iframe popup content area
[#247] Improved chart, table, pivot, and location settings popups with a unified layout, popup titles, reorganized settings sections, updated chart list thumbnails, and a cancel button
[#378] Unified the site's top-right buttons and changed them to a dropdown for users with edit permissions
[#148] Improved large file imports with batched, concurrent embedding for faster processing and detailed progress for the loading, parsing, and OCR stages
[#148] Improved AI Agent internal tool call structure for faster responses and better stability
[#368] Improved HWPX export speed for documents with CJK text such as Japanese
[#68] Cleaned up an unused time series option in chart settings
[#367] Added OpenAI GPT-5.6 models (Luna, Terra, and Sol) to the AI model selection
[#367] Added a Tool Use option (Auto / Required) to AI settings — set it to Required to make the model always call an available tool, which helps with lighter models that might otherwise answer data questions without using tools
[#375] Added SCLAB Vision CCTV integration — register multiple Vision servers, select cameras in layout CCTV widgets, and play live streams through the Studio player
[#375] Added CCTV support to Map Editor — place cameras on maps by server, toggle camera visibility, assign actions, apply settings in bulk, and customize marker icons
[#376] Added multi vector DB support — manage site-scoped vector DB settings, connection status, provider migration, and external vector DB mode for read/write blocks
[#379] Added Tool Bank — build and manage reusable AI tools with vector DB provider selection, attachments, and automated build flow
[#368] Added a parallel report and slide section pipeline to improve large document generation speed
[#68] Added an Agent Mode toggle to LLM blocks and cleaned up text output rendering for Agent Mode runs
[#368] Improved AI Agent logs with real-time running time, copy support, raw log viewing for truncated entries, automatic expansion of running blocks, and automatic scrolling
[#368] Improved report and slide generation quality with final review gates, safer section replacement, chart validation, date guidance, title-based file names, and stronger formatting rules for PDF/PPTX/HWPX output
[#368] ReportWorker output now uses a structured file-tree format, while regular JSON output continues to render as a JSON tree
[#247] Added new-tab edit buttons from page and block settings for maps, charts, pivots, tables, SCLAB GPT, and AI Agent pages
[#247] Added enlarged preview popups for charts and tables, and added a popup for viewing API data
[#247] Chart, table, and location tooltip column settings can now be reordered by sorting
[#375] Improved Vision server management with API token fields, connection tests, status indicators, server search, and immediate status refresh after adding a server
[#68] API data sources now support Basic and Digest authentication — enter the username and password in the new Auth fields instead of embedding credentials in the URL
[#68] AI Agent can now create report blocks directly
[#68] Map settings "apply to all" now shows which items the settings were applied to, and warns which items were skipped when applying to multiple items at once
[#374] Improved the sign-in screen — social login buttons now show the service name followed by "Sign in" (e.g., "Google Sign in"), and the login and sign-up screens are fully translated across 12 languages
[#368] Shortened the add/delete buttons on report themes to prevent label overflow (all 12 languages)
[#368] Raised the maximum token limit for AI Agent runs to support larger reports
[#368] Fixed report text appearing blank — Latin characters in PDF reports, and Japanese and Chinese characters in PDF and HWPX reports, now render correctly
[#368] Report and file generation now stop immediately with a clear message when the site API token is missing, instead of retrying and consuming tokens
[#368] Added report themes — upload a design template (DOCX/HTML/PPTX/PDF/HWPX) and generated reports reproduce its layout, styles, and fonts across every output format
[#247] Added Python execution to the Code block — choose Python alongside JavaScript, running in an isolated sandbox with common data libraries (NumPy, PyTorch, etc.) preinstalled
[#368] Report theme management — added theme deletion, and re-uploading a theme with the same file name now replaces the existing one instead of creating duplicates
[#247] Code block editor — added a per-language writing guide popup (the ? button) and a fullscreen editing toggle
[#368] Fixed report rendering — text alignment and font sizes are now applied correctly, leftover HTML markup is cleaned up, and <br> tags are converted to line breaks
[#368] Fixed a chart image ID collision when applying HWPX themes
[#368] Fixed data permission enforcement in AI Agent blocks — data access is now validated before a block runs, and the data-import block only lists data groups and lists assigned to the agent's roles
[#68] Fixed Ollama models running with reasoning always enabled even when reasoning strength was set to None; unsupported "xhigh" strength is now clamped to "high"
[#218] Added Refresh option to API Variable action
[#218] Added feature to set size for each column in the table
[#218] Added Number chart preview background color setting feature
[#218] Modified to adjust the screen when setting the location data to fit the screen, so that multiple location data is combined (previously adjusted to the last loaded area)
[#68] Fixed a bug where an error occurred when connecting to ODBC
[#68] OD visualization active color tint -> fixed color
[#218] Fixed a bug where empty values were sent as empty strings in combine, and null strings were sent as null, and undefined strings were sent as undefined
[#218] Fixed a bug where the maximum and minimum values in OD location were fixed to the values at the time of API call