VerificationRequest
What is being verified, and under which approval policy. `subject` is an opaque identifier the verifier understands (e.g. "gate:proposal.sent", "task:42"); the core never resolves it. `payload` is arbitrary verifier input. `requestedBy` is an opaque principal. `id` is an optional correlation id (#7): two requests can share the same `subject` (e.g. concurrent verifications of the same gate) but remain distinguishable by `id`. It is opaque to the core and reachable from the granted/rejected lifecycle events so callers can correlate a verdict back to the request that produced it.
VerificationRequest::__construct()
public function __construct(string $subject, Milpa\app\Enums\ApprovalPolicy $policy = Milpa\app\Enums\ApprovalPolicy::SINGLE, array $payload = [], ?string $requestedBy = null, ?string $id = null):Parameters
| Nombre | Tipo | Descripción |
|---|---|---|
| $subject | string | |
| $policy | Milpa\app\Enums\ApprovalPolicy | |
| $payload | array<string, mixed> | |
| $requestedBy | ?string | |
| $id | ?string |
VerificationRequest::withGeneratedId()
public static function withGeneratedId(string $subject, Milpa\app\Enums\ApprovalPolicy $policy = Milpa\app\Enums\ApprovalPolicy::SINGLE, array $payload = [], ?string $requestedBy = null): selfBuild a request with a freshly generated correlation `id`.
Parameters
| Nombre | Tipo | Descripción |
|---|---|---|
| $subject | string | |
| $policy | Milpa\app\Enums\ApprovalPolicy | |
| $payload | array<string, mixed> | |
| $requestedBy | ?string |