Give each Ward collaboration cluster a harness-scoped stable identity #1592

Closed
opened 2026-07-28 08:35:48 +00:00 by coilysiren · 1 comment
Owner

Outcome

Give every Ward collaboration cluster one unique, stable, harness-scoped identity so multiple clusters can coexist and every brokered peer remains attached to the cluster that admitted it.

The canonical cluster shape is <harness>-<ab12>, for example codex-ab85. The suffix uses the established lowercase two-letter, two-digit dictatable-id alphabet.

Required behavior

  • Mint the cluster id once when the cluster is created.
  • Use the selected harness slug as the readable prefix.
  • Use the cluster id as the Docker Compose project identity and the primary Ward lifecycle key.
  • Propagate the cluster id to the broker, an optional director, directly attached peers, and nested broker-launched peers.
  • Keep repository, issue, role, workflow, harness, and dispatch-request metadata independently queryable when those integrations exist.
  • Do not encode an owner or repository into the cluster id.
  • Do not add a ward- prefix to the cluster id.
  • Permit multiple clusters for the same harness and multiple repository workflows for the same repository without collisions.
  • Make list, logs, status, stop, reap, and cleanup target the intended cluster and never cross cluster boundaries.

Acceptance criteria

  • Two clusters created with the same harness receive distinct ids matching <harness>-<ab12>.
  • The cluster id remains stable for the cluster lifetime.
  • A broker-only cluster, a director-backed cluster, and every attached peer share the same cluster label and Compose grouping.
  • Nested peers inherit the parent cluster id.
  • Repository metadata is optional and never required to resolve the cluster.
  • Stopping or reaping one cluster does not affect another.
  • Ward list and logs can filter or correlate by cluster id.
  • Automated tests protect naming, propagation, concurrent launch, lookup, and cleanup isolation.
  • A bounded manual check records expected Docker Desktop grouping without making UI rendering the authority contract.

Supersedes

This issue absorbs #1590 and supersedes the earlier ward-<suffix> naming suggestion in the issue discussion.

## Outcome Give every Ward collaboration cluster one unique, stable, harness-scoped identity so multiple clusters can coexist and every brokered peer remains attached to the cluster that admitted it. The canonical cluster shape is `<harness>-<ab12>`, for example `codex-ab85`. The suffix uses the established lowercase two-letter, two-digit dictatable-id alphabet. ## Required behavior * Mint the cluster id once when the cluster is created. * Use the selected harness slug as the readable prefix. * Use the cluster id as the Docker Compose project identity and the primary Ward lifecycle key. * Propagate the cluster id to the broker, an optional director, directly attached peers, and nested broker-launched peers. * Keep repository, issue, role, workflow, harness, and dispatch-request metadata independently queryable when those integrations exist. * Do not encode an owner or repository into the cluster id. * Do not add a `ward-` prefix to the cluster id. * Permit multiple clusters for the same harness and multiple repository workflows for the same repository without collisions. * Make list, logs, status, stop, reap, and cleanup target the intended cluster and never cross cluster boundaries. ## Acceptance criteria * Two clusters created with the same harness receive distinct ids matching `<harness>-<ab12>`. * The cluster id remains stable for the cluster lifetime. * A broker-only cluster, a director-backed cluster, and every attached peer share the same cluster label and Compose grouping. * Nested peers inherit the parent cluster id. * Repository metadata is optional and never required to resolve the cluster. * Stopping or reaping one cluster does not affect another. * Ward list and logs can filter or correlate by cluster id. * Automated tests protect naming, propagation, concurrent launch, lookup, and cleanup isolation. * A bounded manual check records expected Docker Desktop grouping without making UI rendering the authority contract. ## Related slices * #1635 launches and manages a broker-only cluster. * #1636 runs generic peers without a repository target. * #1637 mints peer identities automatically. * coilyco-flight-deck/agentic-os#851 attaches composed AOS agents. * #1626 delivered the underlying generic broker transport. * coilysiren/inbox#309 and coilysiren/inbox#310 describe the product use cases. ## Supersedes This issue absorbs #1590 and supersedes the earlier `ward-<suffix>` naming suggestion in the issue discussion.
Author
Owner

I think they should probably drop the per-repo naming, go for ward-{ suffix } and rely on the children for legibility

I think they should probably drop the per-repo naming, go for `ward-{ suffix }` and rely on the children for legibility
coilyco-ops changed title from warded compose cluster have static names... to Give each Ward Compose session a unique stable identity 2026-07-31 08:09:52 +00:00
coilyco-ops changed title from Give each Ward Compose session a unique stable identity to Give each Ward collaboration cluster a harness-scoped stable identity 2026-08-02 04:43:42 +00:00
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
coilyco-flight-deck/ward#1592
No description provided.