PostgreSQL is the source of truth; Redis shows cached myland:avail:* keys only. Use Refresh on each tab to reload shops and fetch the latest snapshot.
[]
[]
[]
Keys match myland:avail:{business_id}:{YYYY-MM-DD}. “All shops” scans myland:avail:* (dev-friendly).
{}
Structured option-only chat per shop (in-memory session). Uses the same Postgres calendar as the rest of the app. Pick a shop, start a session, then tap options. Reset chat clears the flow and returns to the main menu.