When a Warehouse Builder Mind works, each step appears in the chat as a card: a read, a change, a run, a health check or an index step. This page is the reference for those cards, their chips and their limits. For the states and controls shared by every card, see Tool cards and Tool History.
How a warehouse step appears in chat
Every warehouse step renders as a card with a title, a one-line status and, when it finishes, a result summary or a badge. Click the card body to fold its details; a chip on the card or its corner button (tooltip Open details) opens the step in Tool History.
While a step runs, the card shows a short busy line, for example Running…, Reading the query plan… or Aggregating table health…. The wording differs per step.
If a step is refused or blocked, the card shows Refused or Blocked instead of its usual badges, and the reason replaces the summary. In the step's full view the message starts with Refused: or Blocked:.
SQL blocks carry Copy SQL. A failed run adds Error details with Copy error, and the step's full view can copy its arguments with Copy arguments.
When a step returns nothing to draw, a short line replaces the table. The most common are No structured result., Nothing to show. and None.; each card family adds its own, listed below.
Read and list cards
A read card carries the step's label and count in its title, such as List Tables · 12, and can show Arguments, Warnings and Result sections; a badge counts the warnings as {N} warning(s).
The arguments grid keeps the first 8 keys, and a plain-text result shows a short extract (about 600 characters) instead of the whole text.
A list result shows up to 30 rows on the card; open the step in Tool History for the rest.
Column and mapping cards
The columns card lists a table's or transformation's columns. Only the optional columns that at least one row carries appear: Nullable or Required, PK, Type, FK and PII. A foreign key reads {table}.{column}, and the title counts the columns.
A mapping step shows two lists, Targets and Sources, and flags entries as new or deleted. The card opens itself when it carries warnings.
In the step's full view, every mapped pair gets Compatible, Incompatible, Unknown or Unmapped, and the check is counted with {n} rows, {n} distinct Source IDs and {n} empty Source IDs.
Transformation cards
A transformation step shows a status pill: Pending, Invalid, In Progress, Testing or Finished.
A single transformation card titles itself with the name, adds a line such as id {id} · {pattern} · {meaning}, and reports the badges Finalized, Schedule: manual, {n} mapped and No cycle. A Next: line carries what the Mind will do next; on a finalize step it moves up under the title.
A transformation list shows the columns Id, Name, Pattern, Source system, Finalized (yes or no), Schedule (on or manual) and Days.
Entity and deploy cards
Delete, drop, truncate and purge steps render in a warning tone and report Deleted, {n} rows and Redeploy required; a rename adds Renamed from {previousName}.
A truncate step lists Truncated partitions ({n}), says Whole table truncated. when all partitions went, and counts removed run history as ETL run history rows deleted: {N}.
The card lists System columns and Locked columns as chips, Dropped columns as findings such as Column "{name}" was dropped, and Advisory dependants when other objects depend on the table.
The deploy card titles itself Deploying table {id}, Deployed "{name}", Deployed table {id} or Deploy failed for table {id}, and carries a Deployed badge with rows Table id, Name and PII mirror (PII mirror {name}).
Change log cards
A change log step shows a {N} change(s) chip and the period it covers, and groups changes by the person who made them, busiest group first; a change with no person sits under System.
Every row carries an action chip: created, updated or deleted. An object that still exists opens from its chip; a deleted object keeps its name with a line through it and does not open.
When the card shows only part of the list, a line reads "+{N} more - open the tool view for the full list.". A Truncated chip (its tooltip reads The tool cut the list at its row limit) means the tool itself cut the list.
A period with nothing to report reads: "No warehouse objects were created or updated in this window."
Query plan and storage cards
The query plan card summarises what a query would read: a ~{N} rows badge and {N} findings or No findings. It opens itself when it has findings.
Its body lists findings, notes and plan steps under Plan steps ({N}), with per-table chips such as Full scan, reads {P}% of granules, Pruned and No effect.
The estimate line reads Estimate: ~{rows} rows · {marks} marks · {parts} parts to read; the full view adds the index table with Index, Name, Keys, Parts, Granules and Effect.
The partition stats card chips the database and the table the stats were filtered to, then {N} tables, {N} mergeable part(s) (highlighted when above zero) and any running merges; the Running merges section shows their progress. It says No active parts matched. when nothing matched.
An optimize step chips Optimization started and Runs detached and warns that the merge runs in the background, possibly for hours; its progress shows up in partition stats.
Query log and unused tables
The query log card chips page {page}/{pageCount}, {N} total and the window, which reads last {n} days when it reaches the present or shows the exact dates; Filters lists what was applied.
Its table covers the start, user, duration, memory and the tables involved, plus the query text; long queries carry Expand and Collapse controls, and type chips flag exceptions. It says No queries matched. when nothing matched.
The unused tables card labels each table unused, read by queries, read by objects or unknown, tints the unused rows, and gives the reason in the chip's tooltip; the chips count last {n} days, {n} tables and {n} unused, and the card opens itself when anything is unused.
The card hides the Deployed, Writes and Reason columns; they appear in the full view. It says No tables were checked. when nothing was checked.
Run cards
An ETL run card starts with Running… and then Running for {duration}; before the engine reports, the progress line reads Waiting for the ETL engine. The card title ends with the ETL log number (etl log {id}).
The status chip shows Running, Finished, Error or Aborted, and pulses while the run is Running.
When a wait gives up early, the card says Still running: the agent will keep waiting; the job continues, and the full view reads Wait timed out, still running.
The summary grid lists Rows, Duration, Backfill days, Previous days, Snap date and Started, and a Next: line carries the next action. After an abort, Days restored or Days not restored reports on the backfill window (Stop and abort runs in chat).
A failed run opens its stack under Error details, and Log steps lists At, Step and Text. An ETL runs list card names the transformation or table it belongs to, and says No ETL runs recorded. in the full view when there is nothing to list.
A view refresh card chips {n} view(s) and lists View, Status, Last refresh, Last success, Next, Read and Written, with Last duration, Retries and Error in the full view. Statuses are Running (pulsing), Scheduled or Disabled; with nothing deployed it says No refreshable view is deployed yet.
Lock cards
The ETL locks card counts the holders and the waiting work, for example 2 holders · 3 waiting, and chips how many locks are held, or none held, plus as of <time> for when the list was read. Its table lists each holder's Lock (#<token>), State, Holder, Resources with their modes, Since and Waiting; with nothing held it reads No ETL locks are held right now. When steps wait with no holder in the list, the card adds <n> step(s) wait without a listed holder - open the tool view for the queue. The full view shows the same list as the Locks view.
Abort lock holder and Release stale lock render in a warning tone. While they work, the line reads Waiting for ClickHouse to drop the holder…; the result badge reads Released or Releasing, with the run as a job #<id> link and, while it is still releasing, what it waits for under Cleanup.
Run schema change when free and Cancel queued schema change title themselves with the table and show the change's label and run; the full view lists Change, Table, Job, Offer valid until and Request.
A workflow run card adds <n> steps waiting for locks, and its steps table a Waiting for column with each waiting step's note.
Safety guard and temporary table cards
A transformation card shows a Safety guards row with the current values, for example Empty source on · Delete ratio on (50%), or Safety guards: not used by this pattern. Under it, Safety guard history lists the latest entries, each marked Changed or Skipped for one run, and More history available shows when there are older ones. See Data safety guards.
A Lake table card lists the guards in the same way, for example Fail on empty source · Delete ratio on (50%), or Full Reload (Truncate Insert) only for a table on another sync type, with its latest history entries.
In an ETL runs table, a run that failed on a guard gets a Safety guard badge next to its status; hover it to read the guard's message. A run card shows Safety guards skipped when the run was started without them.
The ETL temporary tables card titles itself with the kind when the list is narrowed, chips the count of tables older than 6 hours, for example 2 older than 6 h, or none stale, and lists Table, Kind, Age, Rows, Size and Holder. It is the same list as the Temporary ETL tables panel in ClickHouse storage and maintenance.
Health cards
The health report card titles itself Health · "{name}" · {N} rows and badges {N} deleted, {N} finding(s) or Healthy. It opens itself when it has findings.
It groups results under Findings, Per source system and Latest partitions ({n}); sub-sections open on click and do not fold the card.
The column check table uses Name, Type, Nulls (%), Empty, Distinct, Min, Max, Epoch 1970 and Verdict, with verdicts ok, all null, all empty, has 1970 or single value; rows that are not ok are tinted. It says No columns checked. when there is nothing to check.
The partitions card lists Partition, Date and Source system (and Rows when the result carries counts) and previews 30 partitions with Showing {X} of {Y} partitions.. A table without partitioning says Partitions are not supported for this table.
The dependants card badges {N} blocking and {N} advisory and lists them under Blocking and Advisory; a long list ends with "+{N} hidden", and an empty one reads None.
A test output review card counts its findings the same way: {n} finding, {n} findings or No findings.
Index and view cards
The table index card titles itself with the table and chips {n} indexes on the table; while writing it says "Writing for the loaded data...". Outcomes read Not needed: the table is empty, Written for the loaded data in {n} s or Could not write for the loaded data: {reason}.
When the indexes are not published, the card says Redeploy required and reminds you to deploy the table.
A refreshing view card explains how the view was swapped: Swapped in one step: readers kept the view until the table was filled or Dropped and recreated: no rows until the first refresh finished. It shows the deploy state (Deployed, first refresh running, or a reminder to deploy) and Last refresh {time} · next {time}.
The index estimate card runs Against {N} queries and subtitles Suggested: {label} or No query could be estimated; each source row shows Estimated, Not applicable, Timed out, Failed, Refused or Skipped, and notes whether the number was measured, estimated or an applicability only result.
When no candidate helps, the card says "No candidate skips at least 25% of the kept granules"; a session line tells whether the estimate is kept for the current Model Builder session.
On a server that is too old for estimates, the card shows Needs ClickHouse {version} and points to the query plan, which keeps working.
Sleep and skill cards
A sleep card titles itself with the planned time and counts down ({duration} left, or Sleeping). When it ends it reads Woken up after {duration} or Slept {duration}, and Woken early when it was woken before the plan; the control reads Wake now.
A step that only loads a skill shrinks to a small skill chip instead of a full card; select it to open the step. See Knowledge search and skills in chat.
Limits that shorten a card
Cards keep the chat readable by trimming long lists. The trimmed part stays available in the step's full view.
On a card
In the step's full view
Chip lists, up to 12 chips
Up to 40 chips
Tables inside one value, up to 5 rows
Up to 50 rows
Change lists and partition stats, up to 12 rows
All rows
Query log, up to 12 rows
All rows of the current page
Read card lists, up to 30 rows
All rows the tool returned
Partitions table, up to 30 partitions
The rest of the result
Overflow lines name what is hidden: "+{N} more - open the tool view for the full list.", "+{N} more" after chips, or "+{N} hidden" in a dependants list.
Questions, answered
Why does a card say "No structured result."?
The step finished, but its result was not in a shape the card can lay out, so the card shows this line instead of a table. Open the step in Tool History to see what did come back, and ask the Mind again if you expected data. Nothing to show. and None. say the same for an empty table or an empty list.
Why does a list stop at 12 rows?
The card keeps long lists short so the chat stays readable, and a line such as "+{N} more - open the tool view for the full list." tells you. The step's full view holds the complete list. Chip lists stop at 12 as well (up to 40 in the full view), and tables inside one value show 5 rows (up to 50 in the full view).
What does the "Truncated" chip mean?
The tool itself cut the list at its row limit, so the card shows only part of the data and the rest was never returned. Ask the Mind for a narrower period or a smaller object if you need everything.
Why is a deleted object struck through in the change log?
A deleted object cannot be opened, so the card keeps its name with a line through it and shows the removal in the list. Objects that still exist open from their chip.
What does "Redeploy required" mean?
The change is not live yet. Deploy the table to publish it: new indexes, for example, are published only when the table is deployed.
What does "Still running: the agent will keep waiting" mean?
The Mind's wait gave up, but the job did not; it keeps running. The step's full view shows the same state as Wait timed out, still running. Watch the run from its card, or abort it if you may: see Stop and abort runs in chat.
Why did a card open by itself?
Cards with something to check open expanded: the query plan card with findings, the health card with findings, the unused tables card with anything unused, and the dependants card with blocking dependants. Click the card to fold it again.
What does "Needs ClickHouse" mean?
The index estimate needs a newer database version than your server runs. The heading names the version it needs; until the server is updated, use the query plan step, which keeps working.
Why does a mapping chip say "Unmapped" or "Incompatible"?
Unmapped means a source column has no target yet. Incompatible means the two types cannot be cast; the chip's tooltip gives the reason, for example "Impossible to cast between these types". The mapping needs a fix so the pair matches.
Why did a step show a small chip instead of a card?
Some steps only load a skill for the Mind. Those render as a small skill chip that opens the step's details instead of the full card. See Knowledge search and skills in chat.
What does "mergeable parts" mean?
It counts the table's parts that can still be merged. A number above zero is highlighted, the Running merges section shows merges already in progress, and tables with the most mergeable parts are listed first. Ask the Mind to optimize the table if you want them merged.