Danvas
Danvas
DashboardSupportWelcome

👤 USER DOCS

User Guides

Getting Started

Getting StartedDashboard & OnboardingApp Settings

Tutorials

Tutorial: Setting Up Shift Tasks & ClosersTutorial: Managing Incidents in the InboxTutorial: Tracking Compliance & Sync StatusTutorial: Operational Workflows with the AI AssistantTutorial: Building & Deploying Custom Checklists

Daily Operations (Staff)

Shift Workspace & TasksService Day SetupDaily Line-UpStaff Service Day ReportsForms

Communication & Chat

Messages & AnnouncementsUnified Operations InboxAI Assistant

Manager & Admin Guides

Daily Line-Up SetupStaff SchedulingManaging LocationsNPS and Guest FeedbackCouponsContacts and Guest HistoryManager CloseoutsDaily Line-Up & ComplianceAnalyticsIncident ReportingWhistleblower Concerns & FeedbackAdmin Tools

⚙️ DEVELOPER DOCS

Getting Started

Getting StartedDevelopmentDeployment Guide

Architecture

Architecture OverviewExplanation: AI Integration & Tenant SecurityExplanation: Dynamic Forms Engine DesignExplanation: Compliance Ledger DesignExplanation: Live Sync & Data FreshnessData FlowArchitecture Decision Records

Core Domain

Core DomainDatabase ReferenceLocations DomainAuth & RBACScheduling DomainReports DomainIncidents DomainUnified Operations InboxLive Sync Data FreshnessToast Sync PipelineNotifications DomainCoupons and Guest NPSAudit Log & Compliance ArchitectureDesign Audit FindingsAI Chat IntegrationAnalytics & Tips Integration

Frontend

Frontend ArchitectureFormsLoading SkeletonsComponentsPWA & Offline ShellScreenshots

API Reference

API Reference

Endpoints

POS Sales APIOptimization Data APISchedule Shifts APIEmployee Export APIReports APIIncidents APIAI Chat APIPush Notifications APIWebhooks APICron API

Contributing

ContributingCode Examples

Security

Security & Compliance

Release Notes

What's New

Toast Sync Pipeline

Technical architecture of the Toast POS sync pipeline, sales metrics, and schedule variance

The Toast Sync Pipeline ingests sales transactions, labor timecards, order discounts, and menu items from Toast POS into PostgreSQL staging tables and canonical analytics fact tables.

Architecture & Runtime (ADR-0081 & Dagster)

Orchestration is owned by Dagster assets (dagster/canvas_forge/), which execute partition-native extracts, transforms, and data-quality checks on scheduled cadences:

LayerComponentResponsibility
Adapter@repo/toast/clientToast API client, OAuth authentication, HTTP retries
Data Platformdagster/ assetsPartition-native extraction into stg_toast_*, transformation to analytics.f_* marts
State Managementsync_state tableHigh-watermark timestamps, run duration, and circuit breaker state
Freshness & SLA@repo/operationsPer-source SLA evaluation and dashboard data freshness indicator

Authoritative Specification: For complete active writer assignments, database tables, and partition topologies, see docs/architecture/sync-pipeline-architecture.md.


Circuit Breakers & Resilience

Sync operations are protected by database-backed circuit breakers defined in @repo/data-sync/circuit-breaker:

  • Failure Threshold: Tripped after 3 consecutive failures.
  • Cooldown Period: 5 minutes cooldown before attempting a half-open retry.
  • Persistence: State is stored in the sync_state table per (source, locationId).

Pipeline Capabilities

1. Order & Sales Ingestion

  • Extract: Ingests completed checks, line items, service charges, and payments.
  • Classification: Classifies discounts, comps, and category allocations.
  • Storage: Persists to stg_toast_orders and populates analytics.f_order_item_fact.

2. Labor & Timecard Synchronization

  • Ingests employee time entries (shifts, breaks, clock-in/out timestamps).
  • Resolves job codes to canonical internal roles (@repo/schedules).
  • Feeds labor variance metrics comparing actual clock-in times against published rosters.

3. Data Quality & Freshness

  • Dagster DQ assets assert schema invariants and referential completeness.
  • Shift Console displays data freshness badges based on evaluated sync SLAs.

Live Sync Data Freshness

Technical architecture of the data freshness engine and sync status monitoring

Notifications Domain

Technical architecture of Slack and Web Push integrations

On this page

Architecture & Runtime (ADR-0081 & Dagster)Circuit Breakers & ResiliencePipeline Capabilities1. Order & Sales Ingestion2. Labor & Timecard Synchronization3. Data Quality & Freshness