The fix was simple: add a new column.
A new column changes the shape of your table. It adjusts both the schema and the way queries behave. Whether you work with Postgres, MySQL, or SQLite, the process is similar. You alter the table definition, set the column type, and decide on constraints.
In SQL, adding a new column usually follows a direct pattern:
ALTER TABLE users
ADD COLUMN signup_source TEXT;
This command updates the schema without touching existing rows. New rows will store values in the new column. If you need defaults, apply them at creation time. If you need indexing, build it after the column exists to avoid locking issues.
A new column also affects application logic. ORM models must reflect the schema change. API endpoints may handle fields they never saw before. Migrations should be small, reversible, and reviewed before hitting production.