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