- Use GACampaignID field + FIND(gad_campaignid) fallback in Leads Lake filter
- Add ConvLeadsLakeMes to campaign data for tracking discrepancy comparison
- Update ConvLeadsLakeMesFinal daily as snapshot of Airtable lead count
- Agent: ignore capping when capping=0 in advice
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- analyzer.py: add status_google (ENABLED/PAUSED) to analysis dict
- agent.py: instruct agent never to recommend reactivating an ENABLED campaign;
mention reactivation in consejo only when campaign is PAUSED
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- Sync shows campaign ID, name and status for new campaigns,
and field-level changes (before/after) for updated ones
- Agent now returns a 'consejo' field with a specific actionable
recommendation per campaign
- Summary table includes leads, margin and consejo per campaign
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>