ProductPublished

Config Studio: nobody should hand-author YAML

Config Studio profiles your schema, decides which tables and joins are real, and emits a config through a fail-closed gate. You read the draft before it saves.

Marcus Lee4 min read

ChatPlotDB answers from a config, and a config is the honest answer to why it works. It is also, written by hand, a few hundred lines of YAML that somebody has to keep in step with a schema that changes every sprint. That is a real reason not to adopt a product, so we removed it.

Profile, adjudicate, emit

Point Config Studio at a connection and a generation runs in three phases. It profiles: introspecting tables, columns, types, keys and relationships, and sampling values to learn what each column actually holds rather than what its name suggests.

It adjudicates: deciding which tables are worth exposing, which joins are real rather than merely possible, and which columns are the metrics people will ask for. Most of a production schema is machinery — audit tables, join tables, columns nobody has written to since 2023 — and putting all of it in front of the planner makes answers worse, not better.

Then it emits the YAML and runs it through a verification gate. The gate is fail-closed: a config that does not verify is not offered to you at all, rather than offered with a warning nobody reads.

Nothing saves until you say so

The draft is presented in plain language before raw YAML, because the person who knows whether “active account” means the right thing is rarely the person who enjoys reading YAML. Nothing is written until you press Save.

A config is not finished when it is generated

Refine improves an existing config from evidence rather than from another guess: the queries that came back wrong, and the thumbs-down feedback on answers. Your schema changes, your team's vocabulary drifts, and a config that was right in March is quietly wrong by August. Refine is how it catches up.

Transform your support operation with ChatPlotDB

Related Articles

Browse all articles →