From a6d91b289f833b67413301bfaea0e09a47ff8771 Mon Sep 17 00:00:00 2001 From: Claude Date: Sun, 6 Sep 2026 14:48:25 +0000 Subject: [PATCH] docs(plugin-approvals): recall's docblock summary line states the status, not an exclusive actor set MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The block opened "Withdraw a pending request (submitter only)" and its third paragraph stated the #3424 privileged override reaching a PENDING request. Both cannot be true; `overrideAdmits` settles it in the paragraph's favour by short-circuiting the non-submitter guard on a pending row. The summary line is what an editor hover and any single-line extraction show, so it is the half that gets read alone. The line now reads "Withdraw an undecided request." — status is the axis and the actor rules stay with the paragraphs that already state them correctly, the same structural move the `IApprovalService.recall` docstring makes on the spec side. Comment-only: no guard, branch or signature changed. It ships in the published `dist/index.d.ts`, so it takes a patch changeset rather than `skip-changeset`. Co-Authored-By: Claude Opus 5 Claude-Session: https://claude.ai/code/session_01XpTx2tbq3pZRYAdoGt6E6Y --- ...call-docblock-summary-line-drops-submitter-only.md | 11 +++++++++++ .../plugins/plugin-approvals/src/approval-service.ts | 2 +- 2 files changed, 12 insertions(+), 1 deletion(-) create mode 100644 .changeset/recall-docblock-summary-line-drops-submitter-only.md diff --git a/.changeset/recall-docblock-summary-line-drops-submitter-only.md b/.changeset/recall-docblock-summary-line-drops-submitter-only.md new file mode 100644 index 0000000000..f54f4186c5 --- /dev/null +++ b/.changeset/recall-docblock-summary-line-drops-submitter-only.md @@ -0,0 +1,11 @@ +--- +"@objectstack/plugin-approvals": patch +--- + +Documentation: `ApprovalService.recall`'s docblock summary line no longer claims the submitter is the only actor. + +The block opened with "Withdraw a pending request (submitter only)" and then, three paragraphs down, stated the #3424 privileged override correctly — "The #3424 privileged override reaches a PENDING request only (#12775, maintainer ruling 2026-09-02)". Both cannot be true, and the code settles it in the paragraph's favour: `overrideAdmits` short-circuits the non-submitter guard on a `pending` request. A reader who finishes the block is not misled, but the summary line is the one an editor shows on hover and the one any single-line extraction takes. + +The summary line now reads "Withdraw an undecided request." — status is the axis and the actor rules are left to the paragraphs that already state them correctly, the same structural move the `IApprovalService.recall` docstring makes on the spec side. + +Prose only: no guard, no branch and no signature changed. It earns a changeset rather than `skip-changeset` because `@objectstack/plugin-approvals` publishes `dist/`, and this text ships inside the published `dist/index.d.ts` for `ApprovalService.recall`. diff --git a/packages/plugins/plugin-approvals/src/approval-service.ts b/packages/plugins/plugin-approvals/src/approval-service.ts index 81d7226ff4..141b630052 100644 --- a/packages/plugins/plugin-approvals/src/approval-service.ts +++ b/packages/plugins/plugin-approvals/src/approval-service.ts @@ -3146,7 +3146,7 @@ export class ApprovalService implements IApprovalService { } /** - * Withdraw a pending request (submitter only). Finalises the row as + * Withdraw an undecided request. Finalises the row as * `recalled`, releases the record lock (keyed on pending status), mirrors * the status field when configured, and resumes the owning flow run down * the `reject` branch with `output.decision = 'recall'` — leaving the run