Skip to main content
Apply and inspect database migrations.

tai db migrate

Apply every pending migration across all discovered components. Discovery covers the skeleton chains plus the chain of every installed plugin that declares one, in the environment or the plugin layer, whether or not the manifest loads it, and of every plugin the persisted manifest loads. --plan lists what would be applied and changes nothing. Idempotent: with nothing pending it reports so and exits 0. A plugin component whose override binding is unset is off: its chain is not applied, a line names it, and the exit stays 0. An installed distribution whose packages no installed metadata records (an editable install served by an import hook) is named by a line too unless the manifest loads it, the exit unchanged. Loud on a connection failure, an unconfigured connection, a rewritten (checksum-mismatched) chain, unreadable installed metadata, or a malformed installed plugin spec; a spec unreadable because its plugin is built for another contract is named by the contract range the plugin declares.

tai db status

Report each component’s applied / pending / checksum verdict. Reports every discovered component: the skeleton chains plus the chain of every installed plugin that declares one, in the environment or the plugin layer, whether or not the manifest loads it, and of every plugin the persisted manifest loads. Exits non-zero when any component has pending migrations or a checksum mismatch, so it doubles as a CI / pre-deploy gate. A plugin component whose override binding is unset is off, a valid state: a line names it and it does not fail the gate; an installed distribution whose packages cannot be enumerated and the manifest does not load is named the same way. Loud on a connection failure, an unconfigured connection, unreadable installed metadata, or a malformed installed plugin spec, named as migrate names it.