previewRequest
Dry-run a request before submitting it (New Request flow): per requested resource, the approval it
would need, the approvers that resolve today, the policy verdicts it would hit, and whether
capacity or an existing assignment already rules it out. Takes the SAME RequestData as
createRequest, so a preview and the submit that follows read the identical selection.
Authorization is exactly createRequest's — the same request.create domain policy over the same
beneficiary, enforced in RequestService — so whoever may submit a request may preview it, and the
two can never drift apart. Writes nothing — no rows, no notifications — and never bypasses a
policy: a block is reported, not lifted.
previewRequest(
requestData: RequestData!
): RequestPreview!