v3.12
Release 3.12 shows who received which alert and mission notification, and the Preview node estimates the token credits of an Improvement workflow run before you start it. The Assistant now works with masked values of columns flagged as personal data instead of withholding them, and profiling flags personal data more precisely.
🚀 New Features
Notification log for alerts and missions
Alert and mission detail pages list every notification that was sent: when, through which channel (email, Teams chat or Teams channel) and to whom.
"View all notifications" on the Alerts and Missions pages opens a tenant-wide log for tenant owners, searchable by recipient and date range. It is also available in IT administration.
Recipients resolved per check, from an SQL clause or a column value, are logged with their own address. The log also lists notifications sent before this release.
The log contains notifications the email or Teams provider accepted. Skipped notifications and test messages are not listed.

Token credit estimate before a workflow run
After calculating a preview, the Preview node shows how many tokens a run of the nodes above it would consume on the full dataset, and what share of the remaining token budget that is. Hover for a breakdown per node.
The estimate is extrapolated from the preview sample. If the Data input node has filters, the row count is shown as an upper bound. Previews stay free.
A run whose estimate exceeds the remaining budget does not start, neither in the UI nor through the API. Tenants without a token budget are not blocked.
✨ Improvements
Assistant and personal data
Columns flagged as personal data are no longer withheld from the Assistant. It receives format-preserving masked values, such as the country code and check digits of an IBAN, so it can build format rules without seeing the original values.
Personal data is masked the same way on every path that sends data to an AI model, including the Coding Assistant, generic rule suggestions and MCP.
If you ask for a specific rule type, for example "as SQL", the assistant uses it. Conditions that a rule filter cannot express, such as "date in the future", go into a Custom SQL rule instead of being dropped.
More precise personal data detection in profiling
A pattern flags a column only when at least half of its sampled non-empty values match. An IBAN match counts only if it passes the IBAN checksum.
Flags are recalculated on every profiling run, so a flag disappears once the data no longer matches.
Context files
Each ruleset or workflow accepts up to 10 context files of up to 250 MB each, 1 GB in total. A rejected upload names the limit.
A workflow file that a node uses cannot be deleted; the message names the nodes using it.
More reliable check runs
A failing table-level rule, for example a Freshness rule without a timestamp column, no longer discards the results of the other table-level rules. The check reports the failure instead of finishing without it.
A Freshness rule needs exactly one date or timestamp column before it can be activated.
Workflow configuration
Enabling timestamps on output columns warns when following nodes reference the renamed columns.
A Data enrichment node whose source column is missing stops before processing, instead of failing every row while the run is reported as completed.
In the PDF connector, upload, schema view and preview stay disabled until their inputs are set.
🤖 Small improvements and bug fixes
The rule issue history shows every run, not only the first 100.
Rules of the type "contains values from other table" without join keys report the same issue counts in runs as in the preview.
Redshift Serverless retries a read once when the first query after an idle period returns an incomplete response, instead of returning an empty result.
SAP HANA connection tests show the actual connection error.
Virtual table joins work with column names containing quotes, and virtual tables on Redshift and Databricks use the connector's SQL dialect.
Virtual tables on Azure SQL, SQL Server and Synapse no longer leave empty
ibis_polars_memtable_*tables in the database. Tables left by earlier versions are not removed automatically.The Address node fills Unit (US), and the address rule reports lookup failures as failed evaluations instead of invalid addresses.
All ruleset chat functions of the Assistant, including context files and instructions, check access to the ruleset.
The people picker for Teams recipients searches your Microsoft directory through the platform. No Microsoft Graph access token reaches the browser.
The last owner of a tenant cannot delete their account while other users remain, and deleting a tenant's last user no longer hangs.
Group, mission and alert names cannot be blank, and long tags keep their delete button visible.
💡 Behaviour changes worth knowing
SAP HANA: regular expressions in pattern and Custom SQL rules reach HANA unchanged. Before, patterns such as
^[0-9]{5}$were rewritten into aLIKEprefix and a trailing$was dropped. Affected rules can report more issues than before; earlier runs stay unchanged.
⚡ Breaking Changes
☁️ Private Cloud
Release candidate image tags for platform version 3.12.0:
qui:
rc_ca475b96dc6454927bf02aed14eb103f2b4b40b4qservices:
rc_amd_ca475b96dc6454927bf02aed14eb103f2b4b40b4python-executor:
rc_amd_ca475b96dc6454927bf02aed14eb103f2b4b40b4dqc-mcp (optional, AMD64):
rc_amd_ca475b96dc6454927bf02aed14eb103f2b4b40b4
Platform version: 3.12.0
