   ╭──────◯─────╮
   │            │
   │     ●      │
   │            │
   ╰──────◯─────╯
          │
          │
          ▼
   ╭────────────╮
   │            │        retry
   │    Idle    │◄─────────────────────╮
   │            │                      │
   ╰──────┬─────╯                      │
    submit▼                            │
 ┌─────────────────────────────────────┼────────────────┐
 │ Processing                          │                │
 │                                     │                │
 │                                     │                │
 │ ╭────────────╮      ╭────────────╮  │ ╭────────────╮ │
 │ │            │      │            │  │ │            │ │
 │ │   parse    ├─────►│  validate  ├──┼►│  execute   │ │
 │ │            │      │            │  │ │            │ │
 │ ╰────────────╯      ╰────────────╯  │ ╰────────────╯ │
 │                                     │                │
 └────────┬───────────────────┬────────┼────────────────┘
          │               fail│        │
      done│                   │        │
          ▼                   ▼        │
   ╭────────────╮      ╭────────────╮  │
   │            │      │            │  │
   │  Complete  │      │   Error    ├──╯
   │            │      │            │
   ╰──────┬─────╯      ╰────────────╯
          │
          │
          ▼
   ╭──────◯─────╮
   │            │
   │     ◉      │
   │            │
   ╰──────◯─────╯
