Why this matters
In Go, an int's zero value is 0. If your enum uses 0 as a valid value, any variable of that enum type will default to that value even if never set, which can cause logic errors. Reserving 0 as an invalid or default state helps catch uninitialized usage.