Skip to content

docs(designs): correct T5 — the owed surface and the offline premise (RIG-3532) - #1227

Open
rigel-mintaka wants to merge 1 commit into
compass-comms/rig3532-offline-redeliveryfrom
compass-comms/rig3532-amend-record
Open

rigel-mintaka wants to merge 1 commit into
compass-comms/rig3532-offline-redeliveryfrom
compass-comms/rig3532-amend-record

Conversation

@rigel-mintaka

@rigel-mintaka rigel-mintaka commented Sep 14, 2026

Copy link
Copy Markdown
Contributor

This PR is part of a stack containing 2 PRs:

  1. main
  2. test(e2e): prove offline messages redeliver on session start, durably (RIG-3532) #1225
  3. "docs(designs): correct T5 — the owed surface and the offline premise (RIG-3532)" (this PR)

The frozen coverage record (RIG-3473) prescribes a T5 mechanism the code
falsifies on two independent axes. Both were verified against the tree
before T5 was implemented (#1225); this amends the record so the next
reader is not misled, and records WHY the shipped test differs rather than
rewriting the task as if it had always said this.

  1. CountOwedMentions/ClearOwedMention are the wrong durable surface: a
    home-channel post never writes an owed_mentions row, because
    RecordOwedMention requires an @-mention AND an out-of-sweep-set agent,
    and InSweepSet is satisfied by the home-channel disjunct. A test
    asserting on that count is green while proving nothing. The surface the
    sweep actually consumes is UndeliveredMessages.
  2. Posting to a provisioned-but-not-started agent cannot leave a message
    owed: the post wakes the agent and fresh-starts it against the placement
    Provision recorded, and the waker is wired in the assembly the e2e
    fixture runs. Offline has to be a despawn boundary.

The durable-not-live-tail requirement the record states is unaffected and
is why the shipped test reads the store.

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

@linear-code

linear-code Bot commented Sep 14, 2026

Copy link
Copy Markdown

RIG-3532

@github-actions

github-actions Bot commented Sep 14, 2026

Copy link
Copy Markdown

Compass engineering docs preview: https://compass-comms-rig3532-amend.compass-eng-docs.pages.dev

Deployed from compass-comms/rig3532-amend-record at 570014c.

Changed pages:

…(RIG-3532)

The frozen coverage record (RIG-3473) prescribes a T5 mechanism the code
falsifies on two independent axes. Both were verified against the tree
before T5 was implemented (#1225); this amends the record so the next
reader is not misled, and records WHY the shipped test differs rather than
rewriting the task as if it had always said this.

1. `CountOwedMentions`/`ClearOwedMention` are the wrong durable surface: a
   home-channel post never writes an `owed_mentions` row, because
   `RecordOwedMention` requires an @-mention AND an out-of-sweep-set agent,
   and `InSweepSet` is satisfied by the home-channel disjunct. A test
   asserting on that count is green while proving nothing. The surface the
   sweep actually consumes is `UndeliveredMessages`.
2. Posting to a provisioned-but-not-started agent cannot leave a message
   owed: the post wakes the agent and fresh-starts it against the placement
   `Provision` recorded, and the waker is wired in the assembly the e2e
   fixture runs. Offline has to be a despawn boundary.

The durable-not-live-tail requirement the record states is unaffected and
is why the shipped test reads the store.

Co-authored-by: Matt Wilkinson <matt@rigel.build>
@rigel-mintaka
rigel-mintaka force-pushed the compass-comms/rig3532-amend-record branch from 6dcb807 to 570014c Compare September 14, 2026 02:45
@rigel-mintaka
rigel-mintaka marked this pull request as ready for review September 14, 2026 02:46
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.

1 participant