Skip to content

Activity-Relay Directory 1.0.0

Choose a tag to compare

@thystra thystra released this 03 Sep 02:55
· 88 commits to master since this release
v1.0.0

Activity-Relay Directory 1.0.0

Status: first stable release.

Version identity

  • Git tag: v1.0.0
  • Application version: 1.0.0
  • Debian package version: 1.0.0-1
  • Accepted release-candidate baseline: 0.1.0-rc4
  • There is no final v0.1.0 tag.

Stable scope

Activity-Relay Directory 1.0.0 promotes the accepted RC4 runtime contract to
stable. The stable-preparation source delta is limited to release/version
metadata, documentation, and generalizing the exact-commit canonical artifact
workflow so it can build stable semantic versions. It does not change the Go
runtime behavior accepted during the RC soak.

The stable service provides the version 1 authenticated register, heartbeat,
and unregister lifecycle; bounded health projection; default-off public JSON
and human listings; local enrollment/moderation/pruning/retention/storage
administration; durable replay protection; SSRF-resistant actor/key
resolution; and SQLite-backed audited state.

Compatibility and schemas

  • Database schema: 7.
  • /v1/status schema: 3.
  • /v1/relays schema: 1.
  • Lifecycle protocol: version 1.
  • Go module floor: 1.26.0; release toolchain: 1.26.5.

The stable release preserves the RC migration contract. In-place database
downgrade is not supported. Before upgrading an existing deployment, take and
verify a standalone SQLite backup. To downgrade, restore the database backup
that matches the older binary rather than starting an older binary against a
newer schema.

Accepted live integration

The first stable release was accepted against the Activity-Relay 3.0 release
line using directory.argentwolf.org as a real Directory service. Acceptance
included:

  • successful schema-3 status consumption by Activity-Relay;
  • registration and public projection of both relay.argentwolf.org and
    relay2.argentwolf.org;
  • natural scheduler-driven heartbeat refresh from both relays after the daily
    interval;
  • healthy public projection throughout the soak;
  • authenticated removal of relay2 with durable local suppression;
  • confirmed absence of relay2 from /v1/relays while disabled; and
  • re-enable plus automatic scheduler registration returning relay2 to the
    healthy public listing.

The Compose lifecycle exercise also established an operator requirement for
Activity-Relay deployments that bind config.yml as a single file: an atomic
host-file replacement is not visible to an already-running container using the
old bind-mounted inode. Activity-Relay operator documentation carries the safe
container sequence; this is not a Directory protocol or persistence defect.

Default safety posture

Fresh installations remain deliberately inert until configured:

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

Package installation remains separate from service activation. The Debian
package does not enable or start the service automatically, and package removal
or purge does not delete SQLite state.

Release artifacts

Forgejo is authoritative. The canonical exact-commit workflow builds one
checksummed artifact set containing the Debian package, standalone binary,
CycloneDX SBOM, build metadata, and Docker-loadable linux/amd64 image archive.
The exact accepted bytes are promoted to the release surface; do not rebuild or
rename RC4 artifacts as 1.0.0.