Можно ли добавить кастомное значение в $request->validated() на этапе валидации?

Да, в Laravel есть возможность добавить кастомное значение в $request->validated() на этапе валидации. Для этого можно использовать метод extend в классе правил валидации.

Первым шагом нужно создать правила валидации, добавив новое правило через метод extend в методе boot файла AppServiceProvider.php. Например, вам нужно добавить кастомное значение custom_value:

use IlluminateSupportFacadesValidator;

public function boot()
{
    Validator::extend('custom_rule', function ($attribute, $value, $parameters, $validator) {
        // Проверка на основе пользовательской логики
    });

    // ...
}

Затем вы можете использовать новое правило в вашей форме валидации. Например, если вы используете правило custom_rule для поля custom_field, то ваша форма валидации может выглядеть так:

public function rules()
{
    return [
        'custom_field' => 'required|custom_rule',
        // ...
    ];
}

Теперь, при валидации формы, вы можете добавить пользовательские значения, используя метод after класса Validator в методе withValidator вашего контроллера или другого места, где вы выполняете валидацию.

use IlluminateHttpRequest;
use IlluminateSupportFacadesValidator;

public function store(Request $request)
{
    $validator = Validator::make($request->all(), [
        'custom_field' => 'required|custom_rule',
        // ...
    ]);

    $validator->after(function ($validator) {
        $validator->addData([
            'custom_value' => 'my_custom_value'
        ]);
    });

    if ($validator->fails()) {
        // Обработка ошибок валидации
    }

    // ...
}

Теперь в вашем массиве $request->validated() будет присутствовать новое кастомное значение custom_value. Вы сможете обратиться к нему как $request->custom_value в других частях вашего кода.