You'll notice BandBrain has zero user-facing refresh buttons. No "Re-sync Drive", no "Re-extract facts", no "Re-discover schema". This is intentional.
Why
Manual refresh buttons are a trap:
- If you have to click one, freshness isn't actually automatic
- They train people to NOT trust the data they see (always click to be sure)
- They're confusing — what does "re-sync" even mean? The folder? The file? The day_facts?
- They invite race conditions ("did Matt click it right after me?")
The architectural decision: BandBrain freshness is always automatic, via push from the source.
How automatic freshness works
Google Drive
- BandBrain registers a Drive
files.watchon every resource at ingestion - Drive pings BandBrain via webhook when the file is edited
- BandBrain re-runs discovery + indexing + day-facts extraction automatically
- Typical lag: < 1 minute from edit to fresh data
Dropbox
- BandBrain stores a delta cursor per tenant
- Dropbox sends a webhook when anything in watched folders changes
- BandBrain walks the delta and re-syncs changed files
- Lag: < 1 minute
- Postmark webhook → ingestion → background extract jobs
- Lag: < 30 seconds
What if something seems stale?
If you suspect data is stale and it shouldn't be:
- Check the Coverage matrix at /dashboard/coverage — shows what BandBrain knows per day
- Re-save the file in the source (Drive / Dropbox). That re-triggers the watch and freshness propagates.
- If still stale, email aaron@bandbrain.ai — there might be a stuck job or expired watch channel.
Watch channel expiration
Drive watch channels expire after ~24h. BandBrain auto-renews them via a background job (renew_watches) that runs every hour and refreshes anything expiring in the next 8h. So watches stay alive perpetually unless the job itself crashes (very rare).
The principle
BandBrain treats automatic data sync as a product invariant, not a feature. If freshness is broken, that's a bug; nobody should have to manually trigger it.