-- +goose Up -- Clearance provenance, for honest and defensible ranking (subphase 2.18). The platform NEVER verifies -- a clearance itself; the authoritative check is the hiring client FSO through DISS at onboarding. This -- column records HOW a clearance is known so the UI and any ranking never imply a verification we cannot -- perform. The default self_reported is the honest baseline for every existing and new candidate; an org -- FSO can later mark a candidate sponsor_verified and stamp clearance_verified_at. Additive: no data is -- rewritten, every current row defaults to self_reported. ALTER TABLE candidates ADD COLUMN IF NOT EXISTS clearance_provenance text NOT NULL DEFAULT 'self_reported' CHECK (clearance_provenance IN ('self_reported', 'sponsor_verified', 'document', 'continuous_vetting')); ALTER TABLE candidates ADD COLUMN IF NOT EXISTS clearance_verified_at timestamptz; -- +goose Down ALTER TABLE candidates DROP COLUMN IF EXISTS clearance_verified_at; ALTER TABLE candidates DROP COLUMN IF EXISTS clearance_provenance;