-`generate` renders `logical/*.toml` through `aether-data-schema` into
`generated/{postgres,mysql,sqlite}`. This is a build output, not another SQL
source to maintain.
-`compose` rewrites the executable SQL from the manifest order.
-`check` verifies generated output is current, confirms the bootstrap source
fragments still compose cleanly, and diffs each executable migration manifest
against the checked-in SQL.
-`split` regenerates fragments from the executable SQL and is mostly for
rebaselining after a deliberate bulk rewrite.
## What To Edit
The schema workspace has three normal source areas:
| Path | Role | Edit policy |
|---|---|---|
| `logical/*.toml` | Long-term logical table model shared by all SQL drivers. | Edit first for portable table-shape changes. |
| `drivers/{postgres,mysql,sqlite}/` | Current maintenance fragments for executable SQL. | Edit only for deployment compatibility, ordering, or generator gaps. |
| `bootstrap/postgres/` | Source fragments for the Postgres empty-database bootstrap snapshot. | Edit here when the bootstrap snapshot changes, then rebuild `aether-data` so `build.rs` regenerates the embedded snapshot. |
Everything else is output:
| Path | Role | Edit policy |
|---|---|---|
| `generated/{postgres,mysql,sqlite}/` | Machine-written SQL emitted from `logical/*.toml` for audit and drift detection. | Do not edit; regenerate with `compose_schema.sh generate`. |
| `../../adapters/{postgres,mysql,sqlite}/migrations/` | Runtime SQL artifacts embedded by each database adapter. | Regenerate through `compose_schema.sh compose`; do not edit independently. |