TL;DR: nothing exposed in the breach could move your money. The work that made that true happened months ago.
Jason Goldberg on the October 2026 Railway breach: why nothing exposed could move Senpi users' money, and what the team did in the first 24 hours.

Originally published on X on October 22, 2026. Read the original on X.
On Wednesday, October 21, Railway — the hosting provider that runs the machines your Senpi agent lives on — disclosed a security incident affecting all its customers. An unauthorized party accessed the systems where Railway stores customer environment variables, and for some customers obtained their decrypted contents. Railway paused all deployments while it investigated and asked every customer to rotate every secret they had stored there.
That's a serious event for any company running on Railway, and we treated it as one. But the question that matters to you is simple: could anything in that breach have touched your money on @senpi_ai or your wallet? The answer is no, and it's worth being precise about why.
What lives on Railway, and what doesn't
Each Senpi agent runs in its own isolated machine on Railway. The environment variables on that machine hold what the agent needs to do its job: its access to Senpi on your behalf, a key for its AI usage, and the internal credentials that connect the machine to our infrastructure. None of them can move money out of your wallet.
What is not there: your wallet keys. Your wallet's owner key never touches Senpi — not Railway, not our servers, not our databases. Your Senpi agent holds no key at all: it sends instructions to our backend, and signing happens inside Privy's enclave, never on Railway, where Privy — not Senpi — enforces that funds can only ever move between your own wallets. This isn't a configuration choice we made last week — it's how Senpi has been built since we rearchitected wallet security over the summer.
Here's the Senpi AI model in plain terms:
- You are the sole owner of your wallet. It's non-custodial. The deposit you make lands in a wallet that belongs to you.
- Your Senpi agent's ability to act is narrow and policy-bound. Your agent can place and manage trades inside the strategy you confirmed, in the sub-wallets you authorized. It cannot trade from your main Senpi wallet. It cannot act outside a strategy on its own. It cannot change who owns the wallet, and it cannot widen its own permissions.
- Only you can move money out. Withdrawals to any external wallet or exchange happen in the Senpi app, done by you, behind mandatory MFA — passkey, authenticator app, or SMS. There is no agent tool, no backend endpoint, and no credential anywhere in our stack that can send funds outside your Senpi account.
- Anything beyond the strategy, your Senpi AI must ask you first. Moving funds between your own Senpi wallets, closing a strategy, opening a position outside the plan: each one pauses for your approval, one action at a time.
That's the whole point of Senpi Enhanced AI Trading Security, designed with @privy_io op-secy and shipped a couple of months ago: your agent trades, only you can move the money (with MFA), and the compromise of any single layer — a hosting provider, a server, an agent machine — leaves your funds where they are.
What we did in the first 24 hours
Your funds were never in play. But those machines did hold other keys — your agent's access to Senpi, the key it uses for AI, and the credentials that connect it to our infrastructure — and a leaked key is still a leaked key, whatever it can or can't reach. So within hours of Railway's disclosure, our team:
- Checked for misuse. The first thing anyone does with a leaked key is use it — an AI key most of all, since it spends like cash — so we started there. No key belonging to a user without a running agent had been used at all since the disclosure, and activity across the fleet was flat. We found no sign of misuse.
- Rotated our own platform tokens with Railway as soon as they could be reissued.
- Built a fleet-wide credential rotation that replaces every per-machine secret — the agent's Senpi access, its AI key and its internal credentials — without interrupting running strategies or resetting anyone's AI credit balance. It rolls out machine by machine, verifies each one is healthy on its new credentials before the old ones are revoked, and can be reversed if a machine misbehaves.
- Added a paired-device audit to the rotation, so that nothing established during the exposure window can persist past it.
Rotation was gated on Railway restoring deployments, which happened in stages through Thursday. It's under way now, in order of risk, and we'll post when the sweep is done.
What Senpi users experienced
The incident did affect the product in one visible way: while Railway had deployments paused, new agents could not be provisioned for roughly a day and a half. If you signed up or tried to redeploy your agent on October 21–22 and saw an error, that was the cause, and provisioning is coming back as Railway's deployments recover. Existing agents and strategies kept running throughout. No trade, no position, and no balance was affected.
What you need to do
Nothing. There is no key to rotate, no password to change, no withdrawal to reverse.
Two reminders that always apply:
- MFA is required on every Senpi account, so every withdrawal sits behind it. A passkey or an authenticator app is the strongest option; if you're on SMS, it's worth switching.
- Senpi staff will never DM you first on X or Telegram, and no one from Senpi will ever ask for your password, seed phrase or MFA codes. If someone does, it isn't us. The only way to contact Senpi support is on the Senpi.ai website or in the official Senpi iOS or Android apps.
Why we can say this with confidence
The protections that held during this incident weren't built for this incident. We designed and shipped them months ago, so that no single party — a hosting provider, a server, or Senpi itself — can move money out of your wallets without you. This was the design's first real-world test, and it did what it was built to do.