Do not assume action definitions have a type when deriving action plugin functions
## Summary
I received a deprecation notice related to `str_contains()` when testing chat generation at `/admin/config/ai/explorers/chat_generator`. This is because the `ActionPluginDeriver` assumes the action definitions it's deriving functions for have a type, even though the `Action` attribute designates the `type` property as optional. Pathauto does _not_ use a `type` for its one action plugin, so the deriver attempts to get an entity type definition for `NULL`.
```
#[Action(
id: 'pathauto_update_alias',
label: new TranslatableMarkup('Update URL alias of an entity'),
)]
```
## Steps to reproduce
1. Install and configure AI.
2. Install Pathauto.
3. Navigate to the path above. Clear all caches if need be.
## Environment
- Drupal version: 11.4.1
- Module version: 1.4.4
- PHP version: 8.4.22
- Provider: Anthropic, but really should be irrelevant
### Error messages or logs
```
Deprecated function: str_contains(): Passing null to parameter #1 ($haystack) of type string is deprecated in Drupal\Core\Entity\EntityTypeManager->getDefinition() (line 161 of core/lib/Drupal/Core/Entity/EntityTypeManager.php).
```
issue