Daily Hotel Flash: the new labor card

Generated 2026-07-17 by Woz

These are the three real cards rendered this morning from last night's Homebase timecards (business date 2026-07-16), exactly as they appear in the flash you and Alyssa receive. GMs and property teams do not see this card until you approve. The Houston Market Flash is untouched and carries no labor.

The cards, as rendered in today's email

Live HTML lifted verbatim from today's dry-run previews (same code path as the sent email). Not mockups.

HOURP · SpringHill Suites Medical Center/NRG · 190 rooms
Labor - 2026-07-16 (GM + ownership view)
Total $1,898 · 126.7h · HK/Lndry/Bkfst $1,172 = $11.96/occ room · Fixed $725 (labor_timecards, ~/revparpro dry-run BD 2026-07-16)
MTD labor $22,195 · var $8.26/occ room over 16 nights
preliminary · 17 of 17 cards unapproved
Source: labor_timecards (Homebase sync), business date 2026-07-16, rendered by today's dry-run of scripts/hourp-flash-email.mjs.
HOUZN · SpringHill Suites Northwest · 139 rooms
Labor - 2026-07-16 (GM + ownership view)
Total $2,158 · 140.5h · HK/Lndry/Bkfst $888 = $7.05/occ room · Fixed $1,271 (labor_timecards, ~/revparpro dry-run BD 2026-07-16)
MTD labor $20,811 · var $6.54/occ room over 16 nights
OT 1h · Juan R. 1.0hpreliminary · 17 of 17 cards unapproved
Source: labor_timecards (Homebase sync), business date 2026-07-16, rendered by today's dry-run of scripts/hourp-flash-email.mjs.
HOUUS · Holiday Inn Express Westchase · 127 rooms
Labor - 2026-07-16 (GM + ownership view)
Total $1,128 · 76.5h · HK/Lndry/Bkfst $626 = $9.34/occ room · Fixed $502 (labor_timecards, ~/revparpro dry-run BD 2026-07-16)
MTD labor $14,392 · var $7.97/occ room over 16 nights
preliminary · 11 of 11 cards unapproved
Source: labor_timecards (Homebase sync), business date 2026-07-16, rendered by today's dry-run of scripts/hourp-flash-email.mjs.

Anatomy: what each piece means

ElementMeaning and where it comes from
Total $ and hoursEvery Homebase timecard whose clock-in fell on the business date. Cost is Homebase's own wage-embedded timecard total; no wage rates are stored or shown per person.
HK/Lndry/Bkfst $/occ roomThe occupancy-variable cluster (housekeepers, housemen, inspectors, laundry, breakfast, bar) divided by rooms occupied that night. This is the per-line denominator rule from the 2026-06-12 labor session: variable labor compares on cost per occupied room, never as a lump.
Fixed $Everything scheduled regardless of occupancy: front desk, night audit, maintenance, security, admin/sales. Read it as $/night.
MTD lineMonth-to-date labor total plus the variable CPOR computed only over nights that also have a closed night audit (so the denominator is real). Shows nights covered so a sync gap is visible, never hidden.
OT 1h · Juan R. 1.0hAny overtime that night, with first name + last initial and hours, no dollars. Turns red OT 5.2h at 4h+ total.
preliminary · 17 of 17 cards unapprovedHomebase cards are approved at pay-period close, so nearly all cards are unapproved on any given morning; numbers can still move slightly. Quiet gray on purpose.
unmapped role: 'Banquets'Appears only if a new role string shows up in Homebase that the department map does not know yet; tells us to extend the map. (Illustrative example; all current roles are mapped.)
cost missing on 2 cardsAppears only if someone clocks in with no wage set in Homebase, which would understate the total. (Illustrative; zero such cards today.)

Knobs you can turn

Tell me any of these and I ship it the same day.

  1. Position in the email. Currently between the last-closed-night line and the projection card. Could move above the revenue boxes, or to the bottom.
  2. Department detail. One tap deeper would list each department's $ and hours (housekeeping $712, front desk $389, ...) instead of the two-bucket summary.
  3. OT thresholds. Red at 4h+ total today; could key off per-person OT, or dollars, or only weekly OT.
  4. MTD comparison. Could add vs-last-month or vs-same-month-LY once we have history (data starts 2026-06-08).
  5. A budget line. If you want labor vs a budget %, we would need a labor budget source; GL account mapping to the 51xx wage accounts is the natural one.
  6. Scheduled vs actual. labor_shifts already syncs 7 days forward; a "tomorrow: 9 scheduled, 64% OTB" line is buildable now.
  7. Wording and labels. "HK/Lndry/Bkfst", "Fixed", the GM + ownership view tag: all changeable.
Sources. All card numbers render from labor_timecards (Homebase sync, business date 2026-07-16) joined to labor_role_map and last night's night_audit_current rows, via the same getLabor() code path as the sent email (scripts/hourp-flash-email.mjs, commits 4a1c833 + 60ea500 + 6ece2c4); cards lifted verbatim from today's dry-run previews. Occupied-room denominators come from each hotel's closed night audit. Chips marked "illustrative" in the anatomy table did not fire today and are shown only to document the design. Rollout state: labor card renders only in the Ace + Alyssa copy of the daily flash (LABOR_REVIEW=true); GMs and property teams receive the flash without it; the Houston Market Flash is unchanged and carries no labor (reverted in commit a9ebc17, 2026-07-17).