Spending controls, one-click feedback, and a steadier sign-in

A handful of changes landed this week that touch the parts of Batchrouter you reach for most: how you keep a lid on cost, how you tell us when something's off, and how steady your session feels on a flaky connection. There's also a quiet but significant upgrade under the hood that asks nothing of you. Everything below shipped to production on June 11, 2026 and is live now. Set a spending limit — and hear about it before you hit it For a usage-based product, the question that keeps you up at night is "how much is this going to cost me?" You can now answer it up front. From the Billing page, set a spending limit and turn on usage alerts, and Batchrouter holds the line for you. The limit is enforced where it actually matters — at submit time. When a new batch would push you past your cap, it's stopped before it runs, not discovered later on an invoice. The check is atomic, so two batches submitted at the same moment can't race each other past the number you set. Usage alerts warn you as you approach the line rather than after you've crossed it. They arrive by email, and — for teams that want to wire spend into their own tooling — as signed billing.* webhooks you can verify and act on programmatically. Set your limit high as a safety net or tight as a hard ceiling — either way, nothing routes past the number you choose, and you'll get a heads-up on the way there. Tell us what's broken without leaving the page There's now a Feedback button throughout your dashboard. Tap it to report a bug or float an idea right in a modal — attach a screenshot if it helps make the point — and it reaches us directly. No support portal, no switching tabs, no pasting URLs into an email. Under the hood it posts to a new public /v1/feedback endpoint, so the same channel is available if you'd rather send feedback straight from your own tools. A network blip no longer signs you out Sign-in got steadier. Before, a momentary hiccup while the app loaded your session — a single slow or failed call to /v1/sessions/current — could read as "signed out" and bounce you to the login screen. Now we hold your known-good session, retry quietly with backoff, and only surface a simple Try again if it's genuinely unreachable. A one-second network wobble shouldn't cost you your place, and now it doesn't. A sturdier account foundation — and you won't notice a thing The largest change in this release is the one you're least likely to see. We replaced the engine behind sign-up, login, and sessions with a rebuilt, standards-based authentication foundation. The part we cared about most: no forced re-login. Your existing password keeps working exactly as before — we migrated every credential in place, so there's no reset email, no "please sign in again," nothing on your to-do list. It's a stronger base for the account features we're building next, delivered with zero disruption today. If you already have an account, you don't need to lift a finger — your password, your sessions, and your workspace all carry over untouched. A plain-language summary of everything in this release is on our changelog.