Alerts land in a stream and a topic
Zulip has no plain channels. Every message lives in a stream and, within that, a topic. You set both on the incoming webhook bot in Zulip, and Lineman posts there when a spend alert fires. A message can reach the right stream and still sit under a topic nobody has open, so check where the test message landed rather than trusting the confirmation.