BEGIN;

ALTER TABLE hr_payroll.performance_compensation_recommendations
    ADD COLUMN IF NOT EXISTS submitted_at timestamp NULL;

ALTER TABLE hr_payroll.performance_compensation_recommendations
    ADD COLUMN IF NOT EXISTS submitted_by uuid NULL;

ALTER TABLE hr_payroll.performance_compensation_recommendations
    ADD COLUMN IF NOT EXISTS sla_hours integer NOT NULL DEFAULT 48;

ALTER TABLE hr_payroll.performance_compensation_recommendations
    ADD COLUMN IF NOT EXISTS escalated_at timestamp NULL;

ALTER TABLE hr_payroll.performance_compensation_recommendations
    ADD COLUMN IF NOT EXISTS escalated_by uuid NULL;

ALTER TABLE hr_payroll.performance_compensation_recommendations
    ADD COLUMN IF NOT EXISTS escalated_to varchar(180) NULL;

ALTER TABLE hr_payroll.performance_compensation_recommendations
    ADD COLUMN IF NOT EXISTS override_used boolean NOT NULL DEFAULT FALSE;

ALTER TABLE hr_payroll.performance_compensation_recommendations
    ADD COLUMN IF NOT EXISTS workflow_audit jsonb NOT NULL DEFAULT '[]'::jsonb;

CREATE INDEX IF NOT EXISTS idx_compensation_recommendations_authorization_queue
    ON hr_payroll.performance_compensation_recommendations (tenant_id, status, submitted_at DESC)
    WHERE is_deleted = FALSE;

COMMIT;
