Built Word Documents (.docx):
Spensara Overview (.docx)
Capability Assessment (.docx)
Brink POS Ingestion Analysis (.docx)
The Borg Ingestion Architecture (.docx)
Categories
Monitor Specs (29)
Operational monitoring, alerting, anomaly detection, and health specifications.
- backend/Kds.Ai.Data/MonitorSpecs/customer-churn-risk.md
- backend/Kds.Ai.Data/MonitorSpecs/customer-profiles.md
- backend/Kds.Ai.Data/MonitorSpecs/daily-forecast.md
- backend/Kds.Ai.Data/MonitorSpecs/demand-drivers.md
- backend/Kds.Ai.Data/MonitorSpecs/forecast-demand.md
- backend/Kds.Ai.Data/MonitorSpecs/forgotten-items.md
- backend/Kds.Ai.Data/MonitorSpecs/identify-high-value-customers.md
- backend/Kds.Ai.Data/MonitorSpecs/identify-plowhorse-items.md
- backend/Kds.Ai.Data/MonitorSpecs/identify-star-items.md
- backend/Kds.Ai.Data/MonitorSpecs/incorporate-seasonality.md
- backend/Kds.Ai.Data/MonitorSpecs/inventory-levels.md
- backend/Kds.Ai.Data/MonitorSpecs/item-recall-storm.md
- backend/Kds.Ai.Data/MonitorSpecs/kitchen-performance.md
- backend/Kds.Ai.Data/MonitorSpecs/large-order-wave.md
- backend/Kds.Ai.Data/MonitorSpecs/menu-item-profitability.md
- backend/Kds.Ai.Data/MonitorSpecs/monthly-forecast.md
- backend/Kds.Ai.Data/MonitorSpecs/optimal-pricing-adjustments.md
- backend/Kds.Ai.Data/MonitorSpecs/optimize-order-quantities.md
- backend/Kds.Ai.Data/MonitorSpecs/order-surge.md
- backend/Kds.Ai.Data/MonitorSpecs/prep-time.md
- backend/Kds.Ai.Data/MonitorSpecs/pricing-recommendations.md
- backend/Kds.Ai.Data/MonitorSpecs/priority-flood.md
- backend/Kds.Ai.Data/MonitorSpecs/seasonality-trends.md
- backend/Kds.Ai.Data/MonitorSpecs/segment-customers.md
- backend/Kds.Ai.Data/MonitorSpecs/segment-descriptions.md
- backend/Kds.Ai.Data/MonitorSpecs/slow-kitchen.md
- backend/Kds.Ai.Data/MonitorSpecs/station-bottleneck.md
- backend/Kds.Ai.Data/MonitorSpecs/waste-reduction.md
- backend/Kds.Ai.Data/MonitorSpecs/weekly-forecast.md
id: 019cb9fd-149c-7b4b-8d15-2e83794c8e47 name: Forgotten Items Monitor kind: Anomaly cron: 0 0 * * * * analysis_window: 1h comparison_periods: [1d, 7d]
Detect items that are stuck on the KDS screen and never progressing through the kitchen workflow -- they were created but never prepared or completed.
Known Tables & Columns
curated.kitchen_orders
guid(varchar, PK) - order identifierstore_guid(varchar) - which store/restaurantitems_count(int) - number of items in the orderdone(tinyint) - whether the order is completeis_deleted(tinyint) - soft delete flagcreate_time(int, unix timestamp) - when the order was created
curated.kitchen_order_items
guid(varchar, PK) - item identifierorder_guid(varchar, FK) - parent ordername(varchar) - menu item namecategory(varchar) - Grill, Fryer, Salads, Drinks, Dessertsdevice_id(int) - KDS station ID (1=Grill, 2=Fryer, 3=Salad, 4=Drinks, 5=Desserts)preparation_time(int, seconds, nullable) - expected prep timeis_deleted(tinyint) - soft delete flagcreate_time(int, unix timestamp) - when the item was created
curated.kitchen_item_status_events
guid(varchar, PK) - bump identifieritem_guid(varchar, FK) - parent itemstatus(tinyint) - 0=pending, 1=prepared, 2=doneprepared_local_time(int, unix timestamp, nullable) - when item was prepared (0 if never prepared)done_local_time(int, unix timestamp, nullable) - when item was completed (0 if never completed)is_deleted(tinyint) - soft delete flagcreate_time(int, unix timestamp) - when the bump record was created
Analysis Approach
- Query items created in the last {AnalysisWindow} from
curated.kitchen_order_items(is_deleted=0), joined withcurated.kitchen_item_status_eventsonitem_bumps.item_guid = items.guid. - Verify that the analysis window contains at least 20 items total. If not, call
emit_no_anomaly— the sample is too small. - Identify "stuck" items: those where
item_bumps.status = 0(still pending) AND the item was created more than 2x its expectedpreparation_timeago (or more than 15 minutes ago as a fallback). - Calculate the forgotten rate: the percentage of items in a time window that remain at status 0 long past their expected completion.
- Compare against the historical baseline. Normally, almost all items should progress to status 1 (prepared) and then status 2 (done). A forgotten rate above 15% is unusual; above 30% is a clear anomaly.
- Group by hour to find the window where the anomaly started.
- Check if the stuck items cluster on a specific station (
device_id) or are spread across all stations. A cluster on one station might indicate a station-specific issue; spread across all stations suggests a systemic problem.
Severity Guidance
- Low: 15-25% of items stuck beyond their expected prep time in a 1-hour window
- Medium: 25-40% of items stuck, or stuck items accumulating over multiple hours
- High: >40% of items stuck -- clear indication of items being forgotten and not prepared