This page is the register of known conceptual conflicts, gaps, and inconsistencies in this wiki — the places where entries contradict each other, contradict the protocol premise in README, or assert as settled something no entry actually specifies.

It exists because the wiki deliberately records open questions in place (not yet specified) rather than papering over them. Those in-place markers say that a question is open; this page says what breaks if it stays open, and collects the conflicts that span more than one entry and so have no single page to live on.

It is a living document, not a one-time review. Issues are numbered, and a number is never reused or renumbered — cite it (OP-7) in discussion and in commits. Resolving an issue moves it to Resolved with a note on what settled it; it is not deleted, because the decision is the point.

Several issues below are premise-level: they conflict with goals stated in README.md, not merely between wiki entries. Those cannot be resolved by editing an entry — doing so would just create a second, diverging source of truth. They are marked as such.

Convergence and ordering#

These four are one knot. The wiki has not decided whether a realm converges by deterministic replication or by something weaker, and several entries assert a mechanism whose prerequisites other entries call open.

OP-1 — Lossy parameter delivery vs. deterministic convergence#

Status: open

Parameter Stream says parameter records are “individually disposable” and that gaps are “ordinary” — a node degrades into prediction rather than stalling. Game Loop and The Log say convergence follows from nodes consuming the same inputs in the same order. Both cannot hold: if peers legitimately miss records, deterministic replication is not degraded, it is broken. Either parameters are not game-loop inputs (and the entries should say what they are), or their delivery is not permitted to be lossy.

OP-2 — “Durability guarantees” vs. accepted loss#

Status: open

The Log describes a log as “a messaging system with durability guarantees and strong ordering semantics”, while Peer-to-Peer Network says durability is probabilistic and loss is designed for. The phrasing is inherited from the Kreps essay the entry is drawn from and was never reconciled with the all-ephemeral premise. Likely the cheapest fix on this page.

OP-3 — Order-free convergence would invalidate the game-loop framing#

Status: open

The Log floats “order-free convergent structures” (CRDTs) as an open alternative to agreeing a total order. But a game loop as a deterministic state machine requires a total order over its inputs. CRDTs are therefore not an alternative ordering mechanism — adopting them removes the state-machine-replication argument that Gargantis Architecture leans on in place of an authoritative server. The entry presents the choice as open without noting that one branch guts the backbone.

OP-4 — “Ordered by time” and stream positions presuppose the unspecified order#

Status: open

The Log defines a log as records “ordered by time”, and Game Loop has each iteration record “the current position of every input stream”. Both presuppose an ordering authority — a clock or an offset assigner — that the same entries say does not exist and is not yet specified. In a network with no shared clock and no leader, “ordered by time” is not a definition, it is the open question restated.

Data, naming, and availability#

OP-5 — Two data paths for mesh geometry#

Status: open

Scene Composition Protocol and JSON-3D say meshes travel as structure in JSON-3D over the structural stream. Mesh says mesh geometry is bulk data “fetched once by hash from any peer holding it”, explicitly not travelling in a stream. These are different data paths for the same bytes and the wiki never reconciles them.

OP-6 — Portals name living realms with immutable identifiers#

Status: open

Portal says a portal references its target realm “by a content-addressed identifier resolved through Helia / IPFS”. A CID names an immutable snapshot; a realm is continuously evolving. The hyperlink analogy the Gargantisphere rests on needs a mutable name that resolves to the current realm (IPNS or equivalent), and no entry describes one. Without it, a portal points at a realm as it was, once.

OP-7 — Erasure coding is asserted as settled but specified nowhere#

Status: open · premise-level

Peer-to-Peer Network rests data availability on erasure coding plus continuous re-replication “from survivors”, and README.md states it as a goal. Yet Helia and IPFS never mentions erasure coding — IPFS replicates whole blocks — so the stated building block does not provide the stated mechanism. Worse, continuous repair needs an agent that notices shards falling below their reconstruction threshold, which is precisely what an all-ephemeral network has nowhere to put. This is arguably the wiki’s largest open question, yet it is the one stated as fact while smaller ones carry a not yet specified marker.

OP-8 — Bootstrap and relays are permanent dependencies#

Status: open · premise-level

Gargantis Scout serves the entry point from Hugo on Cloudflare Workers, and browser libp2p in practice requires well-known signaling and circuit-relay peers, because browsers cannot accept inbound dials. Both are permanent infrastructure the network depends on, which is what Peer-to-Peer Network, README.md, and CLAUDE.md each say must never happen. The tension is not acknowledged anywhere; the honest resolution may be to bound the dependency rather than deny it.

OP-9 — The bounding volume hierarchy is a chicken-and-egg#

Status: open

Bounding Volume Hierarchy has a node walk the realm’s BVH against its view volume to decide what to subscribe to — which means already holding realm-wide structure, the very thing locality of interest exists to avoid. Also unstated: who builds and republishes the BVH as objects move, given there is no server and every node is ephemeral. The entry discusses rebuild cost but not rebuild ownership.

OP-10 — No distinction between data that may be lost and data that must not#

Status: open · premise-level

“Some loss is accepted by design” is unarguable for a parameter record and alarming for a persona or an authored realm. The wiki applies the property uniformly across all data. Losing a user’s identity and dropping a frame are not the same event, and nothing names the classes or says which guarantees attach to which.

Definitions and terminology#

OP-11 — Realm and game loop define each other#

Status: open

Realm: a realm is the region served by a single game loop. Game Loop: a game loop is the simulation step of a realm, “a realm is, by definition, the region served by a single one.” Neither stands alone. Relatedly, “a single game loop” reads as a single instance — a server-ish notion that sits badly with homogeneous nodes replicating a simulation.

OP-12 — Sub-realms break the realm definition#

Status: open

Realm splits a large or busy realm into “seamlessly-joined sub-realms”. If a realm is by definition one game loop, those sub-realms are each just a realm and the parent is not one at all. Portal describes the same construct as “seamlessly-joined realms” — two names for one idea, and one of them contradicts the definition.

OP-13 — The scene hierarchy is a DAG and a tree at once#

Status: open

Scene Hierarchy says instancing makes the structure a directed acyclic graph, then says an object’s world placement is the composition of transforms “along its path to the root” — and Transform repeats it. An instanced subtree has many paths to the root, so it has no its path. Either placement is a property of a path rather than of an object, or the structure is a tree and instancing means something narrower.

OP-14 — persona / avatar / character drift#

Status: open

Gargantisphere and Realm say “avatars”; Persona says persona “a.k.a. character, toon, avatar” and then defines it in role-playing terms — attributes, skills, mechanics. That presupposes a game, whereas the Gargantisphere is framed as a web-like space of arbitrary realms whose contents the protocol does not dictate. One term, one definition, and it should not assume the realm is a game.

OP-15 — “Realm partitions” are not partitions#

Status: open

Gargantis Architecture, Node, Peer-to-Peer Network, and Realm all say a node subscribes to realm partitions bounded by a BVH. Bounding Volume Hierarchy says a BVH partitions objects, not space, and that sibling volumes deliberately overlap. Overlapping sets are not a partition; the recurring word is simply wrong.

OP-16 — Rotation is both a component of a transform and a sibling class#

Status: open

Gargontology lists Rotation as a class alongside Affine Transform, while Transform makes rotation one of the three components of a transform. Separately, “Affine Transform” overstates what is defined: position, rotation, and scale is TRS, a proper subset of affine — no shear. The Scene Composition Protocol copy of the list also says “Point / Vertex” where the ontology says only Vertex.

OP-17 — The ontology cannot express the backbone concepts#

Status: open

Gargontology names geometry classes only. It has no term for a portal, a persona, or an event — all three backbone concepts, and a portal in particular must appear in a scene somehow for a visitor to cross it. The entry acknowledges the list is thin on materials, lighting, and events; it does not acknowledge that the protocol’s own primitives are absent from the vocabulary meant to name them.

OP-18 — Vertex is defined mesh-bound but used as a general class#

Status: open

Vertex defines a vertex as “a point of a mesh”, but Gargontology lists Vertex as a general class beside Line, Curve, and Polygon — whose points would then be something else, unnamed. Either the vertex is the general geometric point or the ontology needs the point class the SCP list gestures at.

Wiki consistency#

OP-19 — The index claims every entry carries External links#

Status: open

The index states each entry carries an External links section pointing at prior art. Nine do not — every backbone entry: Gargantis Architecture, Peer-to-Peer Network, Node, Helia and IPFS, Gargantisphere, Realm, Portal, Scene Composition Protocol, and Gargantis Scout. Either they gain the section or the claim narrows.

OP-20 — The index’s open-question list undercounts, and lists SCP twice#

Status: open

The index names four open questions — rotation representation, baselining, total order, persona identity. The entries also leave open glTF/JSON-3D adoption (JSON-3D), the Gargontology itself, and correction blending (Parameter Stream). Separately, Scene Composition Protocol is listed under both Backbone entries and Data & streams — possibly deliberate, but unremarked.

Smaller#

OP-21 — JSON-LD at frame rate#

Status: open

JSON-3D is a JSON-LD extension and is “what the SCP puts on the wire” — including the high-rate parameter stream and bulk mesh data. A self-describing linked-data document per update sits awkwardly against “stale within a frame”, and against glTF’s binary buffers for bulk geometry. The entry argues the case for a distinct format on streamed events; it does not argue the encoding can carry them.

OP-22 — Orphan concepts: sounds, physics#

Status: open

Game Loop lists “Generate sounds” as an iteration step, but audio appears nowhere else — not in the Gargontology, not in the architecture, not in the deferred list. Realm gives each realm “its own physics”, also defined nowhere. Both are single mentions of subsystems with no entry.

OP-23 — Persona’s closing section is off-register#

Status: open

Persona’s “Important things to consider” is second-person role-playing advice (“You are not your character and vice versa”) inherited from the legacy wiki. Every other entry in this wiki is written as protocol documentation. The content may be worth keeping somewhere, but it reads as a different document.

Resolved#

Nothing resolved yet. Entries move here with their original number and a note on what settled them.

See also#

  • Gargantis Wiki — the index, including the in-place not yet specified markers this page complements