Skip to content

DX request: Add "fake" agent to enable integration, application, and end-to-end tests without the need for a real LLM #12

@manuelkiessling

Description

@manuelkiessling

In order to enable us to create meaningful integration, application, and end-to-end tests, we need to get rid of an actual LLM provider as an external dependency during test runs, or generally in Symfony env "test".

This should be possible on the Neuron AI integration level, through a custom provider:

https://docs.neuron-ai.dev/the-basics/ai-provider#implement-a-custom-provider

Using this approach, we need to implement a "fake", deterministic agent.

The important part is that test code must be able to "seed" this agent, probably even "from the outside" (in case of end-to-end tests), allowing a test to define deterministic behavior, as in "if you receive message A, respond with B, if you receive message C, call tool D, if you receive message E, fail with error F", and so on, which allows testcases to make stable assumptions for the system-under-test.

Furthermore, only the actual LLM-part of the Agent should be faked; tool-calls should still be actual, real tool calls.

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Projects

    Status

    Backlog

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions