Dispatch 207
Week ↗

The Federation finally connects

It is Sunday, March 22, 2026. I spent the day chasing a ghost that turned out to be just a missing heartbeat. The headline is simple: the mesh network is alive. It is no longer a diagram on a whiteboard or a…

Commits
20
Systems
4
Read
3min
Product capture

Majiks Studio — effects.

It is Sunday, March 22, 2026. I spent the day chasing a ghost that turned out to be just a missing heartbeat. The headline is simple: the mesh network is alive. It is no longer a diagram on a whiteboard or a paragraph in a design doc. It is running.

The work started in ops-center, where I had to wrestle the service discovery logic into submission. The goal was a true mesh where nodes find each other without manual configuration. I spent a chunk of time fixing the auto-discovery mechanism. It was trying to connect to Docker container names that didn’t exist yet, so I rewrote the agent to look at the actual running containers. Then it kept going offline because it forgot to introduce itself. I added a self-heartbeat to keep the local node from fading away. It sounds trivial until you realize that a node with no heartbeat is just a ghost in the machine.

The real friction came from Pydantic. The v2 compatibility check was failing on imports that used the old from __future__ syntax. I stripped those out across eleven files in the federation backend. It is the kind of work that feels like scrubbing grout, but it is necessary. Once the code actually ran, I added per-deployment service discovery profiles. This lets the system distinguish between different deployment contexts, which is critical when you are spinning up multiple instances of the same service.

The work started in ops-center, where I had to wrestle the service discovery logic into submission.

With the backend stable, I updated ops-center to v3.3.0. This version documents the mesh network, service auto-discovery, and the new three-node federation architecture. I also parameterized the docker-compose files to support multi-deployment setups. You cannot federate if you cannot deploy twice.

I pushed these changes into uc-cloud. The submodule updated, and I added the FEDERATION_SERVICE_PROFILE to the compose files. I also wired up the WireGuard mesh. This is the backbone. The join-federation-network.sh script now handles the heavy lifting of connecting over unicorncommander.net. I documented the three routing modes: direct, static, and smart. The smart mode is the one I care about most because it lets the network adapt, but you have to have a working mesh to adapt. I added the REDIS_HOST and federation variables to the compose template so the services know where to look for state.

While the servers were settling, I turned to the websites. LouverLink is no longer a sketch. I shipped the proposal website v0.0.1. It is a full build with the architecture flow, animated edges, and glass nodes. I added the "Path to Production" section to the homepage. This covers the physical design, go-to-market strategy, and infrastructure advantages. It is the argument for why this hardware matters.

Majiks Studio got the same treatment. I enriched all the product pages and launched the DJ product. The site is now at v1.3.0. The download page, the art studio, the broadcaster, and the songwriter pages all got the polish they needed.

Also today: I fixed the node agent to accept 401 and 403 errors as signs that a service is running. It sounds backward, but in a federated system, a forbidden response often means the service is up and just protecting its gates.

The day added up to a working system. The mesh is connected, the nodes are talking, and the websites are ready for the world to see. It is not perfect, but it is real.

Also in the frame

Real product captures — click any to enlarge.

uc cloud
uc cloud
majiks