GovernanceRun
A governance run: the real, observable evidence that a set of gates was executed — who invoked it, what produced it, when, and with what verdicts. It is the observed fact that, compared against a GovernancePlan, gives life to the `outcome` of each GovernanceGate (today always null in the compiled plan).
GovernanceRun::__construct()
public function __construct(string $schemaVersion, string $runId, string $profileHash, string $planHash, Milpa\Governance\InvocationIdentity $invokedBy, Milpa\Governance\ProducerIdentity $producer, string $source, DateTimeImmutable $startedAt, DateTimeImmutable $finishedAt, array $assumptions, array $outcomes):Parameters
| Name | Type | Description |
|---|---|---|
| $schemaVersion | string | Schema version of the run |
| $runId | string | Unique identifier of the run |
| $profileHash | string | Integrity hash of the profile in effect at the time of the run |
| $planHash | string | Integrity hash of the plan in effect at the time of the run |
| $invokedBy | InvocationIdentity | Who invoked the run |
| $producer | ProducerIdentity | What produced the evidence |
| $source | string | Origin of the run (e.g.: "local", "ci") |
| $startedAt | \DateTimeImmutable | Start time |
| $finishedAt | \DateTimeImmutable | Finish time |
| $assumptions | array<string, mixed> | Assumptions in effect at the time of the run |
| $outcomes | array<GateOutcomeRecord> | Verdicts of the evaluated gates |
GovernanceRun::toArray()
public function toArray(): arraySerializes the run to an array for storage or transmission. Dates are serialized in ISO-8601 (ATOM format); verdicts, via their own `toArray()`.