Why WorldContextObject is not const in some functions?

For example:

ULevelStreamingKismet* ULevelStreamingKismet::LoadLevelInstance(UObject* WorldContextObject, const FString& LevelName, const FVector& Location, const FRotator& Rotation, bool& bOutSuccess)

But inside the function the unique use is to get the world:

...
UWorld* const World = GEngine->GetWorldFromContextObject(WorldContextObject, EGetWorldErrorMode::LogAndReturnNull);
...

And in this function WorldContextObject is const.

Similar cases happen in other functions that I found.

Is this an aware implementation?