← Portal
// RESEARCH

I Built the System With No Addresses. Here Is What the Manifesto Left Out.

Part of a series on building Vinver, solo, from the manifold to the microcontroller. I published a paper arguing that computation should be addressed by what it does, not where it lives (Intent-Oriented Computing, Zenodo, 2026). The paper makes the argument and not the artifact; this post is the artifact, and the honest part the paper leaves out on purpose.


It is easy to write that seven systems collapse into one. I wrote exactly that, in a paper, with a table. Then I built the one, and the one taught me a sentence the paper was too clean to say.

Removing the address does not make the hard problems disappear. It moves them.

That is not a retraction. The thesis holds, and I am more convinced of it now that it runs than I was when it was a slide. But a manifesto gets to describe the destination. Building the thing makes you account for every function the old seven systems were quietly performing, because the day you delete them, you inherit their jobs. This is the accounting.

What the system actually is

Vinver has two halves. One is a mind built on geometry, the subject of the cognition posts in this series: a manifold where concepts have coordinates and thought is movement through them. The other is the nervous system that carries those thoughts between machines, and that is the half this post is about. The name is not decoration. CNS, the Central Nervous System, is the Fabric, an intent-oriented mesh.

You do not call an address. You emit a Pulse: an intent, a hierarchical name for a thing you want done, like vinver/math/evaluate. The Fabric resolves which Atom is alive and able to serve it, right now, wherever it runs. The caller never learns a hostname, a port, or a region. It names what it needs, and the Fabric finds the what.

The Fabric is more than 200,000 lines of Rust across twenty-some crates, with another twenty thousand lines of C in the edge firmware. It has two halves that are really one. An edge mesh of peers that works fully offline, each one running its own Atoms, talking to each other directly over the local network. And a cloud brain that handles orchestration, scheduling, and billing when you choose to connect to it. The same call resolves through a three-tier fallback without the caller knowing which tier answered: local process first, in under ten milliseconds; the local mesh next, under fifty on a LAN; the cloud last, in the range where a wide-area round trip lives. Cloud and edge are not two worlds with a bridge between them. They are one continuum, resolved at runtime.

The transport underneath all of it is Zenoh over QUIC, with mutual TLS as a property of the connection rather than a thing you bolt on. Payloads above a few kilobytes move by shared memory with zero copies when the peers are close enough. An ESP32 with a few hundred kilobytes of RAM speaks the same protocol as a cloud GPU. There is no translation layer between them, because there are no two worlds to translate.

What actually collapsed

The satisfying part is that the manifesto's promise is real where it counts.

Service discovery is gone as a separate system, because the invocation is the discovery. There is no Consul, no etcd, no DNS records to keep in sync. You publish an intent and subscribers are found by the protocol.

The message broker is gone, because publish and subscribe are native to the transport, not a Kafka cluster you operate beside it. The API gateway's version routing is gone, because the version lives inside the intent name, not in a perimeter box that rewrites URLs. The IoT bridge is gone, the one that used to translate between a microcontroller's protocol and the cloud's, because the microcontroller and the cloud were never speaking different protocols in the first place.

Transport security stopped being a sidecar. There is no service mesh injecting mTLS between known endpoints, because the endpoints are not known and the encryption is in the transport. That is four or five of the original seven systems, genuinely collapsed, and the relief of not operating them is exactly as real as the essay promised.

What did not collapse, and never could

Here is the sentence the manifesto skipped. The seven systems were not pure overhead. Each one was performing a function, and deleting the system does not delete the function. It hands the function to you, to provide yourself, inside the one protocol. That is the bill.

The load balancer was choosing between replicas. When a Pulse can be served by many live Atoms, something still has to choose, and "nearest neighbor by cosine" does not apply to machines. I did not want a static policy, so the routing layer is bio-inspired: it models routes the way a slime mold models food, reinforcing paths that carry successful traffic and letting unused ones decay. Routes get better with use and forget what stopped working. That is a feature I had to build, not one that came free with deleting the load balancer.

The circuit breaker was deciding when to give up. An address that never changes cannot fail gracefully, which is why the industry wrapped it in breakers and retries. An intent that resolves to a live peer has the opposite problem: it can always find someone, so it needs a deadline, or it will chase a slow answer forever. That is why requests carry a tier. Flash means a hundred milliseconds and never the cloud, for a sensor that cannot wait. Vault means up to fifteen seconds, post-quantum-signed and immutably audited, for a financial transaction that must not be lost. The tier is a budget, and the budget is the circuit breaker I had to reinvent, because "best available" is meaningless without "by when."

State did not collapse either, and this is the one that bites hardest. No address does not mean no CAP theorem. The fast layer of the system, the one that holds vitals and topology and routing hints, is eventually consistent and last-writer-wins, with microsecond reads. It is perfect for "where is tenant A right now" and catastrophic for "what is tenant A's balance," because two simultaneous writers to a balance lose money. So money lives in an ACID ledger and never touches the fast layer. That discipline is not enforced by the protocol. It is enforced by me, every time I decide where a piece of state belongs, and getting it wrong is silent until it is expensive.

Even authorization, which the gateway used to own, did not vanish. It moved into identity, into per-node certificates that rotate automatically, and into a rule I hold without exception: configuration is attack surface, so there are no command-line flags for anything security-relevant and no secrets in environment variables, only in files mounted read-only. The gateway's job did not disappear. It dissolved into the identity layer and the config discipline.

The hard part nobody warns you about

The single worst stretch was not any of the architecture. It was the first time a request went all the way through.

An intent protocol has a request half and a response half, and the response half is invisible until something actually completes a round trip. For a long time nothing did. The first end-to-end dispatch, a real query traveling from a UI, into the cloud brain, out to a node, into a handler, and a real answer all the way back, took fixing eight separate layers in sequence, each one hiding the next. The brain was not seeding its own routing table. A node was answering with the wrong envelope shape. A blocking call was panicking inside an async loop on every single query. None of these were visible on the request side, because the request side had always looked like it worked. You only learn whether the other half of your protocol exists the day a full loop closes, and that day is much later than you think.

What it does and does not yet prove

It dispatches, end to end, with real data. The edge mesh runs offline. The ESP32 and the GPU are demonstrably the same Fabric. Those are facts, not slides.

What I will not pretend: the headline scaling number, the one where a hundred sites of ten nodes reach half a million requests a second, is arithmetic. It is what linear mesh scaling implies, not what I have measured under load. The Fabric is built and it runs; it has not yet been driven at planetary scale, and I would rather you hear that from me than assume it.

The lesson the building taught the manifesto

A manifesto is allowed to say seven systems collapse into one. Having built the one, I would say it differently now. The seven functions do not collapse. They relocate. Discovery, decoupling, version routing, and protocol translation really do dissolve into the Fabric, and that is a large and permanent win. But balancing, failure, state consistency, and authorization do not dissolve. They move out of seven external systems that never agreed with each other and into one codebase with one identity model and one failure model. That consolidation is the actual prize. It is enormous, and it is not the same thing as "the problems went away."

Anyone who tells you that removing the address removes the work has not built it. The address was never the work. The address was where we hid the work, in seven places, so that no single system had to own it. Take the address away and the work comes home. The reason to do it anyway is that a single home, with one lock on the door and one story about what happens when things break, is a system you can actually reason about. Seven was never that.

This is the same move I make everywhere in this project, one layer down from the cognition posts. There, I put structure back into an embedding that the field had flattened into a lookup key. Here, I put meaning back into an address that the field had flattened into a location. Same conviction, different floor of the stack: the primitive we inherited is too poor for what we are building on top of it, and the fix is to make the primitive carry what it always should have.

Next I will go down to the smallest node on this Fabric, the microcontroller, and show what it takes to make a device with a few hundred kilobytes of RAM a first-class peer instead of a sensor on the end of a wire. Standard TLS wants thirty kilobytes of RAM and the device has two, so the authenticated encryption had to be rebuilt from scratch: forty-one bytes of overhead, no handshake, and anti-replay that survives losing power in the middle of a packet.

If you build distributed systems, Rust infrastructure, or edge runtimes, or you're hiring someone who has built all three into one Fabric, I want to hear from you. [email protected]

← Back to Portal