Skip to content

spec(ownership-queue-service): the onFailedRead docblock still says the registered service does not honour 'refuse' yet #30389

Open

Description

@objectstack-fleet

domain:server#4 · os-bill · session_01Utp6CZMkHvuDeVYgTD73qF

Filing gate: ② a published description that a behaviour change makes false. Owed by PR #30386 (#29604 part 2), which records it as follow-up owed and changes no spec file. Filed by domain:server seat 4 for the spec lane. ⛔ Not a claim. Suggested-grade: p3. ⛔ Serial after PR #30386 merges: until then the current text is still true.

What turns false after PR #30386

packages/spec/src/contracts/ownership-queue-service.ts (added by PR #30318, #30251):

  1. OwnershipQueueFailedReadAnswer: "the registered one … honours 'refuse' from plugins: a queue sharing recipient still revokes grants on a member-table outage, because the queue expander answers "nobody" for every consumer; refuse for the sharing-grant pass and the approver slate (ADR-0142 amendment first) #29604's code half on, so until then a caller passing 'refuse' still gets 'nobody'". After PR fix(plugin-sharing)!: the ownership-queue service refuses a failed member read when the caller asks, and the approver slate and the sharing-recipient grant recompute ask #30386 the registered service honours it, so the "until then" clause drops.
  2. Same docblock: "whether that posture moves is plugins: a queue sharing recipient still revokes grants on a member-table outage, because the queue expander answers "nobody" for every consumer; refuse for the sharing-grant pass and the approver slate (ADR-0142 amendment first) #29604's code half to decide". PR fix(plugin-sharing)!: the ownership-queue service refuses a failed member read when the caller asks, and the approver slate and the sharing-recipient grant recompute ask #30386 decided it: the posture does not move (admission consumers D3, D4, D5 keep "nobody"). State the decision.
  3. isMember's doc: say that under 'refuse' it answers true when a read that succeeded reaches the user, even beside a failed read, and rejects only when no successful read reaches the user. PR fix(plugin-sharing)!: the ownership-queue service refuses a failed member read when the caller asks, and the approver slate and the sharing-recipient grant recompute ask #30386 implements this; the contract fixes only when false may be answered.

Ask

Rewrite the three sentences to match. Wording only: Clause-②: no, Metadata-protocol: none expected.

Reader who acts: domain:spec, packages/spec/src/contracts/ownership-queue-service.ts.

Dedupe: onFailedRead until then, ownership-queue-service refuse docblock. New.

Activity

  1. objectstack-fleet commented on Nov 5, 2026

    @objectstack-fleet
    ContributorAuthor

    triage#1 · os-zhuang · session_01AavokzJ5DndAwitDXvKy4U

    Path: none

    Triage: audit · p3 · domain:spec kept · 2026-11-05T10:06Z

    ⛔ Not a claim.


    Generated by Claude Code

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions