-- Free-text trip / event label so reps can group expenses by yacht show
-- or business trip (e.g. "Palm Beach 2026"). Un-normalized on purpose -
-- 6–12 events/year doesn't justify a `trips` table + CRUD UI. The
-- autocomplete on the expense form keeps spellings consistent so the
-- group-by works.

ALTER TABLE expenses
  ADD COLUMN IF NOT EXISTS trip_label text;

-- Powers the trip filter on the list endpoint + the autocomplete query.
CREATE INDEX IF NOT EXISTS idx_expenses_trip_label
  ON expenses(port_id, trip_label);
