See what is off limits
Start with the blacklist. If customers or status is protected, the ticket goes back to access and data policy; changing the SQL spelling is not a workaround.
dbcli blacklist listData correction · SQL
This walkthrough follows a common repair ticket: several customers have a blank status, and operations wants it set to active. First establish who would change and how to check the outcome. Then discuss the SQL.
Start with the blacklist. If customers or status is protected, the ticket goes back to access and data policy; changing the SQL spelling is not a workaround.
dbcli blacklist listThe ticket says “customer status”; production may use another field or type. Reading the live schema blocks the most ordinary—and expensive—mistake: guessing a column name.
dbcli schema customers --format jsonPreflight checks that the UPDATE target matches --table, contains a WHERE clause, and uses a plain SELECT for read-back. It prints a copyable after-write command.
dbcli verify safe-backfill \
--table customers \
--query "UPDATE customers SET status = 'active' WHERE status IS NULL" \
--verify-query "SELECT count(*)::int AS n FROM customers WHERE status IS NULL" \
--expect "value == 0"Review the preflight output and execute the approved write through your team’s established authorization flow. Then run the generated command with --after-write to read back the result and write an inspectable verification artifact.
dbcli verify safe-backfill ... --after-write
dbcli verification list