Tasks

Task Card Anatomy

← Back to Tasks

A task card is the rectangular cell that represents one task in the UI — on the Pulse dashboard, in the Operations Tasks list, and in the per-reservation detail view. Every field on the card surfaces a different piece of the underlying task row + its checklist items.

What's on the card

┌─────────────────────────────────────────────────────────────┐
│ Pre checkout guest reminder · AUTO · 19:00 ⚠ condition not met │  ← Eyebrow line
│ Castle&River Luxe-Vydrica · Johanna                          │  ← Reservation line
│                                                              │
│ Auto-fires at 19:00 today · sends checkout message to        │  ← Description
│ Johanna about reservation checkout details at 18/05/2026.    │
│                                                              │
│ Checklist:                                                   │
│  ☐ Auto-complete at 19:00 (when 1 condition met)            │  ← Checklist item
│                                                              │
│ [ Send now ] [ Snooze ] [ Postpone ] [ Reassign ]            │  ← Actions
└─────────────────────────────────────────────────────────────┘

The eyebrow line

The top line carries the most operator-critical metadata:

  • Task name (resolved from template, localised) — "Pre checkout guest reminder"
  • Flow markerAUTO means this card auto-resolves; absence means manual-only
  • Scheduled fire time19:00 for scheduled_time checklist items
  • Condition status⚠ condition not met if notifyOnNotMet is true and the condition currently fails

Before #214, the scheduled fire time was not shown — it lived only on the checklist item underneath. Operators had to expand the card or SQL-inspect to know when 19:00 was. After #214, the time is in the eyebrow line and visible without expansion.

The reservation line

Property + guest + check-in date — so you know which stay this is for without clicking through.

The description body

A sentence that explains what the task does in plain English. For auto-fire tasks, the sentence now (post-#214) starts with "Auto-fires at HH:MM today/tomorrow/YYYY-MM-DD · …" so the fire time is repeated in narrative form too.

Checklist items

Optional. Some tasks have manual steps the operator/cleaner must check off ("Confirmed door is locked", "Took photo of bedroom"). Auto-resolve tasks also have a special hidden-by-default checklist item that carries the schedule + condition.

Action buttons

  • Send now / Mark done (primary, role-dependent label)
  • Snooze — push due date forward
  • Postpone — push the scheduled fire time forward
  • Reassign — move to another role/teammate
  • Cancel — irreversible; see Task List

Why a card might not show what you expect

Symptom Likely cause
Time field is blank Pre-#214 regression — verify the deploy includes #214's commit
Card is Done but no message was sent Pre-#180 silent-skip — should now be Failed with reason
Condition status shows blocked even though condition looks fine Likely the canonical-row picker hitting the wrong guest row — see #260 and Send Check-in
Property name is null in the eyebrow #137 — property record was created without a name

  • #214 — scheduled fire time + condition status on the card.
  • #180 — silent-skip → failed instead of done.
  • #172dueDateTime date-only rendering family (predecessor of #214).
  • #137 — NULL propertyName.
Source: the FlatsBratislava operator manual.