Thybrid: application, Slack card, booking and reminders

15 Nov 2026. Everything in the Slack column is live on prod (version 49d57722). Nothing is sent to the applicant by WhatsApp: the team presses wa.me buttons that open their own phone.

Live on prod Built, waiting for your word to deploy Dev only (dev.thybrid.com) Automatic (system)
flowchart TD
  A[Visitor on thybrid.com] --> B[Apply: 4 steps]
  B --> B1[1 Name and WhatsApp]
  B1 --> B2[2 Where they are right now: tick options]
  B2 --> B3[3 What do you do, and Why now]
  B3 --> B4[4 Email, timing, could you move on it, country]
  B3 -.-> W[Why now as tick options, text only under Something else]
  B4 --> S[Send application]

  S --> R[Row saved, review = pending]
  R --> E1[Email 01: We have got your application]
  R --> C[Slack card in thybrid-updates: tier, answers, buttons]

  C --> SLA{No try logged yet?}
  SLA -->|1h before target| P1[Ping under the card]
  SLA -->|Target 2h| P2[Overdue ping and channel alert]
  SLA -->|4h| P3[Last escalation to channel]

  C --> WA[Message on WhatsApp: wa.me, team's own phone]
  WA --> T{Log the try}
  C --> T
  T -->|Reached out| RO[Try logged]
  T -->|No answer| NA[Try logged]
  RO --> Q{Did he reply?}
  NA --> Q
  Q -->|He replied| Y[Reminders stop]
  Q -->|No reply yet| N[Reminders continue]
  Q -->|Not logged yet| RM[Reminder under the card at 6h, then 1 day, then 2 days]
  N --> RM
  RM -->|1 day and 2 day also go to the channel| Q

  C --> BS[Book scheduled call]
  C --> CN[Call now]
  BS --> M[Box: date and time, Bangkok]
  M --> BK
  CN -->|starts 5 min ahead| BK[Team booking route]
  BK --> H[Calendar picks the host, soft notes accepted and shown]
  H --> Z[Zoom room made]
  Z --> EI[Invite email with calendar file to applicant]
  Z --> BOOKED[Review = booked, card redrawn]
  BOOKED --> LW[Send link on WhatsApp: wa.me with time and join link]
  LW --> JL[Team sends it from their own phone]
  BOOKED --> E4[Email 04, 24 hours before]
  BOOKED --> HC[Host card at 65 min: Send your 1-hour WhatsApp]
  HC --> CALL[The call]
  CALL -->|didn't join| E5[Email 05: no-show follow-up]

  C --> NF[Not a fit]
  NF -->|Ready now| RS[Reason box, required]
  NF --> UN[10-minute undo window]
  RS --> UN
  UN -->|Undo| C
  UN -->|window ends| E2[Email 02: decline, email only]

  C --> TS[Mark as test]
  TS --> TAG[Card tagged TEST]
  R -.->|example.com, e2e ids| TAG

  classDef live fill:#2f5d3a,stroke:#6fbf84,color:#fff;
  classDef wait fill:#7a5a14,stroke:#e0b04a,color:#fff;
  classDef dev fill:#2c3e66,stroke:#7da2e8,color:#fff;
  classDef auto fill:#4a4a4a,stroke:#9a9a9a,color:#fff;
  class C,WA,T,RO,NA,Q,Y,N,RM,BS,CN,M,BK,H,BOOKED,LW,JL,NF,RS,UN,TS,TAG live;
  class W wait;
  class R,E1,E2,E4,E5,EI,Z,HC,SLA,P1,P2,P3,CALL auto;
  class A dev;