• v1.1.0 b446891e94

    Activity-Relay Directory 1.1.0
    All checks were successful
    Build / Container (push) Successful in 2m12s
    Debian Package / Debian package validation (push) Successful in 2m43s
    Test / Go 1.27rc2 (forward) (push) Successful in 3m13s
    Test / Go 1.26.5 (push) Successful in 3m30s
    Test / Go 1.26.0 (push) Successful in 3m31s
    Stable

    alan released this 2026-09-17 03:47:44 +00:00 | 46 commits to master since this release

    Signed by alan
    SSH key fingerprint: SHA256:yvtkLe2vkdG0Y1CCxra56JR6gjOJFURf52LUTVpWqPw

    Activity-Relay Directory 1.1.0

    Status: stable release.

    Version information

    • Git tag: v1.1.0
    • Application version: 1.1.0
    • Debian package version: 1.1.0-1
    • Accepted release candidate: v1.1.0-rc2
    • Previous stable release: v1.0.0

    What's new in 1.1

    Activity-Relay Directory 1.1 adds operator-controlled relay discovery,
    independent reachability checks, a richer V2 public API, and an improved
    human-facing directory.

    The accepted 1.1.0-rc2 behavior is being promoted to stable without runtime
    behavior changes. Stable 1.1.0 will be built and published as its own release;
    the published RC2 files and container image remain unchanged.

    Relay discovery and reachability

    Operators can add relays for discovery without treating them as registered
    lifecycle participants. Directory can separately check whether a relay actor is
    reachable and can record non-mutating inbox diagnostics.

    Heartbeat and reachability remain separate. A relay can therefore have an old
    or missing lifecycle heartbeat while still being reachable, or have a recent
    heartbeat while a later reachability check fails.

    Discovered-only relays must have a recent successful actor check to remain
    eligible for the public directory. Administrative suspension takes precedence
    over both registered and discovered relay eligibility.

    Human-facing pages

    The human-facing directory uses compact, responsive relay rows with clearer
    heartbeat and reachability information.

    Larger directories provide Previous and Next navigation so visitors can move
    through the listing in either direction. The human-facing pages use the same
    public relay information as the V2 public API while keeping detailed technical
    diagnostics out of the main listing.

    V1 Protocol and compatibility

    The authenticated V1 Protocol remains unchanged. Existing Activity-Relay
    clients continue to use the same registration, heartbeat, and unregister
    behavior.

    The /v1/relays public API also remains compatible with Activity-Relay
    Directory 1.0. Its wire format and established behavior are unchanged.

    Compatibility versions remain:

    • database schema: 8
    • /v1/status schema: 3
    • /v1/relays schema: 1
    • lifecycle protocol: version 1
    • Go module floor: 1.26.0

    V2 public API

    GET /v2/relays provides the richer 1.1 public relay listing. It is disabled by
    default along with the human-facing directory.

    The V2 public API can show heartbeat state, actor reachability, validated inbox
    information, and positive RFC 9421 evidence while keeping those observations
    separate. Discovered-only relays are not given artificial registration or
    heartbeat timestamps.

    This is version 2 of the public relay API; it does not introduce a V2 lifecycle
    protocol.

    Discovery provenance, operator notes and reasons, private probe errors, audit
    events, database identifiers, request signatures, client addresses, resolver
    details, and internal participation flags are not published.

    Package upgrades and removal

    Normal package upgrades and package removal preserve the Directory database and
    the dedicated activity-relay-directory service account. This allows the
    package to be upgraded or reinstalled without discarding retained Directory
    state.

    Explicit package purge is the destructive boundary: it removes the package's
    state directory and dedicated service account.

    /etc/activity-relay-directory/config.yml remains operator-owned. It is not a
    package conffile and is not deleted by the custom package-maintenance scripts.

    Upgrade notes

    Schema 8 adds the 1.1 discovery and reachability data. Existing installations
    upgrade in place.

    Before upgrading an existing installation, take and verify a standalone SQLite
    backup. In-place database downgrade is not supported; to return to an older
    release, restore the database backup made for that older version.

    Safe defaults

    A fresh installation remains inactive until an operator enables the features
    they want:

    • lifecycle routes are disabled;
    • enrollment is closed;
    • the public directory is disabled;
    • background reachability checks are disabled;
    • automatic soft pruning is disabled;
    • inactive-record retention is 0 (indefinite); and
    • administrator email is disabled.

    Enabling the public directory does not automatically enable lifecycle
    registration, reachability checks, pruning, retention, or any public
    state-changing route.

    Downloads