wiki_ghostguild/content/wiki/hub/reference/00-application-status-reference.md

4 KiB

Application Status Reference

Every application moves through a defined set of statuses as it progresses from submission to final outcome. This page documents each status, what it means, and the valid transitions between them.

Status Definitions

new -- Application recently submitted. This is the starting status for every application that comes in through the apply form.

waiting_first_round -- Waiting to be scheduled for a first-round interview. The application has been advanced from its initial review stage into the first-round interview stage but does not yet have an interview booked.

first_round_scheduled -- First-round interview has been scheduled. Set automatically when a Cal.com booking webhook matches the applicant's email, or when an admin manually changes the status.

needs_first_decision -- First round complete, awaiting a decision. Set automatically when an admin locks the first-round stage (all completed reviews must be locked and the minimum reviewer threshold met).

waiting_second_round -- Waiting to be scheduled for a second-round interview. The committee decided to advance the application past the first round into a second-round stage.

second_round_scheduled -- Second-round interview has been scheduled. Same mechanism as first round -- triggered by a Cal.com webhook match or manual status change.

needs_final_decision -- Second round complete, awaiting final decision. Set automatically when the final stage is locked.

accepted -- Application accepted into the cohort. Terminal status.

waitlist -- Application waitlisted. Can still transition to accepted or declined.

declined -- Application declined. Terminal status.

Valid Transitions

Each status can only move to specific next statuses. The system enforces these rules and rejects invalid transitions.

  • newwaiting_first_round, first_round_scheduled, declined
  • waiting_first_roundfirst_round_scheduled, waiting_second_round, declined
  • first_round_scheduledneeds_first_decision, waiting_first_round, declined
  • needs_first_decisionwaiting_second_round, accepted, waitlist, declined
  • waiting_second_roundsecond_round_scheduled, accepted, waitlist, declined
  • second_round_scheduledneeds_final_decision, waiting_second_round, declined
  • needs_final_decisionaccepted, waitlist, declined
  • accepted → (none -- terminal)
  • waitlistaccepted, declined
  • declined → (none -- terminal)

What Triggers Transitions

Automatic transitions:

  • Stage locking sets needs_first_decision or needs_final_decision depending on whether the locked stage is the final stage or a first-round stage.
  • Advancing to next stage sets waiting_first_round or waiting_second_round based on the next stage's type. If an interview is already scheduled for that round, the status skips directly to first_round_scheduled or second_round_scheduled.
  • Cal.com webhooks move an application from waiting_first_round to first_round_scheduled (or the second-round equivalent) when a booking is created.

Manual transitions:

  • Admins can change any application's status through the Applications tab, provided the transition is valid.
  • Bulk status changes are available for processing multiple applications at once.
  • The Decisions tab records accept, waitlist, or decline decisions and updates the status accordingly.

:::info An application can be declined from almost any active status. The waitlist status is the only non-terminal outcome status -- waitlisted applications can still be accepted or declined later. :::

Status Groups

The system groups statuses for filtering:

  • Active: new, waiting_first_round, first_round_scheduled, needs_first_decision, waiting_second_round, second_round_scheduled, needs_final_decision
  • Decision pending: needs_first_decision, needs_final_decision
  • Terminal: accepted, waitlist, declined