Last updated: September 25, 2026

Status and Roadmap

No capability moves from limited to verified because its code exists. It moves when reproducible evidence from the environment the claim implies says so.

Is Decentralized.Host production-ready?

Decentralized.Host M1–M8 is implemented and verified on one macOS machine (record REF-MAC-A03, PASS). It is not yet a production release: the next gate is PV-1, reproducing that result on independent Linux machines, then across a LAN, under real failures, and over WAN and NAT.

Source: evidence/INDEX.md, docs/BLUEPRINT.md §12

Where it is

  1. M1–M8 implementation · done→
  2. Production validation (PV-1, P0) · now→
  3. Release candidate→
  4. Externally reproduced evidence→
  5. Production release

Every validation attempt

evidence/INDEX.md

Failed and infrastructure-failed attempts stay on the record next to the ones that superseded them.

RecordEnvironmentSourceOutcomeSignatureNotes
PV1-S1-A01Colima VM on macOSb3:5bde0c09… (digest/0)INFRA FAILUREno recordThe VM stopped before anything ran. Says nothing about the software.
PV1-S1-A02Linux container in a 2-vCPU Colima VMb3:5bde0c09… (digest/0)FAILVERIFIEDDiagnostic only. Found product defects D1 (an edge refused its own replica) and D2 (rolling updates dropped requests); both reproduced on macOS and were fixed with regression tests.
REF-MAC-A01macOS reference (Mac mini, i5-8500B, 8 GB)b3:73d7ee46… (digest/1)PASSVERIFIEDAll 13 steps passed, but digest/1 left pkg/evidence out of the source identity. Superseded.
REF-MAC-A02macOS reference, same machineb3:2832989a… (digest/2)FAILVERIFIEDA test race in the dead-holder regression test, and an M2 read timeout that refuted the first diagnosis of D4.
REF-MAC-A03macOS reference, same machineb3:2a23e1da… (digest/2)PASSVERIFIEDCurrent baseline. All 13 steps on the first attempt: 10/10 integration, 17/17 chaos with no skips, gossip join 20/20, conformance including Python, scripted TLS install.
PV1-S1-A03independent Linux VM (≥ 4 vCPU, 8 GB)must be b3:2a23e1da…PENDING—The first authoritative Linux run. An offline kit for Linux amd64 is published on the pv1-offline-kit branch.

The baseline: REF-MAC-A03

macOS reference environment: the development Mac mini (Intel i5-8500B, 6 cores, 8 GB, APFS), multi-process over loopback; Docker via Colima for the oom and postgres scenarios.

  • ✓build2s
  • ✓vet1s
  • ✓gofmt0s
  • ✓unit tests with -race13s
  • ✓gossip join × 2013s
  • ✓tools (Pebble)2s
  • ✓conformance drift check0s
  • ✓conformance — Go in process0s
  • ✓conformance — Go over stdio0s
  • ✓conformance — independent Python3s
  • ✓integration (M1–M7 + regressions)223s
  • ✓chaos (17 scenarios)397s
  • ✓scripted TLS install runbook10s

Excluded from this record: multi-machine behaviour (single machine, loopback transport); public ACME (Pebble only).

release ref-mac-a03 · source b3:2a23e1da…

Defects found by validation

Each fixed defect has a regression test that fails without the fix.

  • D1An edge host could not route to a replica it ran itself.
    fixed; tests/integration/edge_self_test.go
  • D2Rolling updates dropped requests (stop-before-start).
    fixed with make-before-break; tests/integration/rollout_test.go
  • D3A rescheduled replica could wait minutes on a dead artifact holder.
    fixed with failed-holder backoff; fetch_dead_holder_test.go
  • D4The D2 fallback could send a request to a dead host and hang it.
    fixed: draining endpoints need proof of life within 3 s; pkg/edge/pick_test.go
  • D5A revoking member kept the revoked host as a mesh peer for up to 2 s.
    fixed: committed changes refresh the member's mesh at once; M3
  • M1"host-mode offline-hold" ledger entry missing after an outage (2 of 3 runs on 2026-09-24).
    OPEN — not reproduced since; cause not established; diagnostics added
evidence/PV1-S1-HISTORY.md

PV-1: real infrastructure, in order

Each stage must pass before the next starts. WAN comes last. The development Mac is the reference only; it promotes nothing.

PV1-S1pending (A03)
Linux parity
one independent Linux VM or machine

moving from macOS to Linux changes no protocol or runtime behaviour

PV1-S2not started
LAN multi-machine
3 separate Linux machines on one LAN

identity, TLS bootstrap, WireGuard, gossip, storage replication, edge routing, failover — across real machine boundaries

PV1-S3not started
Partition and failure
same cluster

power-off, NIC down, real firewall partitions, disk-full on a real filesystem, latency, loss, reordering

PV1-S4not started
WAN and NAT
≥ 2 networks, at least one behind NAT

mesh through NAT, edge over WAN, failover under WAN latency

P0: required for a release candidate

P0-1Multi-machine and Linux validationM1–M7 integration and all 17 chaos scenarios on ≥ 5 Linux machines across ≥ 2 networks, including NAT.
P0-2Long-duration soak`dh chaos soak` ≥ 24 h under traffic; zero invariant violations; bounded memory and file descriptors; signed report.
P0-3Public ACMELet's Encrypt staging then production on a public domain; HTTP-01, DNS-01 with a real provider; renewal observed.
P0-4Measured performanceA benchmark harness that records hardware, version, configuration, sample size, method and timestamp.
P0-5Export and restore round tripAutomated export → fresh cluster → import → volume export → byte equality; plus volume snapshot/restore commands.
P0-6Process-runtime enforcementcgroup v2 limits on Linux, or policy that refuses limits it cannot enforce.
P0-7Automated browser testsHeadless tests for all 14 console screens, including accessibility checks.
P0-8Security hardeningFuzzing of parsers, external review of the trust model and TLS bootstrap, root key custody.
P0-9Packaging and upgradesSigned release artifacts, systemd units, rolling upgrades across versions.

P1: planned capability

  • › containerd runtime; gVisor and Firecracker behind the runtime interface
  • › Erasure-coded volumes
  • › HTTP/3 at the edge
  • › Conformance vectors for manifests, admission, bundles and mesh bindings
  • › did:dh owner identities validated in manifests
  • › Opt-in, self-hosted metrics export (never telemetry)
  • › Console TLS trust UX and finer-grained operator roles

Measured so far

One development machine, loopback. Indicative, not benchmarks.

  • Control-plane failover1.2–2.2 s to a new leader
    M5 test and chaos leader-crash (several runs)
  • Requests failed during leader loss0 of 204–240
    edge traffic every 20 ms during failover
  • Userspace WireGuard throughput~73 MiB/s
    pkg/mesh benchmark, loopback
  • Mesh RTT~1–2 ms
    host-measured HTTP round trips over WireGuard
  • Artifact fetch (9 MiB, 125 chunks)~45 ms
    host journal artifact-verified timing
  • Anti-entropy repair (26–28 objects)~3.7–4.0 s
    chaos storage-replica-loss
  • Conformance run (136 vectors)~60 ms in process
    dh-conformance

NOT MEASURED: scheduling rate, storage IOPS, replication throughput, agent CPU and memory overhead, edge requests per second, any multi-machine latency.