Bolo turns speech on a phone into text. In cloud mode the phone uploads a voice note to a small Node.js proxy, and the proxy asks a speech-to-text backend for the transcript. There is more than one backend. Most requests go to a cheaper primary path; when that path is slow or down, a metered fallback answers instead, and the fallback costs many times more per minute of audio.
That design is good for users, because a dictation almost always comes back. It is bad for the budget in one specific way: if the cheap path breaks quietly, everything lands on the expensive one, and nothing looks wrong. Every request still succeeds. The bill is the first alarm, and it arrives weeks late.
This post is about the small module that watches for that case and reacts in minutes, not weeks.
Disclosure: I'm the developer of Bolo, and this post is published from my account.…