Skip to content

docs(product): auto-created peer DMs + name-addressed comms (RIG-2956) - #726

Merged
mattwilkinsonn merged 1 commit into
mainfrom
compass/rig-2956-peer-dm-name-addressed-comms
Aug 30, 2026
Merged

docs(product): auto-created peer DMs + name-addressed comms (RIG-2956)#726
mattwilkinsonn merged 1 commit into
mainfrom
compass/rig-2956-peer-dm-name-addressed-comms

Conversation

@rigel-mintaka

Copy link
Copy Markdown
Contributor

Design record for agent↔agent peer DMs, built on a channel+topic name-addressing cutover that extends the merged handle-addressing cutover (#698 / RIG-2880) from accounts to channels+topics — plus the RIG-2956 cross-channel reply-routing fix as its T0 lane.

The dogfood "peer never replied" symptom was a misdiagnosis: forensics proved the peer took its turn and replied, but the reply landed in its own home channel because the steer op carries no source channel and comms_post_message defaults an omitted channel to home. This record fixes that and builds auto-created two-way DMs on top.

Folds Matt's rulings R1–R8 as frozen decisions: names not ids (ids are a leak); deliver/steer carry the source channel+topic and a reply names both explicitly (no home default); reserved DM namespace with a server-enforced create-guard; DM = exactly two parties, a third member converts it to a named channel; GROUP_DM retired reserve-not-delete; create_topic gate everywhere; DMs born mandatory_subscription; comms_open_dm + comms_dm direct-send + spawn-time auto-open. Only two non-load-bearing deferrals remain open (cross-owner DMs, UI DM naming).

Ledger-impact: deferred to freeze (DL-new-1..7 applied when this record merges; DECISIONS.md untouched in this PR).

Spec-impact: none

Refs RIG-2956

Co-authored-by: Matt Wilkinson matt@rigel.build

@linear-code

linear-code Bot commented Aug 29, 2026

Copy link
Copy Markdown

RIG-2956

@github-actions

github-actions Bot commented Aug 29, 2026

Copy link
Copy Markdown

Compass engineering docs preview: https://compass-rig-2956-peer-dm-nam.compass-eng-docs.pages.dev

Deployed from compass/rig-2956-peer-dm-name-addressed-comms at 225107c.

Changed pages:

@rigel-mintaka
rigel-mintaka force-pushed the compass/rig-2956-peer-dm-name-addressed-comms branch from a7c6e87 to 6048d19 Compare August 29, 2026 23:04
Design record for agent↔agent peer DMs, built on a channel+topic **name-addressing cutover** that extends the merged handle-addressing cutover (#698 / RIG-2880) from accounts to channels+topics — plus the **RIG-2956 cross-channel reply-routing fix** as its T0 lane.

The dogfood "peer never replied" symptom was a misdiagnosis: forensics proved the peer took its turn and replied, but the reply landed in its own home channel because the steer op carries no source channel and `comms_post_message` defaults an omitted channel to home. This record fixes that and builds auto-created two-way DMs on top.

Folds Matt's rulings R1–R8 as frozen decisions: names not ids (ids are a leak); deliver/steer carry the source channel+topic and a reply names both explicitly (no home default); reserved DM namespace with a server-enforced create-guard; DM = exactly two parties, a third member converts it to a named channel; GROUP_DM retired reserve-not-delete; `create_topic` gate everywhere; DMs born `mandatory_subscription`; `comms_open_dm` + `comms_dm` direct-send + spawn-time auto-open. Only two non-load-bearing deferrals remain open (cross-owner DMs, UI DM naming).

Ledger-impact: deferred to freeze (DL-new-1..7 applied when this record merges; DECISIONS.md untouched in this PR).

Spec-impact: none

Refs RIG-2956

Co-authored-by: Matt Wilkinson <matt@rigel.build>
@rigel-mintaka
rigel-mintaka force-pushed the compass/rig-2956-peer-dm-name-addressed-comms branch from 6048d19 to 225107c Compare August 29, 2026 23:11
@mattwilkinsonn
mattwilkinsonn merged commit 774adb9 into main Aug 30, 2026
13 checks passed
@mattwilkinsonn
mattwilkinsonn deleted the compass/rig-2956-peer-dm-name-addressed-comms branch August 30, 2026 01:08
rigel-mintaka added a commit that referenced this pull request Aug 30, 2026
Freeze follow-up to #726 (merged 774adb9): the peer-DM record deferred its
ledger delta out of the design PR via Ledger-impact: deferred to freeze. This
applies the seven rows to docs/designs/DECISIONS.md now that the record is
frozen, and flips the record Status Draft -> Active.

- DL-283 name addressing (channels + topics by name; extends DL-269/DL-270)
- DL-284 reply routing (steer/deliver carry source channel+topic; RIG-2956 T0)
- DL-285 topic gate (create_topic required; amends DL-098 get-or-create)
- DL-286 DM path (OpenDM; generalizes DL-190)
- DL-287 DM namespace defense (reserved group create-guard)
- DL-288 DM shape (kind=DM; GROUP_DM retired reserve-not-delete)
- DL-289 scope (same-owner MVP)

Purely additive: no existing row superseded (DL-098 amended, stays Active;
GROUP_DM is a proto enum, not a ledger row). Record §Ledger delta renumbered
from DL-new-N placeholders to the applied DL-283..289.

Ledger-impact: applies DL-283..289 (peer-DM freeze delta)

Co-authored-by: Matt Wilkinson <matt@rigel.build>
mattwilkinsonn added a commit that referenced this pull request Aug 30, 2026
Freeze follow-up to #726 (merged 774adb9): the peer-DM record deferred its
ledger delta out of the design PR via Ledger-impact: deferred to freeze. This
applies the seven rows to docs/designs/DECISIONS.md now that the record is
frozen, and flips the record Status Draft -> Active.

- DL-283 name addressing (channels + topics by name; extends DL-269/DL-270)
- DL-284 reply routing (steer/deliver carry source channel+topic; RIG-2956 T0)
- DL-285 topic gate (create_topic required; amends DL-098 get-or-create)
- DL-286 DM path (OpenDM; generalizes DL-190)
- DL-287 DM namespace defense (reserved group create-guard)
- DL-288 DM shape (kind=DM; GROUP_DM retired reserve-not-delete)
- DL-289 scope (same-owner MVP)

Purely additive: no existing row superseded (DL-098 amended, stays Active;
GROUP_DM is a proto enum, not a ledger row). Record §Ledger delta renumbered
from DL-new-N placeholders to the applied DL-283..289.

Ledger-impact: applies DL-283..289 (peer-DM freeze delta)

Co-authored-by: Matt Wilkinson <matt@rigel.build>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants