stateDiagram-v2
  [*] --> UNRESOLVED
  state "Checking DNS" as CHECKING

  UNRESOLVED --> CHECKING : create/update/manual check
  MATCH --> CHECKING : re-check
  MISMATCH --> CHECKING : re-check
  CHECKING --> MATCH : expected IP ditemukan
  CHECKING --> MISMATCH : resolved IP berbeda
  CHECKING --> UNRESOLVED : DNS lookup gagal
