Jocasa
Jocasa is a real-time analytics and quant platform I'm building on Robinhood Chain.
Two days before Jocasa's first commit, I said on a call that I wanted "a data pipeline that doesn't cost a bazillion dollars to scan." The first commit went in on September 25, and by 7:40 that morning Jocasa was reading Robinhood Chain's live feed in production. Agents wrote nearly all of its 1,682 commits in the first five days.
If you haven't run into it, Robinhood Chain is Robinhood's own blockchain. It makes a new block about every tenth of a second, and every transaction on it is public. That doesn't make it easy to read. The chain hands over encoded records, and a coin moving between two addresses might be a purchase, but it might also be a gift or someone stocking a pool that other people buy from. They look alike until something decodes them.
That's the part Jocasa does. It runs on its own servers and takes every transaction straight from the chain's live feed, about a second after the chain puts it in order. It checks that each message carries the chain's signature, decodes the transaction and keeps what it needs in Postgres. It can already tell buys and sells apart from gifts and pool deposits.
To keep costs down, every piece of chain data Jocasa pays for gets saved once, raw, before anything reads it, so nothing gets bought twice. I keep the raw copy because decoders get better, and a second read should be free.
The order engine runs only on a simulated chain. It passes its tests there, including reorgs, which is when the chain swaps out its most recent blocks. No real orders go out.
Getting the live feed running was quick. Jocasa was also pulling the whole chain into its own archive, starting from block zero, and that job stopped at block 39,232,998 three times. Each stop left a one-line error that named no cause.
The cause was two blocks with 16 transactions and not one event between them. In 39 million blocks, the archive had never pulled a page like that. The data provider leaves an empty list out of its answer entirely, and my code took that as an error. The fix went in on September 29, along with a rule that every stop names its cause. That evening a watchdog went in too, to restart the job whenever it goes quiet.
Jocasa is the first thing I've built with a live status page. It marks each piece of the build Live, Partly live, Cooking or Coming. "Cooking" is the page's word, and I'm keeping it. Claude refreshed the page on a timer while the build was moving, working from a standing instruction of mine: "you are free to publish whatever, whenever."
The instructions under that one line run close to 3,000 words. A sentence that says what happens has to be true that day, and the word "honest" is banned. When something pauses, the page says it paused, "never a nicer story." The refresh was also set to retire itself once 80% of the planned features were built, or after a full day with no new commit.
The capture below is from 6:44 p.m. on September 29, and it shows the history pull stopped.
Status page
This is the whole page as the person I'm building Jocasa for saw it on September 29. While the build was moving, it updated itself from the running system every two hours.

Stack
- Languages
- TypeScript
- Infrastructure
- Fly.io

Text mePaul Mikulskis
(617) 599-0775If this sounds like your situation, tell me what's going on.
This number usually answers in a minute or two, in my voice, and every conversation comes straight to me.
Text (617) 599-0775