Woods Cross · Foodservice
REPLAY ·
About this replay · demo background

Same operating system as Cold case. This page replays a real day so the empty timers and people counts are not made up. The surface is the UI we would build. This fold is for the presenter.

State capture: 109,950 samples · Tue 11:32 AM → Sat 7:48 AM, zero gaps · one camera · eight drawn facings · location_id=3 · edge-camera-001 · this page replays Tue–Wed · people tracking runs 24h

States are frame-confirmed ground truth (labels_hotcase_3.json). Empty timers run on the event clock — from the cleanout or take that emptied the facing. Blocked never counts as empty or stocked. No claim means no confirmed ground truth. Low is not a confirmed empty. Overnight grill empty is the nightly cleanout — it stays on the case, not in the queue. Walk now = confirmed empty during selling hours (headline + queue). Soon = running low during selling hours (warn queue, not in the headline). No walk = scheduled cleanout, overnight empty, blocked, or no claim. The foil tray at 6:23 PM is the walk-now empty during selling hours. Warmer top cleared at 7:20 PM; the camera cannot prove waste — do not say “thrown away.”

People are entity_visits on zone hotcase_conversion (zone 9), the Foodservice area’s conversion role. The per-moment window is that day so far — store-local midnight to the selected moment. All people windows are calendar days, midnight to midnight, America/Denver (24h store, no open clip). Bands match this location’s Foodservice area_config: detection 2s, presence 5s, conversion 60s, long 120s. Flicker is under 2s and ignored; Passing is 2–5s; Walked away is 5–60s; Converted is 60s+; Long is 120s+. Walked away is Joey’s phrase for the Abandoned dwell band. Walked away and Converted are configured dwell proxies, not proof that a person did or did not take a product. Product-in-hand VLM verification is not built. Staff are not filtered. A door in that corner adds walk-bys. Tracking zones are larger than the drawn facings, so people and facing state are two measurements. People tracking runs around the clock — beyond the labeled state capture. The people panel and the time-to-walk-away histogram are day so far: store-local midnight to the selected moment, every number a real entity_visits query per moment. In production this is the live panel, and it reads as the full day in history. The by-hour chart dims the hours after the moment. Full-day totals for reference: Tue 68 walked away / 21 Converted (7 while a facing sat empty), Wed 83 / 21 (16). State-label coverage: the grills and the foil tray have ground truth for both full days (the multi-day label extension); warmer labels end Wed 7:58 AM, and a blank ribbon means unlabeled, not stocked. The Wed non-grill states on the afternoon moments are read from the saved 10-minute frames: condiments stocked all day, and the foil tray emptied between 1:15 and 1:25 PM — a sell-out, hours before the cleanout — then was reloaded by 5:46 PM. That is about 4h 20m empty during selling hours, the largest walk-now miss in the replay. The warmer stays no claim: wrapped items on that shelf are below what this camera can confirm at frame resolution. Outside this replay, the labels also confirm a 20h foil sell-out the next day (Thu 7:37 AM → Fri 3:50 AM — Thursday's entire selling day). “Visited while a facing was empty” is walked-away visits (5–60s) whose start falls inside a labeled confirmed-empty span, across all labeled facings on both full days; it is a subset of Walked away, not all tracked visits, and it is not limited to selling hours. It says a facing was empty during the visit. It does not say the person wanted that product; the customer reads the impact. Staff windows (cleanouts, reloads) are unlabeled and do NOT count. Basis correction (2026-08-25): earlier drafts cited Tue 8 · Wed 11 — those used the chart's ribbon spans, which run to the 2:44 AM reload, so Wed's 11 counted 8 reload-crew visits inside the unlabeled 2:34–2:44 AM staff window. The strict label basis gives Tue 7 · Wed 16 (Wed grew because the afternoon foil sell-out and the evening post-cleanout grills are now labeled). The cleanout → reload grill window dominates empty time, overnight empty there is expected, and the 2 AM spike in the by-hour chart is the reload crew. The cleanout time drifts day to day — Tue 5:11 PM, Wed ~3:25 PM, and 2:40 PM–5:10 PM across the five observed days — so never assume a schedule. Median dwell in the Walked away band: Tue 16s, Wed 18s. Inside the original labeled window there are 164 tracked visits — 63 Walked away (10 while a facing sat empty on the strict basis), 22 Converted, 22 Passing (2–5s), and 57 Flicker (under 2s).

Build readiness. Artifact is a POC. Item-lane counts are a shipped primitive. Facing state, empty duration, reload, and the hourly overlay are a labeled prototype. Dwell bands and visited-while-empty overlap are derivable.

The case now
4 fixtures · 8 scored facings
stocked empty · confirmed low · running down view blocked · not empty no claim

Empty time so far · per facing

Running totals up to this moment. Grill time after 5:11 PM is the nightly cleanout.

Walked away · today
5–60s dwell band · since 12 AM
Reload
10 min
2:34 AM bare → 2:44 AM full
Day so far · people at the case
People at the case · i

Real counts, midnight to this moment. In production this panel is the live day so far, and it reads as the full day when you look at history. “Visited while a facing was empty” counts only starts inside confirmed-empty spans — the reload crew and cleanout windows do not count. It says a facing was empty, not that the person wanted it.

Time to walk away · day so far i

By hour · midnight to midnight
facing empty walked away · per hour no shelf data after this moment · dimmed