Add an ECA action for vector search (embeddings input → results of id, label, score)
## Problem/Motivation
The module already exposes the `embeddings` operation as an ECA action (`ai_integration_eca_execute_embedding`), which turns input text into an embeddings array. However, there is no companion action to actually **query a vector database** with those embeddings. Site builders can generate an embedding in an ECA model, but then have no way to run a similarity search against a vector database from within the ECA model and act on the matches.
## Proposed resolution
Add a new ECA action that performs a vector (similarity) search.
- **Input:** an embeddings array (e.g. the result token produced by the existing Embedding action).
- **Output:** a results list written to the `token_result` bag, where each result is an associative array of:
- `id` — the matched record/document id
- `label` — a human-readable label for the match
- `score` — the similarity score
Follow the existing action conventions (see `CLAUDE.md` and the `Embedding`/`Rerank` actions):
- New plugin under `src/Plugin/Action/`, id `ai_integration_eca_execute_vector_search`, legacy `@Action` annotation.
- Read the embeddings array from `token_input`, run the search, wrap the results list in `DataTransferObject::create()` and store under `token_result` (same pattern as `ObjectDetection`, which returns a list of `{label, ...}` items).
- Let the user select which vector database to query in the configuration form.
## Remaining tasks
- [ ] Add the vector search action plugin.
- [ ] Add a kernel test under `tests/src/Kernel/Plugin/Action/` mirroring the existing tests.
- [ ] Update `docs/` to list the new operation/action.
issue