Skip to content

fleet: rename "server" role label to "peer" for non-hub machines #1394

Closed

Description

@jeonghun-jj-lee

Important

Problem — ADR 0029 models a fleet where every machine runs its own engine and can serve. The enroll primitive only has --as-server (hub) and --join-token (client). Re-enrolling a laptop as a "server" works mechanically but reads wrong in the sidebar — "server" implies the canonical hub, not a peer with its own engine.
Approach — Introduce a peer role (or display label) for machines that serve their own engine but aren't the canonical hub. The hub stays "server"; a peer is a machine with serving capability and its own engine. The roster's server_mode field, the sidebar label, and the enroll verb (--as-peer) all need updating.

Acceptance Criteria

  • A new --as-peer flag on amico fleet enroll enrolls a machine with its own engine (not a thin client) that is NOT the canonical hub
  • The roster's server_mode field carries "peer" for these machines (or the display layer maps "server" to a friendlier label — design TBD)
  • The fleet sidebar shows a label that makes sense on a laptop (e.g. "Peer", "Node", or the machine's device_type — not "Server")
  • The extension's isFleetClientGuard allows engine spawn for peers (same as server)
  • Existing server and client roles are unaffected

Context

Source

Observed during fleet re-enrollment on the Mac Studio + MacBook Pro peer fleet.

Activity

  1. added a commit that references this issue on Sep 21, 2026
  2. added a commit that references this issue on Sep 23, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions