# Multiplayer AI Infrastructure

> Source: <https://github.com/Abloatai/docs>
> Published: 2026-08-02 08:08:03+00:00

**The system, and the space around it.**

[Start here](/Abloatai/docs/blob/main/01-the-space.md) |
[The contract](/Abloatai/docs/blob/main/02-the-contract.md) |
[Evidence](/Abloatai/docs/blob/main/04-the-evidence.md) |
[Ontology](/Abloatai/docs/blob/main/domains/ontology-and-schema.md) |
[Learning path](/Abloatai/docs/blob/main/08-learning-path.md) |
[Ablo on GitHub](https://github.com/Abloatai/ablo)

Ablo is an authoritative transaction layer for shared application state. Every write goes through one typed API where authority, idempotency, conflicts, ordering and confirmation are enforced, and the customer's Postgres stays the source of truth.

This repository explains how that works as a systems problem: the guarantees it holds, what it currently costs to run, where the evidence stops, and the neighbouring fields whose properties Ablo inherits or declines.

Software used to have one writer. AI applications now have humans, agents, workflows and services acting concurrently, and coordinating them means answering questions a database transaction leaves open: who was allowed to act, which transition committed, what each observer may safely believe, and how the system recovers after partial failure.

Holding those answers at a high rate has a price in latency, throughput and cost. This pack states that price plainly, including the experiments that failed and the parts that remain unproven. Every file ends with what is still open.

Ablo coordinates changes to a **declared thing**: a document, an order, a button, an aircraft.
The thing has a name, typed fields, relations, and rules about who may change it and what
happens when two actors try at once. Without that declaration nothing else is expressible. You
cannot detect a conflict on a value whose identity you cannot name, scope authority to a thing
that has no shape, or write an audit line a person can read.

The vocabulary belongs to the organisation, never to Ablo. A task in a hospital is not a task in a factory, so there is no world ontology to adopt. Ablo takes the models a customer has already declared and adds a coordination overlay.

| Layer | Owner | Varies by organisation |
|---|---|---|
| The things and their fields | the customer | always |
| Identity, ownership, conflict disposition, tenancy, freshness | Ablo | never |

The nouns are never universal. The overlay always is. That is also what makes the physical direction the same mechanism rather than a new one: a lamp, a vehicle and an aircraft are declared things too, with two additions, a validity interval on every observation and commands that cannot be undone.

[domains/ontology-and-schema.md](/Abloatai/docs/blob/main/domains/ontology-and-schema.md) has the argument, the schema
doing the work, and where Palantir reached the same conclusion from the enterprise direction.

An hour, to get oriented:

[01-the-space.md](/Abloatai/docs/blob/main/01-the-space.md)what Ablo is claiming, and who else is in the space[02-the-contract.md](/Abloatai/docs/blob/main/02-the-contract.md)the vocabulary and the non-negotiable guarantees[03-the-system-today.md](/Abloatai/docs/blob/main/03-the-system-today.md)the path a write actually takes[04-the-evidence.md](/Abloatai/docs/blob/main/04-the-evidence.md)what has been measured, including what failed

Then, to go deep:

[05-why-it-is-hard.md](/Abloatai/docs/blob/main/05-why-it-is-hard.md)the systems difficulty, stated precisely[06-scale-regimes.md](/Abloatai/docs/blob/main/06-scale-regimes.md)why one million per second is three different targets[domains/](/Abloatai/docs/blob/main/domains/README.md)the nine technical fields, one file each[research/](/Abloatai/docs/blob/main/research/README.md)the agent-coordination literature, through July 2026[07-measuring-it.md](/Abloatai/docs/blob/main/07-measuring-it.md)how to read a performance claim, including ours

Alongside any of it:

[08-learning-path.md](/Abloatai/docs/blob/main/08-learning-path.md)a six-stage route through the space, with things to run[09-reading-list.md](/Abloatai/docs/blob/main/09-reading-list.md)every external source, with one line on why it matters[10-repo-map.md](/Abloatai/docs/blob/main/10-repo-map.md)where each concept lives in the codebase

Every fact has one home. The rule comes from the codebase, where a hand-maintained second copy of a type is a defect because nothing fails when the copies drift. Prose drifts the same way.

| Kind of fact | Lives in | Everywhere else |
|---|---|---|
| A defined term |
|

[04-the-evidence.md](/Abloatai/docs/blob/main/04-the-evidence.md)[09-reading-list.md](/Abloatai/docs/blob/main/09-reading-list.md)[domains/](/Abloatai/docs/blob/main/domains/README.md)[research/](/Abloatai/docs/blob/main/research/README.md)**Still open** section of the file that owns it[08-learning-path.md](/Abloatai/docs/blob/main/08-learning-path.md)indexes them[10-repo-map.md](/Abloatai/docs/blob/main/10-repo-map.md)The same idea explained twice is a bug. This pack replaced a single 1,300-line document that explained the neighbouring systems four separate times, which is what prompted the split.

Written 2026-08-01 as technical orientation rather than specification. Claims about neighbouring systems were checked against their current published documentation on that date, and the research files give publication status per item because most of that work is recent and still preprint.

Where this pack and the source code disagree, the source code wins, and the discrepancy is worth reporting.

The engine and the published SDKs live in [Abloatai/ablo](https://github.com/Abloatai/ablo).
Product documentation is at [docs.abloatai.com](https://docs.abloatai.com).
