Program-based products now get URLs assembled from the template at redirect time. Changing a program's tracking_tag propagates instantly to all its products without rebuilding. Legacy products (no program_id) still use their baked affiliate_url via fallback. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>