Releases
Atlas releases are versioned, signed and attested as a unit: one tag produces the binaries, checksums, signatures, provenance and SBOMs for every target, published together. This page describes the release discipline; the artifacts themselves live behind Downloads.
Current release
| Release line | Status | Notes |
|---|---|---|
| 3.0.0 | current | The release line this documentation describes: wire 5 · relay 2 · seal 2 · pairing 3 · adapter 1 · report 2 · api 1. A major, because the wire changed; see the 3.0.0 notes below. Supply-chain attestation (signatures, SLSA L3 provenance, SBOMs) covers every artifact. |
| 2.0.0 | previous major | Wire 4. Its documentation stays readable at /docs/2.0.0, and it receives security fixes for the support window on Versioning. |
| 1.0.0 | superseded | Wire 3. Its documentation stays readable at /docs/1.0.0. |
Every build up to wire 3 carries the single label 1.0.0; 2.0.0 and every later build are numbered under the rules on the Versioning page. Evaluation deployments are expected to track the current line.
3.0.0
| Item | 3.0.0 |
|---|---|
| Contracts | wire 5 (was 4) · relay 2 · seal 2 · pairing 3 · adapter 1 · report 2 · api 1 |
| Update class | Required: upgrade the fleet as a deployment, relays first. A node accepts wire 5 only; the relay servers accept 5 and 4, so the hosted relays serve a fleet before and after its upgrade. |
| Configuration | Added: [[link]] bearer (optional; without it the kind is derived from the link). Nothing deprecated or removed; a 2.0.0 file passes atlasd config check unchanged. |
| Android app | Nexus Atlas for Android 3.0.0, built on the 3.0.0 core. |
- Advert extensions. The signed link-state advert gains an extension area: a map of short keys to values, signed with the rest of the advert. A node keeps every entry it receives, known or not, so an entry it does not know still verifies at the next hop, and it reads only the keys it knows. From wire 5 on, a new advert field goes into the extension area and does not bump the wire; a new top-level field or a changed meaning still does (Versioning, wire versions).
- Bearer kinds, and a one-line summary per peer. The first extension: each node advertises the kind of each of its links (Wi-Fi, Cellular, Ethernet, radio, Bluetooth, mesh, relay, satellite) and whether it is alive.
[[link]] bearer = "…"overrides the derivation. The dashboard,atlasd statusand the stats API show it as one line per peer, such asphone01: Wi-Fi + Cellular · direct over Wi-Fi; the API carrieslinks[].bearer,members[].bearersandmembers[].direct_over(API reference). - Link addresses on the Topology. An optional "addresses" toggle beside the underlying links shows each link's local and remote endpoints as this node sees them now, and follows them when they change, for example as a drone moves between cells.
- The Overview map pane animates open and shut on the "Map" button instead of appearing in one frame.
- Nexus Atlas for Android 3.0.0. Runs on the 3.0.0 core and reports Wi-Fi or Cellular for each of its links. The Activity screen gains a Material level drop-down and a toggle to wrap or unwrap long lines.
2.0.0
| Item | 2.0.0 |
|---|---|
| Contracts | wire 4 (was 3) · relay 2 · seal 2 · pairing 3 · adapter 1 · report 2 · api 1 |
| Update class | Required: upgrade the fleet as a deployment. A node accepts wire 4 only; the relay servers accept 4 and 3, so the hosted relays serve a fleet before and after its upgrade. |
| Configuration | Added: [[peer.interconnect.route]] prefix and [routing] install_learned_routes (default true). Nothing deprecated or removed; a 1.0.0 file passes atlasd config check unchanged. |
| Android app | Nexus Atlas for Android 2.0.0, built on the 2.0.0 core: the app's major follows the core's. |
- Atlas Interconnect, two modes on one seam. Mapped mode gives each chosen host of the other network an address inside this network's own subnet; prefix mode routes whole prefixes of the other network with their real addresses, through the seam host, with nothing rewritten. Members install the learned routes on their tunnel interface. Concept · Guide.
- Relay discovery that survives a failed map fetch. A node keeps the last signed relay map it verified and attaches from it when the control plane cannot be reached; discovery retries after 5 s, 15 s and 60 s, then every five minutes, and a link attached from the cached map moves only when its relay leaves the map.
- Absent peers, and every member in the stats. A peer counts as absent only when no link of this node reaches it and no member routes to it; a relay link with nobody expected on it no longer counts against the links.
/api/statscarriesmembers[]: every node this one knows of, with its state (present, through others, absent), hops, next hop, path cost, links, best RTT and last seen. nexus-atlas-relay check. Validates a relay configuration without binding: parses it, reads the private key, checks every address and allowed key, and prints a one-line summary with the relay's public key, the value clients pin asrelay_pubkey.- The host page.
GET /api/hostonatlasd webdescribes the machine and every daemon instance on it (host name, kernel, configuration and snapshot directories, each instance's state, uptime, release, unit and relay pins), behind the dashboard's sign-in. - Mesh views in the dashboard. A member strip on the overview, the Spokes map, Full Topology as one graph of every instance on the host, Timeline rails per neighbour and link, path cards in Mesh & Routes, Fleet tiles per member, and the host page.
- Nexus Atlas for Android 2.0.0. Runs on the 2.0.0 core, installs the routes learned through Interconnect prefix mode, keeps the relay map across restarts, and opens the Activity log full screen with search and filters.
What every release contains
- Static
atlasdbinaries per target (x86_64 and aarch64 Linux), each with an embedded dependency manifest. .sha256checksums, cosign keyless signatures with certificates, SLSA L3 provenance, and CycloneDX SBOMs — the full set the verification recipe consumes.- Release notes covering: features and changes, configuration keys added or changed, protocol version implications, any accepted dependency advisories with rationale, and known issues.
Compatibility rules you must plan around
- Protocol version is checked, not negotiated. Every packet carries a protocol version byte; mixed versions fail loudly at decode. Upgrade a deployment as a deployment — release notes flag every protocol-version bump prominently, and mixed-version operation across a bump is not a supported state.
- Configuration is stable-by-schema. The config surface is defined by the daemon's own generated schema (the reference regenerates from it). Deprecated keys keep working with warnings for at least one release line before removal;
atlasd config checkis the authority on any given binary. - Wire-compatible opt-ins stay opt-in. Features documented as default-off (traversal, transport classes) do not change the wire behavior of nodes that leave them off.
Release notes & notifications
Release notes are published with each release under Downloads. Organisations with approved access are notified of new releases and of any security-relevant advisory affecting a shipped release at the contact on their access request.
Verifying is not optional ceremony: run the verification recipe against every artifact you ingest, and pin the identity strings from the release page in your scripts. A release you didn't verify is a release you're trusting your download path with.