$readiness * @param array $guidance */ public function __construct( public readonly string $state, public readonly string $guidanceState, public readonly bool $hasReadyArtifact, public readonly bool $canStreamCustomerOutput, public readonly bool $canStreamInternalPreview, public readonly string $reason, public readonly array $readiness = [], public readonly array $guidance = [], ) {} public function canStream(bool $internalPreview): bool { return $internalPreview ? $this->canStreamInternalPreview : $this->canStreamCustomerOutput; } }