Specs de portfolio deixam de mutar cairu/feira compartilhados e passam a usar getMunicipality() alocado; testDatabaseLease ignora updatedAt volátil.
Adds electoral nuclei, leaderships, updates, and WhatsApp invite flows behind campaign auth, plus the consolidated schema migration that Vercel applies on deploy.