Skip to main content

ReviewerTask

Reviewer-facing projection of a ReviewItem (H8). Carries ONLY the caller's own assigned step(s), the current stage status, and the reason requirements — NEVER effective_policy, policy_lineage, other reviewers' steps, events, or fallback routing. Nullable item-context signals may be present; they are not policy. The reviewer simply never receives the policy.

type ReviewerTask {
campaign: ReviewItemCampaignRef
created_at: DateTimeISO
entitlement: ReviewEntitlementRef
grant: ReviewGrantRef
grant_id: ID!
grant_type: String
id: ID!
last_reviewed_at: DateTimeISO
last_used_at: DateTimeISO
my_steps: [ReviewerTaskStep!]!
recommendation: String
require_keep_reason: Boolean!
require_revoke_reason: Boolean!
resource: ReviewResourceRef
revoke_blocked: Boolean!
risk_level: Int
stage_status: ReviewerTaskStageStatus
status: ReviewItemStatus!
subject: ReviewSubject
updated_at: DateTimeISO
}

Fields

ReviewerTask.campaign ● ReviewItemCampaignRef object

ReviewerTask.created_at ● DateTimeISO scalar

ReviewerTask.entitlement ● ReviewEntitlementRef object

ReviewerTask.grant ● ReviewGrantRef object

ReviewerTask.grant_id ● ID! non-null scalar

ReviewerTask.grant_type ● String scalar

ReviewerTask.id ● ID! non-null scalar

ReviewerTask.last_reviewed_at ● DateTimeISO scalar

Decision-context signal from the immutable access snapshot when available; null until a producer captures it.

ReviewerTask.last_used_at ● DateTimeISO scalar

Decision-context signal from the immutable access snapshot when available; currently null until assigned_resources captures it.

ReviewerTask.my_steps ● [ReviewerTaskStep!]! non-null object

Only the caller's OWN assigned step(s) — never other reviewers' steps.

ReviewerTask.recommendation ● String scalar

Optional automated recommendation text; null unless a future recommendation hook writes one.

ReviewerTask.require_keep_reason ● Boolean! non-null scalar

ReviewerTask.require_revoke_reason ● Boolean! non-null scalar

ReviewerTask.resource ● ReviewResourceRef object

ReviewerTask.revoke_blocked ● Boolean! non-null scalar

Derived in the service (effectiveReapplicationRisk === reapplicable && source not addressed): a revoke decision on this task would be rejected REVOKE_BLOCKED until an admin marks the source addressed. A single boolean — H8: no risk/remediation internals cross the reviewer seam.

ReviewerTask.risk_level ● Int scalar

ReviewerTask.stage_status ● ReviewerTaskStageStatus object

ReviewerTask.status ● ReviewItemStatus! non-null enum

ReviewerTask.subject ● ReviewSubject object

ReviewerTask.updated_at ● DateTimeISO scalar

Member Of

ReviewerTaskConnection object